python-hll
A Python implementation of HyperLogLog whose goal is to be storage compatible with java-hll, js-hll and postgresql-hll.
NOTE: This is a fairly literal translation/port of java-hll to Python. Internally, bytes are represented as Java-style bytes (-128 to 127) rather than Python-style bytes (0 to 255). Also this implementation is quite slow: for example, in Java HLLSerializationTest takes 12 seconds to run while in Python test_hll_serialization takes 1.5 hours to run (about 400x slower).
Runs on: Python 2.7 and 3
Free software: MIT license
Documentation: https://python-hll.readthedocs.io.
Getting started
$ mkvirtualenv python_hll $ python setup.py develop $ pip install -r requirements_dev.txt
Run tests:
$ make lint $ make test-fast
To run one test file or one test:
$ py.test --capture=no tests/test_sparse_hll.py $ py.test --capture=no tests/test_sparse_hll.py::test_add
To run slow tests:
$ make test
History
0.0.0 (2019-06-14)
Submitted to AdRoll HackWeek.
0.1.0 (2019-09-12)
First release on PyPI.
Release files for python-hll 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| python_hll-0.1.0.tar.gz | 2.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| python_hll-0.1.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 2.1 MB
Release files / python_hll-0.1.0.tar.gz
| Download URL | python_hll-0.1.0.tar.gz |
|---|---|
| Size | 2.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2811055e22b47b78b73ef23917b023009f0d18e24c32e9d9adeaec0f3adc1770
|
|
BLAKE2b-256 checksum How to use checksums |
f03994c8bf81926e053b3ca3aec0290059a3c22b226e440009393c775668be38
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.10
|
Release files / python_hll-0.1.0-py2.py3-none-any.whl
| Download URL | python_hll-0.1.0-py2.py3-none-any.whl |
|---|---|
| Size | 26.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
12247836519ccc5b58cb155df582aeb3e6209e0bb97ed530f0c2f377d163d900
|
|
BLAKE2b-256 checksum How to use checksums |
4974707071fcfc7c6b09e15d01327def2796921005d8c1266372ac479ebcd056
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.10
|