Hallöchen,
folgendes Problem:
Eine eigentlich relativ simple und verhältnismäßig kompakte Applikation schreibt Daten in eine Datenbank. Soweit Standardprozedere.
Als Fallbeispiel:
Insert into Personen (ID, Vorname, Nachname) values (‚123‘,‚Frank‘,‚Müller‘);
Aber:
Schon bei 50k Datensätzen sinkt die Performanz von rund 300 Queries/sek auf c.a. 200 Q/s.
Im Bereich, um den es geht (200k Datensätze) liegt die Performanz schon bei 3 Queries pro Stunde(!).
Der Tablespace war auf 32MB mit einer Erweiterungsgröße von 8 MB festgelegt, aber selbst die 200k Datensätze liegen noch weit unterhalb dieser Grenze (etwa 20 MB).
Nachdem wir mySQL selbst als Fehlerquelle ausgeschlossen hatten (Oracle läuft zwar etwa 10x so schnell, aber 30 Queries/h ist auch noch Mist für 200k Datensätze) haben wir mal die CPU-Auslastung angeschaut, die war immer zwischen 10% und 20% unterwegs.
Hibernate als Fehlerquelle scheint auch raus zu sein, da das gleiche Problem besteht, wenn man ins JMeter direkt das SQL-Statement reinfüttert.
Der RAM der Maschine ist relativ ausgelastet, aber ~100MB sind im Normalfall frei.
Jetzt die Frage: woran kann es noch liegen, dass bei so kleinen Datenbeständen die Performanz schon dermaßen in die Knie geht - sowohl bei ORA als auch mySQL?