{ "info": { "author": "bennr01", "author_email": "benjamin99.vogt@web.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Topic :: Database" ], "description": "#KVNDB - A Key-Value Network Database\nKVNDB is a simple scalable pure-python key/value database and a client-API.\n\n#Features\n- Scalable\n- Password protection (optional)\n- stores key/value pairs (both needs to be strings)\n- pure-python\n- asynchronous\n- command-line script included\n- allows to automatically reset a database and then sync with the other databases\n- different database-interfaces included\n\n#Concept\nA KVNDB consists of three components:\n\n 1. **The Router** is the central manager, which handles all connections and splits the requests.\n He also handles the version and password checks.\n \n 2. **The Databases** connect to the router and provide the databases.\n Every database receive all `set` and `del` commands, but the `get` and `getkeys` commands are randomly splitted.\n \n 3. **The Clients** connect to the router and send requests.\n\n\n#Usage\n\n**using `kvndb`:**\n\n KVNDB includes the `kvndb` script, which will automatically be added to your PATH when the setup is run.\n Command: `kvndb [args]`\n\n**Using `python`:**\n\n You can run KVNDB directly as a standalone module using python.\n Command: `python - m kvndb [args]`\n**Using as a module:**\n\n You can also import `kvndb` for a more flexible setup.\n \n **Modules:**\n\n `kvndb.router`: The router module. The router class is available as `kvndb.router.RouterFactory`.\n\n `kvndb.dbproto`: The code gluing a database and the router togeter. You can access the protocol as `kvndb.dbproto.DatabaseClientProtocol`.\n\n `kvndb.txclient`: The KVNDB client for twisted. You can access the client protocal as `kvndb.txclient.ClientProtocol`.\n\n `kvndb.runner`: The command line interface. You can pass some arguments to `kvndb.runner.run` to parse and run them.\n\n `kvndb.cmdclient`: The command line console. You can subclass `kvndb.cmdclient.KVNDBCmdClient` to extend the command line.\n\n `kvndb.data`: Some constants and other data.\n\n**Arguments:**\n\nYou can pass the following arguments to `kvndb`/`python -m kvndb`:\n\n `host`: [ALL] when constructing the endpoint, use this as the host. Default: `0.0.0.0`.\n\n `port`: [ALL] when constructing the endpoint, use this as the port. Default: `54565`.\n\n `1`: [ALL] What mode/database to use. Special modes are `router`(starts the router) and `cmd`(launch a console).\n\n `arguments ARGS`: [DATABASES] pass theses arguments to the database-interface.\n\n `--help`: [ALL] show a help message.\n\n `-t T`; `--type T`: [ALL] endpoint type to use. This may be either `tcp`, `tcp6` or `tls`. For more options, use the `-e` option.\n\n `-e E`; `--endpoint E`: [ALL] use the following string to construct a twisted endpoint. Ignore other arguments which would define an endpoint.\n\n `-p P`; `--password P`: [ALL] When running as a router, set this password as the password. Otherwise, send this password if required.\n\n `-v`; `--verbose`: [ALL] Enable verbose output.\n\n `-l F`; `--logfile F`: [ALL] Log to this file. Requires `-v` to be set.\n\n `-r`: `--reset`: [DATABASES] After connecting to the router, delete all keys from the database and the sync from the other databases connected to the router.\n \n \n\n#Requirements\n- python2.7\n- twisted\n\n#Installation\n\n**Using `pip`:**\n\nOnce this module is available on pypi, you can install it using `pip install kvndb`.\n\n**From source:**\n\n1. Download/clone this repository\n\n2. Install requirements\n\n3. Run `python setup.py install` inside this directory. This may require root access.\n\n#License\n\nMIT\n\n\n**Author**: Benjamin Vogt\n\n**Project homepage:** https://github.com/bennr01/kvndb/", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bennr01/kvndb/", "keywords": "database key value network scalable", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "kvndb", "package_url": "https://pypi.org/project/kvndb/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/kvndb/", "project_urls": { "Homepage": "https://github.com/bennr01/kvndb/" }, "release_url": "https://pypi.org/project/kvndb/0.1.2/", "requires_dist": null, "requires_python": "", "summary": "A modular Key/Value Network Database server+client using twisted", "version": "0.1.2" }, "last_serial": 2469145, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "0f1ed65922b14bf85db1449a7151e370", "sha256": "69cb344edcd25da48a024080bd811201d7e7190db99134af5f81bda0ee2e7d48" }, "downloads": -1, "filename": "kvndb-0.1-py2.7.egg", "has_sig": true, "md5_digest": "0f1ed65922b14bf85db1449a7151e370", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 36018, "upload_time": "2016-11-18T18:06:06", "url": "https://files.pythonhosted.org/packages/95/1d/6ea7e3e1c3138a89010ec9ac738a481389d1dbdb73345266c0412d930089/kvndb-0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "dda55563b69bf76e2515b98e902b2728", "sha256": "9977b97d09245a678cd1dd91d0b1985a7c6291a89059437d8a72451b9f7dbfa1" }, "downloads": -1, "filename": "kvndb-0.1.tar.gz", "has_sig": false, "md5_digest": "dda55563b69bf76e2515b98e902b2728", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12515, "upload_time": "2016-11-18T18:06:09", "url": "https://files.pythonhosted.org/packages/09/76/58bf492c145aa3013398064947d9a64f806a2892868c117534c205fb7bbd/kvndb-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "f3c1a2b453dd484a5290ab9d2cfe75bb", "sha256": "579787ed162a36b2e7d61d3331cc69291b88dcad336f207783c975354ba55f5e" }, "downloads": -1, "filename": "kvndb-0.1.1-py2.7.egg", "has_sig": false, "md5_digest": "f3c1a2b453dd484a5290ab9d2cfe75bb", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 36019, "upload_time": "2016-11-18T18:45:51", "url": "https://files.pythonhosted.org/packages/a6/8b/bed2cb2675835a58d01ace7eeedc5348a88f03c579401e154126ff5a2d0d/kvndb-0.1.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "17a9b37b2edcc5855a7caabc4f10a31f", "sha256": "a3273d4ff463eaf6239e16a3c47ef672c2e991bfad5e2231aa1c5a876a9ba905" }, "downloads": -1, "filename": "kvndb-0.1.1.tar.gz", "has_sig": false, "md5_digest": "17a9b37b2edcc5855a7caabc4f10a31f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12567, "upload_time": "2016-11-18T18:45:54", "url": "https://files.pythonhosted.org/packages/5b/f5/04f1402bbd1865a2777a46852a1571a33c8d9d7c7de74dc3106e135737c7/kvndb-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "78dd8fbdc98863c067bd6836ad4a671b", "sha256": "441f8246ebf1c3d6959d81cf0bdd11555e50577ddfae0e63b200b6a05c0911d4" }, "downloads": -1, "filename": "kvndb-0.1.2-py2.7.egg", "has_sig": false, "md5_digest": "78dd8fbdc98863c067bd6836ad4a671b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 36021, "upload_time": "2016-11-18T18:54:42", "url": "https://files.pythonhosted.org/packages/5f/7a/290076302987976ef37b40684bc1a04f70256414d522c105c8bab6a9bb8b/kvndb-0.1.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "d40d716b8c752afd72b1d2e8c383a129", "sha256": "06896213d368aa0a2cbdb9149478ad3dd2367714a586c753453afb33c38b593b" }, "downloads": -1, "filename": "kvndb-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d40d716b8c752afd72b1d2e8c383a129", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12623, "upload_time": "2016-11-18T18:54:45", "url": "https://files.pythonhosted.org/packages/3b/10/d5a8477f9dacda991585270de3bfd48183ceb701435f204dec0ca791257d/kvndb-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "78dd8fbdc98863c067bd6836ad4a671b", "sha256": "441f8246ebf1c3d6959d81cf0bdd11555e50577ddfae0e63b200b6a05c0911d4" }, "downloads": -1, "filename": "kvndb-0.1.2-py2.7.egg", "has_sig": false, "md5_digest": "78dd8fbdc98863c067bd6836ad4a671b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 36021, "upload_time": "2016-11-18T18:54:42", "url": "https://files.pythonhosted.org/packages/5f/7a/290076302987976ef37b40684bc1a04f70256414d522c105c8bab6a9bb8b/kvndb-0.1.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "d40d716b8c752afd72b1d2e8c383a129", "sha256": "06896213d368aa0a2cbdb9149478ad3dd2367714a586c753453afb33c38b593b" }, "downloads": -1, "filename": "kvndb-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d40d716b8c752afd72b1d2e8c383a129", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12623, "upload_time": "2016-11-18T18:54:45", "url": "https://files.pythonhosted.org/packages/3b/10/d5a8477f9dacda991585270de3bfd48183ceb701435f204dec0ca791257d/kvndb-0.1.2.tar.gz" } ] }