@hoika:
Ich werde mir die
XML-Funktionen des Servers nochmal etwas genauer ansehen. Wenn die das verarbeiten können, wäre das eine einfache Lösung. Aber ich fürchte, dass das schwierig wird. Eine Datei ist ein Datensatz. Dieser enthält noch einige 1:n-Beziehungen. Ich werde den Ansatz aber mal genauer prüfen.
100te Dateien a wieviel Varianten?
Nur eine Variante. Allerdings sind Knoten nicht vorhanden, wenn es dafür keine Daten gibt.
Es gibt in MS
SQL ähnlich wie in Oracle - woher ich es kenne- einige nette
XML Funktionen.
Werde ich mir auf jeden Fall nochmal ganz genau ansehen.
1. beliebig viele Dateien einer Sorte als eine(1) "external Table" deklarieren. (Das geht)
Eine Datei ist ein Datensatz mit mehreren 1:n-Beziehungen in den Knoten, die weitere 1:n-Beziehungen haben können. Die Dateien als eine(1) Datei zu definieren, sollte lösbar sein. Bei den 1:n-Beziehungen könnte es schwierig werden. Habe ich aber noch nicht geprüft.
1 bedeutet, für jede neue Datei eines Typs muss die external Definition angepasst werden (die zusätzliche Datei muss aufgeführt werden)
Das würde bedeuten, dass mit jeder neuen Datenlieferung die Definition korrigiert werden muss. Wenn das automatisierbar ist, kann man das machen. Wir haben mindestens zwei Lieferungen am Tag mit insgesamt 200 bis 600 Dateien, schätze ich. Manuell wird das nicht umsetzbar sein. Oder man definiert eine neue Datei, in der alle anderen einfach reinkopiert werden.
2 bedeutet, etwas Handarbeit (statt Generator), Datenentnahme auf Feldebene definieren, vielleicht nicht alles auf einmal, sondern nur die Rosinen
Die Handarbeit wäre ja nur einmal. Updates sind da sehr selten. Aber wenn ich das sowieso definieren müsste, kann ich auch gleich eine Import-Funktion schreiben, die das direkt in die notwendigen Tabellen schreibt. Wäre ja auch nur eine einmalige Sache.
3 "ohne Import" hätte den netten Effekt, dass man alle Daten schon im Bauch hat und die View Definitionen nach Bedarf erweitern kann
Wenn die Performance dann auch ausreichend ist. Jeder der Dateien hat ca. 100 bis 150 kB. Ich habe da Befürchtungen, wenn die als External angesprochen werden.
Danke für eure Ideen. Ich werde mal prüfen, was davon machbar ist.