embedded graph datastore
Project description
Graphlite is an MIT-licensed graph DB for Python.
There are currently no embedded graph databases for Python. Graphlite aims to change that by building a simple and fast graph layer over SQLite. Similar to FlockDB, Graphlite only stores adjacency lists, but they can be queried in the style of normal graph databases, e.g. with traversals.
>>> import graphlite as g
>>> db = g.connect(':memory:', graphs=['knows'])
>>> with db.transaction():
... for person in [2, 3]:
... db.store(g.V(1).knows(person))
...
>>> db.find(g.V(1).knows).to(list)
[2, 3]
Graphlite inherits it’s API from that of FlockDB’s. Also, like FlockDB Graphlite only stores the relations between the nodes, which are integers- not the data of the nodes themselves. You will therefore need a high performance database like BerkleyDB or one of the dbm implementations to store your data.
Features
Thread-safe transactions with threading.Lock
Small, easy to learn API with around 100% coverage
Lazy generator based API when querying
Highly documented codebase
Installation
To install Graphlite, simply:
$ pip install graphlite
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file graphlite-1.0.5.tar.gz
.
File metadata
- Download URL: graphlite-1.0.5.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa7b23dc0857055685b03c2d54864e20e5c584e821e328fced3b675d8f3fc9f0 |
|
MD5 | 34681e73c5e9595970c33c1156b34d5c |
|
BLAKE2b-256 | 1556cee648eeb1537ab86b7363bacb1f254be0f00c38dd8de113da1091fa6a93 |