OverDrive-DB — High-performance embeddable hybrid SQL+NoSQL document database. A serverless, ACID-compliant alternative to SQLite for JSON data.
Project description
OverDrive-DB — Python SDK
A high-performance, embeddable hybrid SQL+NoSQL document database — built for speed and version control. Like SQLite, but for JSON.
Use OverDrive-DB in your Python applications whenever you need a fast, serverless database that supports both document queries and relational SQL.
Install
pip install overdrive-db
After installing, download the native library for your platform from GitHub Releases and place it in your project directory or on your system PATH.
| Platform | File |
|---|---|
| Windows x64 | overdrive-windows-x64.dll → rename to overdrive.dll |
| Linux x64 | liboverdrive-linux-x64.so → rename to liboverdrive.so |
| macOS ARM64 | liboverdrive-macos-arm64.dylib → rename to liboverdrive.dylib |
Quick Start
from overdrive import OverDrive
# Context manager for automatic cleanup
with OverDrive("myapp.odb") as db:
db.create_table("users")
# Insert
user_id = db.insert("users", {
"name": "Alice",
"email": "alice@example.com",
"age": 30
})
# SQL Query
results = db.query("SELECT * FROM users WHERE age > 25")
for row in results:
print(f" {row['name']} — {row['email']}")
# Full-text search
matches = db.search("users", "alice")
# Batch insert
db.insert_many("users", [
{"name": "Bob", "age": 25},
{"name": "Charlie", "age": 35},
])
print(f"Total users: {db.count('users')}")
API
| Method | Description |
|---|---|
OverDrive(path) |
Open or create a database |
db.close() |
Close the database |
db.create_table(name) |
Create a table |
db.drop_table(name) |
Drop a table |
db.list_tables() |
List all tables |
db.insert(table, doc) |
Insert a document, returns _id |
db.insert_many(table, docs) |
Batch insert |
db.get(table, id) |
Get by _id |
db.update(table, id, updates) |
Update fields |
db.delete(table, id) |
Delete by _id |
db.count(table) |
Count documents |
db.query(sql) |
Execute SQL query |
db.search(table, text) |
Full-text search |
Links
License
MIT / Apache-2.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 Distribution
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 overdrive_db-1.2.0.tar.gz.
File metadata
- Download URL: overdrive_db-1.2.0.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9016e73f26ca7b06d997b4edec1b5c78161e2a2ba936fd657ae658f0a7383d81
|
|
| MD5 |
723ea444454d0016e1287633b3b03c61
|
|
| BLAKE2b-256 |
0588ac85c8317cd31bddee1bcde5a374e1a6c2010a49afef1d0e3bf39b5946f3
|
File details
Details for the file overdrive_db-1.2.0-py3-none-any.whl.
File metadata
- Download URL: overdrive_db-1.2.0-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
efecdf00432be0159bdc7cd34ad1c73f022596c6e755e5a3ee304128508ee05e
|
|
| MD5 |
c8e0d8ebcb1fae737c9f103ea06adca0
|
|
| BLAKE2b-256 |
7c8a9eac4ee4b1633137f1a719654787bec271523ba31103a1db7157783d6a16
|