Hallo zusammen,
ich habe folgendes Problem:
Ich lese Daten (1,5 mio) aus einer Datenbank aus (siehe auch http://www.java-forum.org/datenbank...hickt-groessere-datenmengen-unterbringen.html).
Um mir mehrfaches Laden von der Daten aus der DB zu sparen (wegen der langen Ladezeiten), speichere ich die geladenen Daten in einen Vector und diesen persistent ab:
Das Lesen erfolgt analog:
Lade ich die Daten jedoch nun aus der Datei und nicht aus der DB, braucht die Anwendung einiges mehr an Arbeitsspeicher. Für ein Objekt wäre das noch ok, wenn ich aber mehrere Objekte laden möchte wird es eindeutig zu viel.
Wie kann ich das Problem abfangen? Gibt es bessere / andere / RAM-schonende Möglichkeiten zum speichern und lesen?
Danke und Gruß,
Jens
ich habe folgendes Problem:
Ich lese Daten (1,5 mio) aus einer Datenbank aus (siehe auch http://www.java-forum.org/datenbank...hickt-groessere-datenmengen-unterbringen.html).
Um mir mehrfaches Laden von der Daten aus der DB zu sparen (wegen der langen Ladezeiten), speichere ich die geladenen Daten in einen Vector und diesen persistent ab:
Java:
OutputStream fos = new FileOutputStream("...");
ObjectOutputStream o = new ObjectOutputStream(fos);
o.writeObject(...);
Das Lesen erfolgt analog:
Java:
InputStream fis = new FileInputStream("...");
ObjectInputStream o = new ObjectInputStream(fis);
Vector werte_kompl = new Vector();
werte_kompl = (Vector) o.readObject();
fis.close();
Lade ich die Daten jedoch nun aus der Datei und nicht aus der DB, braucht die Anwendung einiges mehr an Arbeitsspeicher. Für ein Objekt wäre das noch ok, wenn ich aber mehrere Objekte laden möchte wird es eindeutig zu viel.
Wie kann ich das Problem abfangen? Gibt es bessere / andere / RAM-schonende Möglichkeiten zum speichern und lesen?
Danke und Gruß,
Jens
Zuletzt bearbeitet: