Skip to main content

Pure-python NoSQL database.

Project description

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

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

http://www.apache.org/licenses/LICENSE-2.0

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.

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

graphility-0.0.1.tar.gz (48.6 kB view details)

Uploaded Source

Built Distribution

graphility-0.0.1-py3-none-any.whl (55.1 kB view details)

Uploaded Python 3

File details

Details for the file graphility-0.0.1.tar.gz.

File metadata

  • Download URL: graphility-0.0.1.tar.gz
  • Upload date:
  • Size: 48.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.3 CPython/3.9.0b5 Linux/5.8.11-1-MANJARO

File hashes

Hashes for graphility-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0d216ffe29045d32bd476cb94dfeea37c1c3e20ca7f0e8acbdf26db72b45030a
MD5 9f0fc6d3ebc3915e14788e3d5a8d5b3c
BLAKE2b-256 6d2d161e6a4320e97a5cc7bbdf34b708ad81253029cc1cbe2a8d0b03a18f4fd3

See more details on using hashes here.

File details

Details for the file graphility-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: graphility-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 55.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.3 CPython/3.9.0b5 Linux/5.8.11-1-MANJARO

File hashes

Hashes for graphility-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c53a80224d594f91be1d51d4f708ba3248fef3542570f480d0b3146997f05ca3
MD5 414dee77119e77784bd6f96b479d403c
BLAKE2b-256 cf2cbbec5e862b2e763ff325071075fab81aa5f8faaf19b424ff85858e1bd11c

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