Skip to main content

simple lmdb bindings written using ctypes

Project description

python-lmdb
===========

Your (L)MDB bindings for Python, written entirely using ctypes, but only for Python 3 (at the moment). Does not use any CPython native extensions.

Usage
-----

import lmdb
lib = lmdb.LibLMDB()
env = lmdb.Environment(lib, "data")
with env.transaction() as txn:
txn[b"key"] = b"value"
print(txn[b"key"])
del txn[b"key"]

Web API
-------

I have implemented a simple web REST API with Bottle. It supports simple
transactions, setting an item, getting an item, and deleting an item.

$ gunicorn lmdb.web

You can use the following environment variables to configure the application:

* *LMDB_WEB_LIB*: Path to liblmdb.so
* *LMDB_WEB_DBPATH*: Path to database directory

It supports simple REST endpoints:

* `GET /` Server status overview
* `GET /_simple/<key>` Retrievement of item by key
* `PUT /_simple/<key>` Set an item with request body
* `DELETE /_simple/<key>` Delete an item
* `POST /_trans` Upload transaction and execute it
* `GET /_dump` Return transaction which inserts data

Transactions are uploaded as JSON with the following form:

{
"write": true, # optional, by default false
"steps": [
{"action": "set", "key": "foo", "value": "bar"},
{"action": "delete", "key": "foo"},
]
}

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

python-lmdb-1.0.0b1.tar.gz (8.1 kB view details)

Uploaded Source

File details

Details for the file python-lmdb-1.0.0b1.tar.gz.

File metadata

File hashes

Hashes for python-lmdb-1.0.0b1.tar.gz
Algorithm Hash digest
SHA256 150283ff9c6d3837cf5b5e76d1ac66292471f2a9641b3402c15485f29c0dbfb8
MD5 77b7af42a562ddb15e2b8555fe8a7c0f
BLAKE2b-256 992f3e88269f265222c50545184387af2400024c184c98150932234711589c7c

See more details on using hashes here.

Supported by

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