Performance-Vergleich von PostgreSQL, SQLite, db4o und MongoDB
Performance-Vergleich von PostgreSQL, SQLite, db4o und MongoDB
Performance-Vergleich von PostgreSQL, SQLite, db4o und MongoDB
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Kapitel: 5 Benchmark<br />
Bestimmte DBMS benötigen für das erstmalige Einfügen der Daten deutlich länger als bei erneuten<br />
Einfüge-Aktionen. So dauert das erste Einfügen bei „<strong>db4o</strong>“ ca. 40 Sek<strong>und</strong>en. Anschliessende<br />
Einfüge-Aktionen benötigen nur noch zwischen 10 <strong>und</strong> 15 Sek<strong>und</strong>en. Dies stellt eine ca. dreifache<br />
Verbesserung dar.<br />
Der SelectAll-Plot weisst ein ähnliches Verhalten wie der Insert-Plot auf. Die „<strong>MongoDB</strong>“ zeigt ein<br />
enorme Verbesserungen bei erneuten Abfrage aller Daten. Wobei der Fokus auf der ersten Abfrage<br />
liegt. Diese dauert ca. 40 mal länger als bei anderen Datenbanken! Dafür benötigt sie für die weiteren<br />
SelectAll-Abfragen praktisch keine Zeit mehr.<br />
In den restlichen vier Plots zeigt sich, dass „<strong>db4o</strong>“ deutlich langsamer die gestellten Interaktionen<br />
verarbeitet. Unserer Meinung nach liegt der Gr<strong>und</strong> dieses Ergebnis in dem zusätzlich eingefügten<br />
Layer. Da „<strong>db4o</strong>“ in erster Linie für Java <strong>und</strong> .Net Entwicklern bereitgestellt wird, musste wie im<br />
Kapitel [5.2.1 Datenbanken] beschrieben, eine in .Net implementierte Klasse eingeb<strong>und</strong>en werden.<br />
Durch die Verwendung einer .Net-Klasse muss der Overhead der virtuellen Maschine <strong>von</strong> .Net in<br />
Kauf genommen werden.<br />
Abbildung 5-30: .Net-Basisprinzip [Wiki.Net]<br />
Um eine bessere Analyse zu erlauben werden die vier Plots nachfolgend ohne das DBMS „<strong>db4o</strong>“<br />
erneut dargestellt.<br />
Herbst 2011 21/36