[opengeodb] SQL-Script für hierarchies
Peter Wendorff
wendorff at uni-paderborn.de
Mon Apr 7 22:15:02 CEST 2008
Hallo Liste.
Nochmal zum Thema zurück (nachdem ich letzte Woche meinen Rechner neu
aufsetzen musste):
Datenstand: aktuell (ca 20 Uhr heute Abend), eingespielt sind die Dateien
Ich habe nach dem Einspielen des folgenden (ersten) Befehls meines
Scripts einen Unterschied zwischen den Dump-Hierarchies und meinen
erzeugten:
INSERT INTO geodb_hierarchies
(loc_id, `level` , id_lvl1, valid_until, date_type_until)
SELECT loc_id, text_val, 104, "3000-01-01", 300500000
FROM geodb_textdata
WHERE text_type = 400200000;
Die hierarchies aus dem Dump enthalten bei mir 60.640 Einträge, die
erzeugte Tabelle enthält dagegen 55.080 Einträge - rund 5.000 Einträge
weniger.
Die Überprüfung, welche Datensätze jeweils fehlen, ergibt:
In der heruntergeladenen Tabelle fehlen die 5 Datensätze mit den IDs
85722, 144599, 144600, 144602 und 144603,
in der erzeugten Tabelle fehlen die 19 Datensätze mit den IDs 80061,
80062, 80063, 80067, 80074, 80091, 80092, 80393, 80583, 80585, 80587,
80589, 80590, 80591, 80592, 80594, 80623 und 128355.
Betrachten wir die Datensätze im Einzelnen,
beginnend mit denen, die in der heruntergeladenen Tabelle fehlen,
als Referenz nehme ich diesmal der Einfachheit halber die Oberfläche
unter fa-technik.adfc.de:
85722 - Altes Lager, ist Teil von -1 - also einer nicht-existenten loc_id
144599 - Mildensee, Teil von ist leer
144600 - Mosgikau, Teil von ist ebenfalls leer, für die anderen drei
Einträge gilt dies analog.
Zu diesen Daten sind schlichtweg also keine Informationen zu höheren
Hierarchie-Ebenen vorhanden, weshalb sie beim Top-Down-Ansatz von
Martins SQL-Erzeugung nicht vorkommen können. Dennoch gehören diese
Datensätze in gewisser Weise in die hierarchies-Tabelle, inwiefern sie
in bestimmten Anwendungen verzichtbar sind, darüber lässt sich streiten.
Auf jeden Fall lässt sich dies als Hinweis auf Fehler in der Datenbank
festhalten.
Weiter geht es mit den Datensätzen, die mein Script nicht erzeugt,
obwohl sie im Dump vorhanden sind. Bei diesen fällt auf, dass sie alle
als gelöscht markiert sind.
Dies deutet darauf hin, dass diese Daten eben schon im Stamm-Dump nicht
vorhanden sind, im hierarchies-Dump allerdings doch noch.
Wenn mir das soweit jemand verifizieren könnte, wär das ganz gut.
Dies bedeutet insbesondere übrigens, dass der hierarchies-Dump entweder
nicht gleich aktuell ist wie der Daten-Dump oder aber, dass der
hierarchie-Dump nicht korrekt erzeugt wird.
Das weitere Vorgehen folgt dann später - ich möchte vor allem erstmal
sicher gehen, dass dies soweit programm-technisch korrekt ist, und eben
auf den vermuteten Dump-Inkonsistenzen beruht.
Gruß
Peter Wendorff