[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: