Bevor ich noch mehr sinnlose Zeit in Internet-Recherchen verbrate, dachte ich mir, vielleicht hatte jemand aus der
DP auch schon das Problem.
Wir bekommen täglich mehrere 100
XML-Dateien mit sehr vielen Infos, wovon wir derzeit nur einen Bruchteil nutzen. Jetzt kam aber jemand auf die Idee, man könne doch alle Daten ins Datawarehouse einbauen. Prinzipiell ja kein schlechter Gedanke, aber er muss das ja nicht machen.
In den
XML-Dateien sind seehr viele Knoten. Dazu auch noch einige als Listen (quasi 1:n-Beziehungen), die evtl. auch noch geschachtelt sein können.
Bei der Erst-Programmierung habe ich zwar entsprechende Klassen programmiert, damit schonmmal alle Daten gelesen werden können, damit auf Wunsch relativ einfach einzelne Informationen ins DWH hinzugefügt werden können. Um einzelne Felder in den
DB-Tabellen nachzuflegen, habe ich dafür natürlich keine Routinen eingebaut.
Eine XSD-Datei habe ich derzeit nicht und ob ich eine vom Hersteller bekomme, weiß ich nicht. Ich vermute eher nicht. Also habe ich mir einen Generator gesucht, der aus einer
XML-Datei eine XSD erzeugt (knapp 2000 Zeilen). Klar ist das dann nicht vollständig und die Typen sind nicht optimal, aber das wäre ja erstmal ein Anfang. Man könnte ja auch mehrere
XML-Dateien durchlaufen lassen, damit die XSD möglichst vollständig wird.
Mit diesem Anfang würde ich gerne passende Tabellen in der Datenbank erzeugen. Natürlich gleich mit den gewünschten 1:n-Beziehungen. Das dann noch einiges an manuellen Anpassungen erforderlich sein wird, ist mir bewusst. Aber wenn schonmal die Tabellen mit den Felder überhaupt da sind, wäre mir schon sehr geholfen.
Fragen:
- Gibt es eine Möglichkeit, Tabellen auf diese Weise erzeugen zu lassen?
- Gibt es einen XSD-Generator, der das Ergebnis mit mehreren
XML-Dateien erzeugt?
- Welche Probleme können sich ergeben?
- Weitere Tipps und Tricks?
Peter