Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ini vs. xml vs record (https://www.delphipraxis.net/113579-ini-vs-xml-vs-record.html)

Jonas 10. Mai 2008 13:22


ini vs. xml vs record
 
Hallo. Ich bin auf der Suche nach vorallem der schnellsten und performance reichsten Möglichkeit eine kleine Datenbank zu erstellen. Ich wollte ein Programm programmieren wo man eben mehrere Datensätze und so verwalten kann.
Ich habe in meinem Delphibuch gelesen, dass man nicht unbedingt sich den Aufwand einer "richtigen" Datenbank zu benutzen machen sollte, es kommt immer darauf an. So wurde mir auch empfohlen vielleicht die Datensätze als xml zu speichern. Aber ich weiss eben nicht was die beste und vorallem "schnellste" möglichkeit ist?!
Es ist mir wichtig, dass man auch einen großendatensatz relativ schnell durchsuchen kann.
Ich hoffe dass mir jemand helfen kann ^^

mkinzler 10. Mai 2008 13:27

Re: ini vs. xml vs record
 
Ich würde eine richtige Datenbank nehmen. Wenn nicht würde ich auf XML setzen. Eine Ini-Datei ist imho nicht geeignet.

Jonas 10. Mai 2008 13:37

Re: ini vs. xml vs record
 
Und wie schaut es mit typisierten dateien aus?! Oder sollte man dort auch lieber xml / datenbank vorziehen?!

mkinzler 10. Mai 2008 13:39

Re: ini vs. xml vs record
 
XML ist um einiges flexibler

Hansa 10. Mai 2008 13:52

Re: ini vs. xml vs record
 
Wenn du das vergisst :

Zitat:

Zitat von Jonas
...bin auf der Suche nach vorallem der schnellsten und performance reichsten Möglichkeit eine kleine Datenbank...

und auch das hier :

Zitat:

Zitat von Jonas
...Es ist mir wichtig, dass man auch einen großendatensatz relativ schnell durchsuchen kann...

wider erwarten auch unwichtig ist, ja dann nehme XML. :mrgreen: Du musst immer daran denken, dass auch XML im Prinzip nur eine primitive Textdatei ist.

Jonas 10. Mai 2008 14:21

Re: ini vs. xml vs record
 
Soll heissen, das XML relativ langsam ist?

Welches von den Möglichkeiten wäre denn die schnellste?

mkinzler 10. Mai 2008 14:35

Re: ini vs. xml vs record
 
Jein. Aber die flexibelste, skalierbarste wäre ein DBMS ( z.B. als embedded-Variante)

mschaefer 10. Mai 2008 14:40

Re: ini vs. xml vs record
 
Das hängt davon ab in welcher Art und Weise Du Daten benötigst.



Szenario 1:
Du hast Daten die in einem Rutsch vom Programm gelsen und auch alle zusammen wieder geschrieben werden z.B.:(MemIni).
Hier sind reine Dateien, also Textfiles oder dynamische Records am schnellsten. Ob man da ini oder xml nimmt oder typisierte Recors hängt von der Art der Daten ab (Textdaten, Bitmap, Voice).



Szenario 2:
Du benötigst aus einer großen Datenmenge je nach Aufgabe einzelne Datensätze oder Kombinationen aus diesen (Datensets) oder möchtest mehere Tabellen Kombinieren (Kundendaten mit Artikelinformationen), dann ist eine aktive Verwaltung notwendig, die durch ein DBMS mit Datenbank besser zur Verfügung gestellt wird, als eine reine Dateiverwaltung beherrscht.


Ergo: Schnell ist Aufgabenabhängig.

Grü0en // Martin

Luckie 10. Mai 2008 15:02

Re: ini vs. xml vs record
 
Hinzukommt, ob du das genaze auch mal vom USB-Stick oder auf fremden Rechner starten willst. ein Datenbanksystem erfordert meist eine Installation. Es gibt zwar auch embedded Datenbanken aber wenn es keine tausend Datensätze werden reicht auch eine XML-Datei.

mkinzler 10. Mai 2008 15:04

Re: ini vs. xml vs record
 
Also mit FB embedded oder SQLite ist das kein Problem.

Hansa 10. Mai 2008 15:55

Re: ini vs. xml vs record
 
Zitat:

Zitat von Jonas
...Ich habe in meinem Delphibuch gelesen, dass man nicht unbedingt sich den Aufwand einer "richtigen" Datenbank zu benutzen machen sollte,...

Hierzu noch was Grundsätzliches. Solche Sätze sieht man nämlich des öfteren und es wird so der Eindruck suggeriert, Datenbanken seien schwierig, was nicht stimmt ! Legt man mal folgenden Massstab an : DB soll nicht mehr können, als XML auch, dann siehts schon anders aus. Sofern nicht nur minimalistische Sachen mit XML gemacht werden sollen, dann dürfte der Einarbeitungsaufwand in etwa gleich sein. Mit XML ist man aber wohl schnell am Ende. Bei einer DB aber noch lange nicht. Der Zweck von XML ist das speichern von Daten in möglichst universell zu lesender Form, deshalb ja auch Textdatei.

Wie siehts denn in der Praxis aus ? Viele Hersteller usw. geben Produktbschreibungen, Adressen, Kataloge etc. als XML-Dateien raus. Daraus wird immer nur GELESEN. Hatte selber mal Riesen-XML-Datei. Dürfte klar sein, was mit der passiert ist. Bevor ich mir die genauer ansah, war sie schon eine DB. :mrgreen: Die habe ich mir dann mal mit IBExpert sortiert usw. Gut, war einmalig halber Tag Arbeit. Dann noch mein Telefonbuch. Alle eingehenden Anrufe werden in DB gesucht und sofern sie vorhanden sind, die Anrufer im Klartext angezeigt, andernfalls kann man das eingeben und speichern fürs näächste mal. Da sind aber nicht viele Adressen drin, weil ich meistens zu faul bin die nach und nach einzugeben und viele Nummern kennt man sowieso. Das momentan geringe Datenvolumen zwingt mich aber nicht dazu eine XML-Datei zu verwenden. Das hätte sich nämlich schon gerächt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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