{ "info": { "author": "Ziang Guo", "author_email": "iziang@yeah.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Introduction\n--------------\n\nConsistent hashing is a special kind of hashing such that when a hash table is resized and consistent hashing is used, only few keys need to be remapped. In contrast, in most traditional hash tables, a change in the number of array slots causes nearly all keys to be remapped.\n\nConsistentHashing is a very simple implement of concistent hashing.\n\n\nUsage examples\n--------------\n\n.. code-block:: python\n\n >>> from consistenthashing import consistenthashing\n >>> inst = consistenthashing(nodes=[\"122.225.109.103\",\"221.236.5.135\",\"58.58.179.52\",\"61.174.51.204\",\"222.186.31.234\",\"182.74.141.242\",\"179.107.90.135\"], slotSize=10000, virtualNode=2)\n >>> inst.getAllNodes()\n ['122.225.109.103', '221.236.5.135', '58.58.179.52', '61.174.51.204', '222.186.31.234', '182.74.141.242', '179.107.90.135']\n >>> inst.addNode('1.1.1.1')\n True\n >>> inst.getNode('1')\n '61.174.51.204'\n >>> inst.getNode('a')\n '122.225.109.103'\n >>> inst.getNode('hello')\n '61.174.51.204'\n >>> inst.getNode('consistenthashing')\n '1.1.1.1'\n >>> inst.getVirtualNodeNumber()\n 2\n >>> inst.getVirtualNodes('221.236.5.135')\n ['221.236.5.135_virtual1', '221.236.5.135_virtual2']\n >>> inst.removeNode('122.225.109.103')\n True\n >>> inst.addNode('pypi.python.org')\n True\n >>> inst.getAllNodes()\n ['221.236.5.135', '58.58.179.52', '61.174.51.204', '222.186.31.234', '182.74.141.242', '179.107.90.135', '1.1.1.1', 'pypi.python.org']\n\n\nReferencek\n--------------\n - Consistent hashing\n http://en.wikipedia.org/wiki/Consistent_hashing", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": "hashing hash consistent distributed", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "ConsistentHashing", "package_url": "https://pypi.org/project/ConsistentHashing/", "platform": "Any", "project_url": "https://pypi.org/project/ConsistentHashing/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/ConsistentHashing/0.2.2/", "requires_dist": null, "requires_python": null, "summary": "A simple implement of consistent hashing.", "version": "0.2.2" }, "last_serial": 1335047, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "beb1021472f64d815c5e1d898c346a3a", "sha256": "19c7e106daf30332ea4bbdb5d39438e341e5de28d824ef8e0268b81d9622c4ac" }, "downloads": -1, "filename": "ConsistentHashing-0.1.1.tar.gz", "has_sig": false, "md5_digest": "beb1021472f64d815c5e1d898c346a3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1577, "upload_time": "2014-12-04T08:41:37", "url": "https://files.pythonhosted.org/packages/f4/01/07896af512d1b7de229142b73ec13ee19df5bec513d144315b504b1f9038/ConsistentHashing-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "0088d8ded60423fa51735d35fac7043a", "sha256": "fd37acfef4f2078ec418016ae6241d86a999fc235c532032a85acbec636e1ef1" }, "downloads": -1, "filename": "ConsistentHashing-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0088d8ded60423fa51735d35fac7043a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1741, "upload_time": "2014-12-04T09:01:54", "url": "https://files.pythonhosted.org/packages/26/55/e6e45dd1337e86090520ba0db5202599f4564105cffe1e6d2959e7a6e850/ConsistentHashing-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "1d6e44bb94e0398bfea9c45b5042fd0c", "sha256": "7a816989972ecd10b88fcfc948bc258e79e5f869414f29c5d2f5285ba3ab4664" }, "downloads": -1, "filename": "ConsistentHashing-0.1.3.tar.gz", "has_sig": false, "md5_digest": "1d6e44bb94e0398bfea9c45b5042fd0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1772, "upload_time": "2014-12-04T09:25:00", "url": "https://files.pythonhosted.org/packages/a2/2d/e72a9a57dde956a20bd87425721e7bbfd472fab23dee04f7580b85078a3d/ConsistentHashing-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "44a19c7565d27c2cd4680e5e617c99d7", "sha256": "403813acd00e30b6fcceb2fa927b81ddb57fbac6c6e64f192816403d3d45b761" }, "downloads": -1, "filename": "ConsistentHashing-0.1.4.tar.gz", "has_sig": false, "md5_digest": "44a19c7565d27c2cd4680e5e617c99d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1733, "upload_time": "2014-12-04T09:33:02", "url": "https://files.pythonhosted.org/packages/b6/02/e7073336804dc880d7e71bc3687dcac5bb15d76c22fad6c4c4240508433b/ConsistentHashing-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "9c4963424805792e721d1ccb7cb9ca39", "sha256": "f4d55ac79b1f98bb3f50d6d4c30adb43e286648d5bc7c4a5b8b3c80765ef1888" }, "downloads": -1, "filename": "ConsistentHashing-0.1.5.tar.gz", "has_sig": false, "md5_digest": "9c4963424805792e721d1ccb7cb9ca39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1729, "upload_time": "2014-12-04T09:37:59", "url": "https://files.pythonhosted.org/packages/b5/b4/fc313b6f858c57fea5d1ba183a3c9bd92dd4e791f10aa6162ccdf8787373/ConsistentHashing-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "8cce668c9d4740e3e046d97266a55bbe", "sha256": "82e9d35fc3f95105d0abff50ef79325384f1d792069e2c4d1621aec6ea4fb08b" }, "downloads": -1, "filename": "ConsistentHashing-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8cce668c9d4740e3e046d97266a55bbe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2233, "upload_time": "2014-12-04T11:03:30", "url": "https://files.pythonhosted.org/packages/12/c3/65a7e3a027542a53c09532f8e16bec3173642fa20881256975c8e62e3c33/ConsistentHashing-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "d4825fe9c3aaf9ce2766234bbc75e0ef", "sha256": "cd4b55761062379565ab921cda31a6e464315dd8b97eaf02e2d63e54c1e53077" }, "downloads": -1, "filename": "ConsistentHashing-0.1.7.tar.gz", "has_sig": false, "md5_digest": "d4825fe9c3aaf9ce2766234bbc75e0ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2153, "upload_time": "2014-12-04T11:17:59", "url": "https://files.pythonhosted.org/packages/c0/54/0d5d88d823ab0e854ae663819c6bd7161629fe38d5c5bb53d7c7601c0a2e/ConsistentHashing-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "c6ab9f1b8a87e21a52c3fcebf877da50", "sha256": "6bc572fdd6832b435179b72a0acdd8d086b90d8cbc2bad29010b93cfb3881326" }, "downloads": -1, "filename": "ConsistentHashing-0.1.8.tar.gz", "has_sig": false, "md5_digest": "c6ab9f1b8a87e21a52c3fcebf877da50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2151, "upload_time": "2014-12-04T11:19:48", "url": "https://files.pythonhosted.org/packages/68/0f/88cb7784f76a7ccc3919762a2f67f8feaa001072ee2323e5d440767d5344/ConsistentHashing-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "c47fb57edf09a6960373e05493f77d13", "sha256": "4de6343eba3bf9493a1d63e0e7fe9035d427957ed11db991d4d16727d2b0a972" }, "downloads": -1, "filename": "ConsistentHashing-0.1.9.tar.gz", "has_sig": false, "md5_digest": "c47fb57edf09a6960373e05493f77d13", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2215, "upload_time": "2014-12-04T11:28:41", "url": "https://files.pythonhosted.org/packages/02/7b/976a0aaf5f5bcc0641b6b333c4f697d2026e49f5f7d8d3e2e1cd1e54379c/ConsistentHashing-0.1.9.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "435677514c59e10ff3c826d36b166123", "sha256": "d4c303d2ecea032752d6ad04d2bfcb7395139b03e2d15cccfe9c308da5019283" }, "downloads": -1, "filename": "ConsistentHashing-0.2.0.tar.gz", "has_sig": false, "md5_digest": "435677514c59e10ff3c826d36b166123", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2408, "upload_time": "2014-12-04T11:48:52", "url": "https://files.pythonhosted.org/packages/38/08/016238f840923eb0c8500e1475ce00cb6af428f90493126e8a7f0e496014/ConsistentHashing-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2a837285fdc1dc2c3e748a9d99b0a945", "sha256": "8cf7d98dbc83914bfe5ba6500b5178e5656b546e7f1fc534755f07d8d4d1a569" }, "downloads": -1, "filename": "ConsistentHashing-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2a837285fdc1dc2c3e748a9d99b0a945", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2409, "upload_time": "2014-12-07T12:36:35", "url": "https://files.pythonhosted.org/packages/d1/77/90bf18141ea80c4dea48fc161e2ffb810a35d8975705c9b6668a3784f3ce/ConsistentHashing-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "a2198bfe2ed8eb1df1013d908fd87bc5", "sha256": "1635c0878a58b246679c9b3c4d128461feac09363ed94b5dbdd5ad307a5922ef" }, "downloads": -1, "filename": "ConsistentHashing-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a2198bfe2ed8eb1df1013d908fd87bc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2468, "upload_time": "2014-12-08T08:11:10", "url": "https://files.pythonhosted.org/packages/71/2e/dbbfdc36787a661ade91787d336d600d774cabe8fc70774784a90e303985/ConsistentHashing-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a2198bfe2ed8eb1df1013d908fd87bc5", "sha256": "1635c0878a58b246679c9b3c4d128461feac09363ed94b5dbdd5ad307a5922ef" }, "downloads": -1, "filename": "ConsistentHashing-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a2198bfe2ed8eb1df1013d908fd87bc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2468, "upload_time": "2014-12-08T08:11:10", "url": "https://files.pythonhosted.org/packages/71/2e/dbbfdc36787a661ade91787d336d600d774cabe8fc70774784a90e303985/ConsistentHashing-0.2.2.tar.gz" } ] }