heliosdb-nano (Python)
In-process Python binding for HeliosDB-Nano's
embedded database. Calls the Rust EmbeddedDatabase API directly — no subprocess,
no wire protocol, no serialization hop — so Python sees the same path behind the
"embedded beats SQLite" numbers.
import heliosdb_nano
db = heliosdb_nano.EmbeddedDatabase("/path/to/data") # or .in_memory()
db.execute("CREATE TABLE messages (id INT, session_id TEXT, body TEXT)")
db.execute_many(
"INSERT INTO messages (id, session_id, body) VALUES ($1, $2, $3)",
[(1, "s1", "hi"), (2, "s1", "yo"), (3, "s2", "hey")],
)
db.query("SELECT COUNT(DISTINCT session_id) AS n FROM messages") # [{'n': 2}]
db.query("SELECT * FROM messages WHERE session_id = $1", ("s1",)) # [{...}, {...}]
# Vector search (HNSW)
db.create_vector_store("emb", 3)
ids = db.insert_vectors("emb", [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0]])
db.vector_search("emb", [1.0, 0.0, 0.0], k=1) # [(id, distance)]
API
| method | returns |
|---|---|
EmbeddedDatabase(path) / EmbeddedDatabase.in_memory() |
a handle |
query(sql, params=None) |
list[dict] |
execute(sql, params=None) |
affected row count (int) |
execute_many(sql, rows) |
total affected (int) |
vector_search(store, query, k) |
list[(id, distance)] |
create_vector_store(name, dimensions) / insert_vectors(store, vectors) |
— / list[id] |
flush() |
— |
params is a tuple/list binding positionally to $1..$n. The GIL is released
around every engine call, so multiple Python threads can query concurrently.
Build from source
pip install maturin
maturin develop -m bindings/python/Cargo.toml # editable install into the active venv
maturin build --release -m bindings/python/Cargo.toml # abi3 wheel in target/wheels/
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file heliosdb_nano_embedded-4.13.1-cp38-abi3-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: heliosdb_nano_embedded-4.13.1-cp38-abi3-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 10.2 MB
- Tags: CPython 3.8+, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2dd098e0d80573388b20db12078e1c2b2426ada99f6d4b9c49e2d47af0ea2e14
|
|
| MD5 |
45e3969f6c0441cfb3b1605bc08a4225
|
|
| BLAKE2b-256 |
6e2ec46531db474d068439ec2449f609e3a2cc7be73333d6016394c21551db71
|
Provenance
The following attestation bundles were made for heliosdb_nano_embedded-4.13.1-cp38-abi3-manylinux_2_28_x86_64.whl:
Publisher:
python-wheel.yml on HeliosDatabase/HeliosDB-Nano
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
heliosdb_nano_embedded-4.13.1-cp38-abi3-manylinux_2_28_x86_64.whl -
Subject digest:
2dd098e0d80573388b20db12078e1c2b2426ada99f6d4b9c49e2d47af0ea2e14 - Sigstore transparency entry: 2496954084
- Sigstore integration time:
-
Permalink:
HeliosDatabase/HeliosDB-Nano@14c65fbd5715f1926c33158b9602ccb29ddbeb14 -
Branch / Tag:
refs/tags/py-v4.13.1 - Owner: https://github.com/HeliosDatabase
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-wheel.yml@14c65fbd5715f1926c33158b9602ccb29ddbeb14 -
Trigger Event:
push
-
Statement type: