(Viele) Daten performant speichern und lesen

  • Themenstarter Themenstarter DataSave
  • Beginndatum Beginndatum
D

DataSave

Gast
Hallo,

das ist mein Problem: es sollen viele Daten (ca. 10.000(+) Datensätze mit ca. 40 Attributen/Feldern) performant gespeichert werden und auch wieder ausgelesen werden können. Dabei sollten - wenn möglich - keine zusätzlichen Libraries benötigt werden und wenn sehr sehr kleine (unter 1 MB).

Hier meine bisherigen Lösungswege:
1. Datenbanken: JavaDB: zu groß, unterstützt zu wenig SQL Befehle; MySQL: viel zu groß, platform-unabhängigkeit geht verloren, zu viele Dateien nötig
2. XML: JDOM: gut, performant genug?????
3. Objektdatenbanken: guter Ansatz; NeoDatis ODB: zu große Jar, zu viele Funktionen die nicht benötigt werden, größter/entscheidender Nachteil: kann den Input-/OutputStream nicht angeben sondern nur Pfad zum File
4. Idee: Objekte in ArrayList sichern und ArrayList serialisieren

Also: XML würde mir gut gefallen, aber leider weiß ich nicht ob das mit der performance hin haut. Man könnte einen Parser nehmen, der den DOM Tree nicht im Speicher hält, aber wie modifiziert man dann Einträge und fügt neue hinzu? Traum wäre es aber auf jeden Fall, dass im Idealfall eine XML-Datei ausreicht um alles darin unterzubringen. Und die Idee habe ich noch nicht ausprobiert.

Was meint Ihr dazu? Vielleicht könnt Ihr noch von anderen Möglichkeiten berichten?

Gruß,
DataSave
 
Ich finde die Fragestellung sehr eigenartig. Einerseits werden 10.000 Datensätze als "sehr viel" bezeichnet, was ja eigentlich gar nicht zutrifft, und dann alle Varianten aufgeführt, mit denen das möglich wäre, und die meisten als "zu gross" oder "zu langsam" verworfen. Die richtige Fragestellung wäre also eher "wie kann man eine überschaubare Anzahl an Datensätzen verwalten?". Wer JavaDB schon zu gross findet, wird zumindest mit H2 und co auch nix werden. An sich wäre sowas ja die richtige Wahl. Vielleicht sollte der Fragesteller mal den Einsatzzweck der Anwendung genauer beschreiben, und welche Einschränkungen konkret bestehen?
 

Zurück
Oben