Graphility is based on CodernityDB by Codernity Labs
Graphility is opensource, pure python (no 3rd party dependency), fast (really fast check Speed in documentation if you don’t believe in words), multiplatform, schema-less, NoSQL database. It has optional support for HTTP server version (Graphility-HTTP), and also Python client library (Graphility-PyClient) that aims to be 100% compatible with embeded version.
You can call it a more advanced key-value database. With multiple key-values indexes in the same engine. Also Graphility supports functions that are executed inside database.
Documentation in repo still refers to CodernityDB and will be updated at the end of reconstruction process.
Reconstruction
As of 2020 the original CodernityDB has been neglected for quite some time and the original repo has been lost.
Nick M. already started porting CodernityDB to Python 3. Go to his repo to see progress. I’ll try to backport any changes he makes but I cant’ guarantee anything.
I decided to make my own port because I want to tear it down and rebuild it piece by piece using only Python 3.8+. You know, to fully know the internals. I also want to add graph layer on top of it. Also, Apache 2.0 License requires me to change the name of the project since “CodernityDB” is a trademark/servicemark of Codernity.
Key features
Native python database
Multiple indexes
Fast (more than 50 000 insert operations per second see Speed in documentation for details)
Embeded mode (default). REST Server and client are planned.
Easy way to implement custom Storage
Sharding support
Install
Graphility is pure Python and does not need external dependencies.
pip install graphility
or from sources:
git clone ssh://git@github.com:Gromobrody/graphility.git cd graphility python setup.py install
Development
Poetry is used as project management tool. After downloading the project, activate the virtual env and install dev dependencies:
poetry shell poetry install
Now you’re ready to go.
License
Copyright 2020 Dominik Kozaczko (https://github.com/dekoza)
Copyright 2020 Nick M. (https://github.com/nickmasster)
Copyright 2011-2013 Codernity (http://codernity.com)
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Release files for graphility 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| graphility-0.0.1.tar.gz | 48.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| graphility-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 103.7 kB
Release files / graphility-0.0.1.tar.gz
| Download URL | graphility-0.0.1.tar.gz |
|---|---|
| Size | 48.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0d216ffe29045d32bd476cb94dfeea37c1c3e20ca7f0e8acbdf26db72b45030a
|
|
BLAKE2b-256 checksum How to use checksums |
6d2d161e6a4320e97a5cc7bbdf34b708ad81253029cc1cbe2a8d0b03a18f4fd3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.3 CPython/3.9.0b5 Linux/5.8.11-1-MANJARO
|
Release files / graphility-0.0.1-py3-none-any.whl
| Download URL | graphility-0.0.1-py3-none-any.whl |
|---|---|
| Size | 55.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c53a80224d594f91be1d51d4f708ba3248fef3542570f480d0b3146997f05ca3
|
|
BLAKE2b-256 checksum How to use checksums |
cf2cbbec5e862b2e763ff325071075fab81aa5f8faaf19b424ff85858e1bd11c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.3 CPython/3.9.0b5 Linux/5.8.11-1-MANJARO
|