Einzelnen Beitrag anzeigen

moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#1

XML - bei uns die richtige Wahl?

  Alt 31. Mär 2008, 12:00
Moin !

Ich bin gerade dabei etwas tiefer in das Thema XML einzusteigen und wir überlegen generell ob wir unser selbst ersonnenes Datenformat in ein XML basiert überführen sollten.
Aber ich bin mir noch nicht ganz sicher ob das eine so gute Entscheidung ist und evtl. kann hier jemand mal ein bisserl aus Erfahrung was dazu sagen.

Ein Hauptgrund für dieses Posting ist ein Kommentar von hier: http://www.efpage.de/DelphiXML.html
Zitat:
...Bei einigen hundert kB stört das noch nicht so, aber bei großen Dateien werden sie die Verzögerung merken...
Ich beschreibe mal grob waraus unsere Dateien aufgebaut sind (das sind derzeit MemoryStreams die als Datei abgelegt werden):

Zunächstmal gibts da einen Header mit zig Informationen wie Datum, Uhrzeit, verwendetes Gerät, etc etc. Eigentlich etwas was geradezu geschaffen ist für XML. Weiterhin befindet sich im Kopf auch noch eine INI Datei die als Text eingebettet wird.
Weiter geht es dann mit Blöcken (die Anzahl der Blöcke hängt vom User ab). ein Block besteht dabei im groben aus folgendem:
1) aufgezeichnete Daten - das sind serielle Telegramme die von einem Gerät aufgezeichnet werden.
2) TChart (teilweise mit eingebetteten Daten
3) 2 RTF´s
4) Statusinfos die für den Block benötigt werden

Nun können gerade die TChart Blöcke und die aufgezeichneten Daten recht lang werden. Es gibt User die machen Langzeitmessungen und da kann es vorkommen das ein Block an reinen Daten schon 24Stunden * 60 Minuten * 60 Sekunden * Telegrammlänge an Bytes hat.
Dazu kommt dann noch das TChart mit seinen Eigenschaften und ggf. sogar mit den Daten.

Also in Summe können da schon ganz ordentlich Daten zusammenkommen. Also ich sag mal in Summe bewegen wir uns im Schnitt so um die 1-20MB Dateigröße.

Macht es Sinn ein solches Konstrukt nach XML umzustellen? Generell hätte XML ja schon reizvolle Vorteile wenn ich so an das "direkte Lesen" der Dateien denke, oder das User die Daten ohne unser Zutun weiterverwenden könnten, oder den direkten Zugriff mittels XPath und das Wegfallen von Überprüfungen von Größe und Position wie es bei Streams immer von Nöten ist.

Wenn aber XML die Sache verlangsamt, dann wäre es nicht so der Brüller

Vielleicht kann mir jemand da mal ein paar Tips / Argumente geben.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat