Bug#969963: ITP: python-uhashring -- full featured consistent hashing python library compatible with ketama
Package: wnpp
Severity: wishlist
Owner: Thomas Goirand <zigo@debian.org>
* Package name : python-uhashring
Version : 1.2
Upstream Author : Ultrabug <ultrabug@ultrabug.net>
* URL : https://github.com/ultrabug/uhashring
* License : BSD-3-clause
Programming Lang: Python
Description : full featured consistent hashing python library compatible with ketama
Uhashring implements consistent hashing in pure Python.
.
Consistent hashing is mostly used on distributed systems/caches/databases as
this avoid the total reshuffling of your key-node mappings when adding or
removing a node in your ring (called continuum on libketama). More information
and det ails about this can be found in the *literature* section.
.
This full featured implementation offers:
* a lot of convenient methods to use your consistent hash ring in real world
applications.
* simple integration with other libs such as memcache through monkey
patching.
* a full ketama compatibility if you need to use it.
* all the missing functions in the libketama C python binding (which is not
even available on pypi) for ketama users.
* possibility to use your own weight and hash functions if you don't care
about the ketama compatibility.
* Instance-oriented usage, so you can use your consistent hash ring object
directly in your code (see advanced usage).
* tests of implementation, key distribution and ketama compatibility.
.
Per node weight is also supported and will affect the nodes distribution on
the ring.
Note: this is a new dependency of oslo.cache.
Reply to: