AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Delphi XML - bei uns die richtige Wahl?
Thema durchsuchen
Ansicht
Themen-Optionen

XML - bei uns die richtige Wahl?

Ein Thema von moelski · begonnen am 31. Mär 2008 · letzter Beitrag vom 31. Mär 2008
 
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2

Re: XML - bei uns die richtige Wahl?

  Alt 31. Mär 2008, 12:17
Ich habe mit XML diesbezüglich zwei wesentliche Erfahrungen gemacht:
1. Du machst es dir immer am einfachsten, wenn du XML-Serialisierung verwenden kannst. Die geht fast automatisch und ist normalerweise, je nach Bibliothek, sehr schnell. In .NET wird beispielsweise für die Serialisierung Code generiert, der die Klassen sozusagen hartgecodet in XML schreiben und daraus lesen kann. Das funktioniert eigentlich auch mit größeren Dokumenten sehr angenehm.
2. Man kann XML ja auch zippen. Da sind erstaunlich hohe Komprimierungsraten möglich und die Geschwindigkeit ist gar nicht so schlecht. Eines meiner Projekte schaltet einfach einen GZipStream zwischen die Datei und die XML-Serialisierung, damit hat man sehr einfache Handhabung und es läuft bisher alles wunderbar und schnell genug (es müssen dabei ohnehin eine Menge andere Dinge gemacht werden, gegen die der XML-Overhead winzig wird).

Davon abgesehen bietet XML natürlich gewisse Vorteile wie das einfache Umwandeln in andere Formate, einfache Report-Generierung etc.
Ein Teil dieser Vorteile fällt bei dir jedoch weg, weil du ja anscheinend viele Daten doch wieder in einem speziellen Format kodierst.

Edit: Ich würde dir bei so großen Dokumenten grundsätzlich von einem DOM-Parser abraten und, wenn Serialisierung nicht verfügbar ist, entweder einen SAX-Parser oder einen Polling-Parser anraten, je nachdem, was du lieber magst oder besser für dein Dokument geeignet ist.

Als Fazit: Probier es aus. Schreib dir ein kleines Programm, dass dir eine beispielhafte, sehr große XML-Datei generiert und miss die Zeit, und dann lass das Programm die Datei wieder einlesen und miss wieder die Zeit (und die Dateigröße). Eine einfache Implementierung ist nicht aufwändig, aber damit kannst du auf jeden Fall herausfinden, ob die Performance oder die Datengröße ein Hinderungsgrund ist.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz