Einzelnen Beitrag anzeigen

alda

Registriert seit: 24. Mär 2014
Ort: Karlsruhe
93 Beiträge
 
Delphi XE6 Architect
 
#9

AW: Benutzerdefinierte Compiler-Warnungen

  Alt 31. Jul 2015, 22:31
Höchstwahrscheinlich schon. Am besten am Anfang einmal die Datei laden, alles im RAM machen und dann am Ende wieder einmal (am Stück) schreiben. Sofern der RAM die Daten halten kann. Bedenke, Zugriffszeiten auf dem RAM sind so 60 Nanosekunden, auf schnelle SSDs noch 9 Mikrosekunden.
Also die Implementierung sieht mir danach aus, dass bereits alles per LoadFrom* eingelesen wird und somit nicht nochmal extra von Platte gelesen werden muss. Man müsste sich das mal im Detail anschauen, aber abhängig von der Größe und Komplexität der XML-Datei hat man eben abertausende Node & Attribute Objekte die komplett durchsucht werden bis der gewünschte Knoten gefunden wird.

Die Frage ist daher in der Tat (hab gerade leider kein Delphi zur Hand), ob es an der NativeXML Implementierung liegt oder an einem "zu großen" XML.

Im allgemeinen würde ich sowieso grundsätzlich empfehlen beim "in ein XML greifen" mit XPath zu arbeiten - so könntest Du unabhängig von der jeweiligen Implementierung selbst angeben ob rekursiv gesucht werden soll oder nicht (Stichwort Axes). Soweit ich sehe unterstützt NativeXML aber kein Xpath, oder irre ich mich?
  Mit Zitat antworten Zitat