The Embedded Database Revolution Reaches Python
DuckDB proved that an in-process analytical database can outperform entire distributed clusters for real-world workloads. SQLite processes more queries per day than all other databases combined. The fastest network call is the one you never make.
Until recently, Python developers had no equivalent for graph and multi-model workloads. NetworkX is not persistent. SQLite is relational only. Kuzu Python brought embedded graphs to Python, then was acquired by Apple in October 2025 and the open-source repository was archived.
arcadedb-embedded fills that gap. One pip install ships ArcadeDB's full engine into your Python process: graphs, documents, key-value, vectors, time-series, and full-text search. The wheel bundles a Java 25 runtime (no separate Java install) and weighs about 73 MB.
And it is not going anywhere. ArcadeDB is Apache 2.0 forever: no acquisition will archive your database.
Why Embedded Is Faster
- Zero serialization: No marshalling Python objects to JSON and back
- Zero network: No TCP round-trips, no connection pooling, no timeouts
- JPype bridge: Direct in-process calls into the ArcadeDB engine
- Bundled JRE: Java 25 ships with the wheel, no system Java required
- One dependency:
pip install arcadedb-embeddedand you are done - O(1) traversal: Graph hops via direct pointers, not index lookups