Analytics engine
Analytical reads use DuckDB 1.5.4. Native applications load the engine at run time. No core package contains it. Only applications that need it carry it. Concepts explains analytical reads.
This page uses the release matrix’s engine version. Archive digests come from DuckDB. For libraries it does not publish, digests come from the bytes potluckdb built.
Packaged engines
Section titled “Packaged engines”Three languages and both WebAssembly targets receive packaged engines. You do not download or name the library manually.
| Language or target | Installation |
|---|---|
| Python | pip install potluckdb-analytics |
| Node | npm install @potluckdb/potluckdb-analytics |
| Rust | potluckdb = { version = "0.1.0", features = ["analytics"] } |
| Browser | npm install @potluckdb/potluckdb-browser-analytics |
| Node (WebAssembly) | npm install @potluckdb/potluckdb-node-wasm-analytics |
Libraries per desktop platform
Section titled “Libraries per desktop platform”Every other language loads the library from DuckDB’s release archive for the target.
- Download the archive for your target from the table below.
- Verify the archive against the digest below.
- Unpack the archive.
- Name its library file in the open option.
| Target | Library | Archive | SHA-256 of the archive |
|---|---|---|---|
macos-arm64 | libduckdb.dylib | libduckdb-osx-universal.zip | 3f3c52970ad1407ec5037062e1a5e575b24bd5b993c889f89fe5876eff47782c |
macos-x86_64 | libduckdb.dylib | libduckdb-osx-universal.zip | 3f3c52970ad1407ec5037062e1a5e575b24bd5b993c889f89fe5876eff47782c |
linux-x86_64-gnu | libduckdb.so | libduckdb-linux-amd64.zip | 838d98a85e697bab9935010c88a8c67d3312ccedcab4cb4a0ba01da65113bb70 |
linux-arm64-gnu | libduckdb.so | libduckdb-linux-arm64.zip | 7e154fd14d5b7afd7c9f36071000bf4badd3fa57a125cf7dc596f2c5ad82c1b2 |
linux-x86_64-musl | libduckdb.so | libduckdb-linux-amd64-musl.zip | 523fc57cc4da92c67165691d8caa4f686410606c192ba63d60909847a7e117f6 |
linux-arm64-musl | libduckdb.so | libduckdb-linux-arm64-musl.zip | f822902ae2899e21c69a80cb38399698385c224e7ac0d53e9e18e3d5cc4fc053 |
windows-x86_64 | duckdb.dll | libduckdb-windows-amd64.zip | 74e73afd3b010c6f310e14a961fff679f876952bc196f82584b0e2e76d11a91f |
windows-arm64 | duckdb.dll | libduckdb-windows-arm64.zip | 8056a9fc58a7c0ced9ebd5eb804e1bd2caf0e1ffb6711c8bd0c3ac0558a7da7f |
Libraries for iOS and Android
Section titled “Libraries for iOS and Android”DuckDB publishes no library for these platforms. potluckdb builds them from the same DuckDB 1.5.4 sources and publishes release downloads.
| Platform | Library location |
|---|---|
| iOS | Embed it in the application bundle. |
| Android | Place it under jniLibs/<abi> in the module. |
Name the library in the open option on either platform.
| Target | Library | SHA-256 | Bytes |
|---|---|---|---|
apple-mobile-device-arm64 | libduckdb-ios-device-arm64.dylib | 0c5d0292b9bfced4db30c2fe146898dec55d7fe753cd319da9694ffb95bdb778 | 34,760,944 |
apple-mobile-simulator-arm64 | libduckdb-ios-simulator-arm64.dylib | 56e47543f101a70b9aa7d2aa86a89f15a64ccd31df8ff4d96306fb3d97608b7e | 36,948,400 |
apple-mobile-simulator-x86_64 | libduckdb-ios-simulator-x86_64.dylib | 132c5fb1ffbfefec40430346560fb3419c3acf7b54bd164ca3bfa87cd51ef801 | 37,756,320 |
android-arm64-v8a | libduckdb-android-arm64-v8a.so | ffff92aaa98cdf08fe502ca72c47ed76edc36e6260794888ffc07a60f838f533 | 46,344,216 |
android-x86_64 | libduckdb-android-x86_64.so | 657b170a8eec05f2b53093fa0ffab921f8500a62ea91ee080cf09a8e977f0527 | 47,630,256 |
Naming the library
Section titled “Naming the library”Each language’s open options accept the library path. Alternatively, set POTLUCKDB_DUCKDB_LIBRARY for every database the process opens. An open option takes precedence. Each language’s reference gives the analytical-read spelling under Which engine answers a read.
Go · Install · Which engine answers a read
options := potluckdb.DefaultOpenOptions()analyticalEngine := "/opt/potluckdb/lib/libduckdb.so"options.AnalyticalEngine = &analyticalEngineSwift · Install · Which engine answers a read
OpenOptions(analyticalEngine: "/opt/potluckdb/lib/libduckdb.dylib")Dart · Install · Which engine answers a read
OpenOptions(analyticalEngine: '/opt/potluckdb/lib/libduckdb.so')JVM · Install · Which engine answers a read
OpenOptions.builder().analyticalEngine("/opt/potluckdb/lib/libduckdb.so").build().NET · Install · Which engine answers a read
new OpenOptions(analyticalEngine: "/opt/potluckdb/lib/libduckdb.so")C++ · Install · Which engine answers a read
options.analytical_engine = "/opt/potluckdb/lib/libduckdb.so";Objective-C · Install · Which engine answers a read
options.analyticalEngine = @"/opt/potluckdb/lib/libduckdb.dylib";Verifying a download
Section titled “Verifying a download”Compare the digest of the downloaded file with the table before unpacking or embedding it:
shasum -a 256 libduckdb-osx-universal.zip