Skip to main content

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

overdrive_db-1.2.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

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

overdrive_db-1.2.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

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

Hashes for overdrive_db-1.2.0.tar.gz
Algorithm Hash digest
SHA256 9016e73f26ca7b06d997b4edec1b5c78161e2a2ba936fd657ae658f0a7383d81
MD5 723ea444454d0016e1287633b3b03c61
BLAKE2b-256 0588ac85c8317cd31bddee1bcde5a374e1a6c2010a49afef1d0e3bf39b5946f3

See more details on using hashes here.

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

Hashes for overdrive_db-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 efecdf00432be0159bdc7cd34ad1c73f022596c6e755e5a3ee304128508ee05e
MD5 c8e0d8ebcb1fae737c9f103ea06adca0
BLAKE2b-256 7c8a9eac4ee4b1633137f1a719654787bec271523ba31103a1db7157783d6a16

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