feat: ArcadeDB graph database adapter#72
Conversation
ArcadeDB implements the Neo4j Bolt wire protocol natively, so this adapter uses the standard neo4j async Python driver. All queries use standard OpenCypher (97.8% TCK compliance). Includes adapter implementation, example, test, and README with Docker quickstart.
|
@Vasilije1990 thanks for merging it! Do you need anything from me to appear in the adapters (README.md)? |
|
If ArcadeDB supports not only graphs, but also a vector database... Maybe it makes sense to connect vectors to ArcadeDB as well? |
|
It makes sense. I see other implementations are hybrid: graph + vector.... working on it |
|
@AKC777 Great suggestion! ArcadeDB does support vector search natively with HNSW indexes and the I've just opened PR #94 that upgrades the ArcadeDB adapter from graph-only to a hybrid adapter (like FalkorDB), implementing both Graph operations continue to use Bolt/Cypher, while vector operations use ArcadeDB's HTTP API for SQL-based HNSW indexing and KNN search. This means Cognee users can use ArcadeDB as a unified graph+vector store without needing a separate vector database. |
|
It's ready! #94 |
Summary
neo4jasync Python driver — no custom driver neededGraphDBInterfaceimplementation, example, test, and README with Docker quickstartWhat's included
cognee_community_graph_adapter_arcadedb/__init__.pyregister()functioncognee_community_graph_adapter_arcadedb/arcadedb_adapter.pyGraphDBInterfaceimplementation (~600 lines)examples/example.pytests/test_arcadedb.pypyproject.tomlcognee[neo4j]>=0.5.2dependencyREADME.mdTesting
Tested locally against ArcadeDB v26.2.2 in Docker with Bolt protocol enabled:
docker run -d --name arcadedb -p 2480:2480 -p 7687:7687 \ -e JAVA_OPTS="-Darcadedb.server.rootPassword=arcadedb -Darcadedb.server.defaultDatabases=cognee[root]{} -Darcadedb.server.plugins=Bolt:com.arcadedb.bolt.BoltProtocolPlugin" \ arcadedata/arcadedb:latestAll tests pass: node creation, edge creation with multiple relationship types, query verification.
Context
This follows up on topoteretes/cognee#2239 where @Vasilije suggested the adapter should live in cognee-community.