hsqldb: performance, große tabellen und so

Status
Nicht offen für weitere Antworten.
R

Roar

Gast
hi,
bin grad dabei hsqldb bisschen zu vergewaltigen.
angeblich soll das ding ja daten von bis zu 8gb größe bearbeiten können.
hab einfach mal versuch 100000 zeilen in die db einzuschleusen, was auch recht hm... passabel.. in 2,5sek ging (ohne batch): "INSERT INTO test3 (id, field2, field3) VALUES (123, 456, \'hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo \')"

beim nächsten start fliegt er mir nur leider bei DriverManager.getConnection("jdbc:hsqldb:file:tests/test4", "sa", ""); raus wegen DriverManager.getConnection("jdbc:hsqldb:file:tests/test4", "sa", "");
hab jetz keinen bock der vm mehr ram zu geben, da tabellen ja auch noch doppelt so groß und größer werden können, ewig kann ich ja nich mehr speicher applien.

ginge das ohne weiteres wenn ich hsql als server starten würde? eher nich oder? ???:L :(

danke,
gruß
 

Bleiglanz

Gesperrter Benutzer
Problem könnte der bei HSQL verzögerte Commit sein

setz mal zwischendurch immer wieder mal ein commit() ab...
 
R

Roar

Gast
Bleiglanz hat gesagt.:
Problem könnte der bei HSQL verzögerte Commit sein

setz mal zwischendurch immer wieder mal ein commit() ab...

hmja, mach ich. das is ja nich das problem. das problem ist, dass er mir beim erneuten starten der datenbank abschmiert weils ihm zuviele daten sind :S kann aber doch nich sein bei "nur" 100000 zeilen?
 

Bleiglanz

Gesperrter Benutzer
\'hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo hallo \')"

ist schon ein bissl lang, der String

wie gross ist denn die Datei auf deinem Rechner (die ganze DB liegt ja da irgendwo rum als ASCII-File..)?

wie genau fliegt er denn raus? d.h. was für eine Ex kommt denn beim nächsten hochfahren??
 
R

Roar

Gast
die datei wär normalerweise 26mb groß, hab sie aber mit
stmt.execute("SET SCRIPTFORMAT COMPRESSED");
auf 270kb komprimiert gekriegt.
so schmeirt er ab:
java.lang.OutOfMemoryError: Java heap space
Exception in thread "main" java.sql.SQLException: out of memory
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
seltsamerweise hier erst beim nächsten insert. hatte in der anderen test datenbank wohl noch 2 oder mehr tabellen mit 100000 zeilen, denn dort hängt er sich auch mit ner java.sql.SQLException: General error: java.lang.OutOfMemoryError: Java heap space schon bei getContnection() auf
 

Bleiglanz

Gesperrter Benutzer
Does HSQLDB store all data in memory. Doesn't memory run out as a result?

Only if you want to. By default, CREATE TABLE results in a memory table, as this is the best type for smaller tables. For larger tables, use CREATE CACHED TABLE and adjust the hsqldb.cache_scale to suite your memory use requirements (as little as 8MB or so). See the Deployment Issues section of the Guide. There is no simple rule and no imposition on the part of HSQLDB as maximum flexibility is allowed using only a couple of settings. A popular use of HSQLDB is for OLAP, ETL, and data mining applications where huge Java memory allocations are used to hold millions of rows of data in memory.
 
R

Roar

Gast
hmm jor cool, dange, nu schmierts beim zweiten mal zwar nicht mehr beim starten ab, aber 1. dauert das inserten und selecten länger als beim ersten mal. und 2. wenn ich beim zweiten starten nochmal ein select durchführe fliegt wieder ne java.sql.SQLException: out of memory, dann sind dann aber auch schon 200000 zeilen drin... :-/
 

Bleiglanz

Gesperrter Benutzer
irgendwas gibts da auch noch beim SELECT von wegen LIMIT und so, damit er die ganze Tabelle nicht gleich in den Speicher holt :)

dass das Inserten länger dauert ist schon klar, er muss ja dann und wann "rausschreiben" auf die Platte...
 
R

Roar

Gast
hm jap, ein LIMIT 30 in den select und das geht zackig :D. und 100.000 zeilen werd ich wohl auch nich auf einmal einfügen :)
dafür hab ich jetz (im vergleich) ziemlich große .data dateien :-/
naja passt schon, danke :)
 
H

Hsqldb

Gast
Hallo,

hätt da auch nochmal ne Frage und zwar was bedeutet bitte das hier:
stmt.execute("SET SCRIPTFORMAT COMPRESSED");

Danke ;)
 

AlArenal

Top Contributor
Wenn du weiterhin deine DB komprimiert benutzt, ist doch klar, dass du OutOfMemory-Exceptions bekommst, denn beim Start muss er das Ding doch beim Start entpacken und irgendwie im Speicher vorhalten um Daten auszulesen und zu ändern. (sage das ohne Gewähr, weil ich nicht genau weiß wie tricky die das implementiert haben)

Wenn du ganz normal das Ding nicht mit ner RAM DB sondern cached laufen lässt, fackelt da auch nichts ab.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A HSQLDB Performance bei erstem Zugriff Datenbankprogrammierung 6
I HSQLDB HSQLDB 2.5.0 - Wie Loggen abstellen? Datenbankprogrammierung 4
B HSQLDB - auto_increment als unexpected token ? Datenbankprogrammierung 1
E Abfrage auf HSQLDB Datenbankprogrammierung 4
windl MySQL und HSQLDB Datenbankprogrammierung 4
D HSQLDB HSQLDB in PHP-Projekt einbinden? Datenbankprogrammierung 7
I Inhalt einer hsqldb anzeigen Datenbankprogrammierung 1
G java.lang.ClassNotFoundException: org.hsqldb.jdbcDriver Datenbankprogrammierung 4
M HSQLDB oder DERBY - warum SCRIPT Datei? Datenbankprogrammierung 0
T Hibernate, HSQLDB und UNIQUE Datenbankprogrammierung 2
F hsqldb Fehler - unknown source Datenbankprogrammierung 11
E HSQLDB Eclipse + Geronimo + HSQLDB = org.hsqldb.jdbcDriver in classloader Datenbankprogrammierung 5
M HSQLDB 2.0 - wie tmp-Verzeichnis löschen Datenbankprogrammierung 2
S HSQLDB DELETE-Statement funktioniert nicht Datenbankprogrammierung 4
M Bei HSQLDB etwas wie OPTIMIZE TABLE? Datenbankprogrammierung 2
F HSQLDB HSQLDB lässt mich nicht auf erstellte Tabelle zugreifen Datenbankprogrammierung 12
D datenbank (hsqldb) in runnable jar einbinden Datenbankprogrammierung 2
E Herangehensweise Neues Projekt mit Netbeans / HSQLDB / JPA Datenbankprogrammierung 3
T Hsqldb: java.lang.NoClassDefFoundError: org/hsqldb/Server Datenbankprogrammierung 2
F Kann keine Verbindung mit HSQLDB aufbauen Datenbankprogrammierung 2
S HSQLDB Kopiere Tabellen Datenbankprogrammierung 2
H hsqldb - Database must be shutdown Datenbankprogrammierung 10
O HSQLDB Verbindung schlägt fehl Datenbankprogrammierung 3
K Jpa hsqldb Datenbankprogrammierung 1
N Problem mit HSQLDB Datenbankprogrammierung 5
N Hsqldb und text tables source not found Datenbankprogrammierung 5
B HSQLDB Datenbank Manager Datenbankprogrammierung 19
R SELECT aus hsqldb mit Parameter Datenbankprogrammierung 2
R HSQLDB Datenbankprogrammierung 10
G hsqldb datenspeicherung Datenbankprogrammierung 2
D H2 DB oder doch HSQLDB ? Datenbankprogrammierung 2
G HSQLDB überprüfen, ob Tabelle bereits existiert Datenbankprogrammierung 3
@ HSQLDB: socket creation error Datenbankprogrammierung 6
G HSQLDB Files Datenbankprogrammierung 5
G maximale Einträge in HSQLDB Datenbankprogrammierung 7
A Datenspeicherung in hsqldb Datenbankprogrammierung 22
A Umgang mit hsqldb Datenbankprogrammierung 24
A Fehler in der HSQLDB Datenbankprogrammierung 6
A Problem mit der Anbindung zur hsqldb Datenbankprogrammierung 18
J HSQLDB ohne JDBC Datenbankprogrammierung 8
C Keine Verbindung zu HSQLDB möglich Datenbankprogrammierung 22
G Probleme mit Laden des JDBC-Treiber in HSQLDB Datenbankprogrammierung 2
G HSQLDB - kann mir jemand Packages erstellen? Datenbankprogrammierung 6
B HSQLDB und die log-Datei Datenbankprogrammierung 10
W HSQLDB Datenbankprogrammierung 6
G HSQLDB als Dateien anlegen Datenbankprogrammierung 5
S nullpointerexception bei HSQLDB Datenbankprogrammierung 4
L HSQLDB sichern (import und export von DB) Datenbankprogrammierung 3
D HSQLDB in JAR Datenbankprogrammierung 3
S hsqldb und ant Datenbankprogrammierung 3
S Hsqldb java.lang.NullPointerException Datenbankprogrammierung 2
D HSQLDB 2xPK + AutoInc Datenbankprogrammierung 22
M HSQLDB Server Problem Datenbankprogrammierung 2
T HSQLDB => diverses Datenbankprogrammierung 21
L persistentes Speichern von Daten in der HSQLDB ? Datenbankprogrammierung 5
A Weitere Fragen zu hsqldb Datenbankprogrammierung 6
A Text-Tabellen in HSQLDB Datenbankprogrammierung 9
A HSQLDB Datenbankprogrammierung 10
A Hsqldb ClassDefNotFound Datenbankprogrammierung 2
M Problem mit HSQLDB Datenbankprogrammierung 2
N Hibernate & hsqldb: Problem bei db-update Datenbankprogrammierung 7
G Problem mit der Startenzeit einer HSQLDB Datenbankprogrammierung 4
T HSQLDB, wie mache ich das mit hsqldb.cache_scale? Datenbankprogrammierung 13
E BufferedImage in hsqldb speichern Datenbankprogrammierung 5
B HSqlDb Datenbankprogrammierung 2
X HSQLDB und Variablen Datenbankprogrammierung 7
P DERBY vs HSQLDB (Vor- Nachteile) Datenbankprogrammierung 3
EagleEye INSERT INTO Problem mit HSQLDB Datenbankprogrammierung 8
G Vector in hsqldb schreiben Datenbankprogrammierung 5
M Cast-Problem - HSQLDB Datenbankprogrammierung 3
C HSQLDB korrekter Shutdown Datenbankprogrammierung 2
C hsqldb Befehle in Java Datenbankprogrammierung 19
P HSQLDB Mehrbenutzerbetrieb Datenbankprogrammierung 7
D HSQLDB Datenbank Zugriff! Datenbankprogrammierung 4
H javaw bleibt bei hsqldb hängen Datenbankprogrammierung 12
D HSQLDB installieren ... Datenbankprogrammierung 8
B Performance steigern, aber wie? Datenbankprogrammierung 8
V SQLite Performance: 1 Datei mit einzelnen Einträgen gegenüber SQLite Datenbankprogrammierung 7
S HSQLDB Performance von CHECKPOINT Datenbankprogrammierung 1
R Oracle Performance bei SELECT mit vielen Reihen Datenbankprogrammierung 5
X Connection schließen oder speichern? Performance Frage Datenbankprogrammierung 7
A Performance GPS Entfernung berechnen Datenbankprogrammierung 8
F Performance-Tool für Oracle Datenbankprogrammierung 2
D mysql insert - performance/robustheit, "best practice" Datenbankprogrammierung 15
P Was ist Performance-Mäßig besser? Datenbankprogrammierung 21
H performance frage Datenbankprogrammierung 9
S Performance bei Massinserts Datenbankprogrammierung 5
V Performance gut? Datenbankprogrammierung 22
O Derby Performance Probleme? Datenbankprogrammierung 4
G JDBC - Performance Datenbankprogrammierung 4
Y Hibernate - Performance Datenbankprogrammierung 6
M JDBC-Performance extrem schlecht - Konfigurationsfehler? Datenbankprogrammierung 4
A Viele Abfragen auf einmal: Performance Datenbankprogrammierung 2
J MySQL - executeUpdate - Performance Datenbankprogrammierung 13
R db4o und Performance Datenbankprogrammierung 5
S ResultSet, Performance Datenbankprogrammierung 18
G Datenbank: Performance Tuning Datenbankprogrammierung 4
R Große Datensätze, kleine Rechte Datenbankprogrammierung 8
Joew0815 Datenmerge große Tabelle Datenbankprogrammierung 16
E MySQL Große Datenmengen reibungslos speichern für Gameserver Datenbankprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben