DuckDB
|
This is the public preview documentation of Neo4j Virtual Graph. To provide feedback, please use the feedback form you were granted access to. During the public preview, we advise you not to use sensitive or production data with Virtual Graph. |
This driver is required by data source definitions of type duckdb.
DuckDB is an embedded database system similar to SQLite which does not require a remote connection or server. Connections can either be file-based or purely in-memory, with the same caveat as for SQLite: all data is lost after restart. With a file-based setup, DuckDB only allows exactly one write connection per file. Neo4j only opens read connections, but you cannot open a simultaneous shell connection with write access to the DuckDB file . The DuckDB JDBC driver additionally supports MotherDuck, a cloud-hosted DuckDB offering, for which the above restrictions do not apply. Neo4j has a public, shared dataset there: the relational representation of the movie graph. ATTACH 'md:\_share/shared\_movies/1cb56a84-1486-4411-845b-963b6e4fa081'.
Direct download
curl -O https://repo1.maven.org/maven2/org/duckdb/duckdb_jdbc/1.4.4.0/duckdb_jdbc-1.4.4.0.jar
Maven coordinates
<dependency>
<groupId>org.duckdb</groupId>
<artifactId>duckdb_jdbc</artifactId>
<version>1.4.4.0</version>
</dependency>
Configuration
The datasource definition for this driver requires the following information for an embedded DuckDB instance:
{
"type": "duckdb",
"path": "/Users/msimons/tmp/ge-home/movies.sqlite"
}
This configuration implies an anonymous secret.
For a remote Motherduck instance together with a token-based secret a database name is required:
{
"type": "duckdb",
"databaseName": "md:_share/shared_movies/1cb56a84-1486-4411-845b-963b6e4fa081"
}