Skip to main content

A NoSQL database.

Project description

RockyDB

License CI codecov

Simple document (i.e. NoSQL) database written in Python. It relies on rocksdb as its storage engine. This is more of a Proof-of-concept than a production-ready database.

Contents

Features

Currently under active development, however here is the feature list so far:

  • Create collections
  • Insert, get and delete documents
  • REST API
  • Query language
  • Full-text Search [IN-DEVELOPMENT]

Installation

pip install rockydb

Documentation

Full Documentation. Below are the basics

Create collection

from src.rocky import RockyDB

db = RockyDB(path="database/")
news = db.collection("news")

Insert document

Supported data types: str, int, float, bool and list. Will support more later.

doc_id = news.insert({
  "title": "Elon Musk Completes $44 Billion Deal to Own Twitter",
  "year": 2022,
  "people": ["Elon Musk"],
  "pi": 3.14,
  "real": True
})

The insert method will return a unique document _id.

Get document

news.get(doc_id)

Delete document

news.delete(doc_id)

Query

news.find({"pi?lt": 3.14, "real": True}, limit=10)

The limit arg is optional. Supports exact, lte, lt, gt and gte queries. Currently working on implementing contains and range queries.

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

RockyDB-0.2.9.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

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

RockyDB-0.2.9-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file RockyDB-0.2.9.tar.gz.

File metadata

  • Download URL: RockyDB-0.2.9.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.5 Darwin/21.5.0

File hashes

Hashes for RockyDB-0.2.9.tar.gz
Algorithm Hash digest
SHA256 381995edfdcc1c511e7a699c170121b5ce54735e8069bda82afa3e42a893aaad
MD5 cc573c5641f88366724b1694a7eaeeaa
BLAKE2b-256 8584fd74bffa4cf5a455bd1edf80e5a01b4be5be94e4cad88733c6be7a3dabb5

See more details on using hashes here.

File details

Details for the file RockyDB-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: RockyDB-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.5 Darwin/21.5.0

File hashes

Hashes for RockyDB-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 671e0a6a33075cf353f4a4ceec549d4a2768a6fb615b398dfec08a52b9d522f0
MD5 25ae3e8a5fe4f6c9fb556895c302c936
BLAKE2b-256 600cfd86df8b317cdc718d9d67e988bc267196d593f594cd59ad948e433a8831

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