Skip to main content

Bitemporal ledger database with MVCC, SQL, and LSM storage

Project description

tensordb

Python bindings for TensorDB — a bitemporal ledger database with MVCC, SQL, and LSM storage.

Install

pip install tensordb

Quick Start

from tensordb import PyDatabase
import json

# Open (or create) a database
db = PyDatabase.open("/tmp/mydb")

# Insert a document
doc = json.dumps({"name": "Alice", "age": 30}).encode()
db.put(b"user:1", doc, 0, 2**63 - 1)

# Point read
data = db.get(b"user:1")
print(json.loads(data))  # {'name': 'Alice', 'age': 30}

# SQL query
db.sql("CREATE TABLE users (id INT, name TEXT, age INT)")
db.sql("INSERT INTO users VALUES (1, 'Alice', 30)")
rows = db.sql("SELECT * FROM users WHERE age > 25")
print(rows)

API

PyDatabase.open(path, shard_count=None)

Open or create a database at path.

db.put(key, doc, valid_from, valid_to)

Insert a document. Returns the commit timestamp.

db.get(key, as_of=None, valid_at=None)

Read a document by key. Supports bitemporal queries.

db.sql(query)

Execute a SQL statement. Returns rows or affected-row metadata.

License

PolyForm Noncommercial 1.0.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tensordb-0.3.0-cp313-cp313-manylinux_2_34_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

File details

Details for the file tensordb-0.3.0-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for tensordb-0.3.0-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 331275c3c86a5356a985b672003a9aa490e0cbc08fc15e5ddf708c358c958d37
MD5 980fcb182d91721648e5cc19e3b23912
BLAKE2b-256 5219b8421dad57f60aa40963f4339505f5b9bdebe8c84c327386de44470e1d65

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page