Drei beliebte Werkzeuge zur Datenanalyse – DuckDB, SQLite und Pandas – wurden in einem aufschlussreichen Benchmark-Test direkt miteinander verglichen. Ein realistisches Datenset mit mehr als einer Million Zeilen diente als Grundlage, um Geschwindigkeit und Speichernutzung bei typischen Aufgaben der Datenanalyse unter echten Bedingungen zu messen.
Zentrale Erkenntnisse
- DuckDB liefert das ausgewogenste Verhältnis aus Geschwindigkeit und Speicherverbrauch.
- Pandas ist für einfache Summen extrem schnell, bei komplexeren Gruppenabfragen aber speicherhungrig.
- SQLite schneidet durchweg am langsamsten ab und hat teils den höchsten Ressourcenbedarf.
Die Testumgebung im Detail
Die Testreihen fanden in einer identischen Umgebung statt: Ein Jupyter Notebook lud das identische Bank-Datenset (über 1 Mio. Zeilen, 5 Spalten) ein einziges Mal ein. Über Pandas wurde darauf direkt, bei DuckDB nach Registrierung und bei SQLite nach Konvertierung in eine In-Memory-Datenbank zugegriffen. Alle Werkzeuge arbeiteten also unter identischen Bedingungen – und die Datenvorbereitung blieb von der Messung ausgeschlossen.
Vier typische Analyseaufgaben im Vergleich
Zur Messung wurden vier praxistypische Analysen durchgeführt:
- Summieren aller Transaktionswerte
- Gruppierte Summen nach Geschäftstyp
- Aggregation gefilterter Werte (nur Standort Goa)
- Mehrdimensionale Gruppierung nach Geschäftstyp und Standort mit Durchschnittsbildung
Für jede Aufgabe wurden sowohl die Ausführungszeiten als auch der zusätzliche RAM-Verbrauch verglichen.
Die wichtigsten Ergebnisse im Überblick
| Analyseaufgabe | Schnellster | Ressourcenfähigster | Schwächstes Ergebnis |
|---|---|---|---|
| Gesamtsumme | Pandas | Pandas | SQLite |
| Gruppierung nach "Domain" | DuckDB | Pandas | SQLite |
| Filter nach "Goa" | DuckDB | SQLite | Pandas |
| Gruppierung nach "Domain" & "Location" | DuckDB | DuckDB | SQLite |
Fazit: Welches Tool für welche Aufgabe?
- DuckDB ist der Allrounder: Es hält die Ausführungszeiten bei praktisch jeder Aufgabenstellung niedrig und bleibt beim Speichernutzung stets im Mittelfeld. Wer viele, verschiedene Analysen auf großen Datenbeständen durchführen will, ist mit DuckDB am besten bedient.
- Pandas brilliert bei sehr einfachen Aufgaben (wie Summenbildung) und punktet mit minimalem Speicherbedarf. Bei komplexeren Aufgaben kann der RAM-Bedarf aber explosionsartig steigen, was bei sehr großen Tabellen schnell zum Problem wird.
- SQLite zeigt die schwächsten Werte – sowohl in Sachen Geschwindigkeit als auch beim Speicherbedarf. Das Tool eignet sich eher für kleine bis mittlere Datensätze oder einfache Aufgaben.
Empfehlung für die Praxis
Für datenintensive Projekte und Allround-Analysen empfiehlt sich DuckDB als moderner, leistungsfähiger Kompromiss. Wer maximale Geschwindigkeit bei simplen Abfragen braucht und genug RAM zur Verfügung hat, kann weiter auf Pandas setzen. SQLite ist in der Datenanalyse von sehr großen Datensätzen nur noch als Notlösung anzusehen.