clickhouse-cityhash
Python-bindings for CityHash, a fast non-cryptographic hash algorithm
Decision gist · record as of 2026-08-14
Yes, if you are integrating with ClickHouse and need algorithm-version compatibility. The package is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and offers broad platform support via pre-built wheels. Install only if you specifically need ClickHouse protocol compatibility; for general-purpose hashing, use the original python-cityhash package instead.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a C++ compiler and build tools during installation if a pre-built wheel is not available for your platform.
- Medium install friction due to compiled C++ extensions; pre-built wheels available for common platforms (x86_64, ARM, PowerPC, s390x on Linux/macOS/Windows).
- Active maintenance with recent release.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; suitable for most projects.
last release 2026-07-14 (31 days) · last repo commit 2026-07-14 · 10 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 463,446 downloads/mo, #6,521 on PyPI
Alternatives
Verify before relying
pip install clickhouse-cityhash
import clickhouse_cityhash
hash_value = clickhouse_cityhash.CityHash64('your_data')- Whether the downgraded CityHash algorithm version matches your ClickHouse server version requirements.
- Performance characteristics compared to the original python-cityhash package for your use case.
- Compatibility with Python versions beyond those explicitly listed in classifiers (2.7, 3.6).
What it is and what it does
This package wraps Google's CityHash algorithm in Python, specifically forked to match an older version of the algorithm used by ClickHouse servers. CityHash is a fast, non-cryptographic hash function designed for speed rather than cryptographic security, making it suitable for data integrity checks, hash tables, and distributed systems where collision resistance is less critical than performance.
The package is primarily intended as a third-party library for applications that need to hash data using the ClickHouse protocol. It has no runtime dependencies and compiles to native code via C++ and Cython, providing direct access to the underlying hash functions. The maintainers explicitly recommend using the original python-cityhash package for general-purpose hashing needs outside the ClickHouse ecosystem.
Use it for
- Hashing data for compatibility with ClickHouse protocol implementations and servers.
- Computing fast non-cryptographic hashes in performance-critical data processing pipelines.
- Distributed systems or databases that rely on CityHash for partitioning or sharding.
- Verifying data integrity in systems already using ClickHouse's hashing scheme.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are integrating with ClickHouse and need algorithm-version compatibility.
The package is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and offers broad platform support via pre-built wheels. Install only if you specifically need ClickHouse protocol compatibility; for general-purpose hashing, use the original python-cityhash package instead.
Install
clickhouse-cityhash on PyPI
Before you install
Medium install friction due to compiled C++ extensions; pre-built wheels available for common platforms (x86_64, ARM, PowerPC, s390x on Linux/macOS/Windows). Active maintenance with recent release.
Requires a C++ compiler and build tools during installation if a pre-built wheel is not available for your platform.
License in practice
MIT license permits commercial and private use with minimal restrictions; suitable for most projects.
Quickstart
pip install clickhouse-cityhash
import clickhouse_cityhash
hash_value = clickhouse_cityhash.CityHash64('your_data')
Verify before relying
- Whether the downgraded CityHash algorithm version matches your ClickHouse server version requirements.
- Performance characteristics compared to the original python-cityhash package for your use case.
- Compatibility with Python versions beyond those explicitly listed in classifiers (2.7, 3.6).
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 31 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 463,446 / month, #6,521 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: C++Programming Language :: CythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.6Topic :: InternetTopic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Information AnalysisTopic :: Software DevelopmentTopic :: Software Development :: Libraries :: Python ModulesTopic :: Utilities |
Evidence: clickhouse_cityhash-1.0.2.6-cp310-cp310-macosx_10_9_x86_64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-macosx_11_0_arm64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-musllinux_1_2_aarch64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-musllinux_1_2_ppc64le.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-musllinux_1_2_s390x.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-musllinux_1_2_x86_64.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-win32.whl; clickhouse_cityhash-1.0.2.6-cp310-cp310-win_amd64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-macosx_10_9_x86_64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-macosx_11_0_arm64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-musllinux_1_2_aarch64.whl; clickhouse_cityhash-1.0.2.6-cp311-cp311-musllinux_1_2_ppc64le.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “cityhash python bindings”
- clickhouse-cityhashProvides Python bindings to CityHash, a fast non-cryptographic…
- cityhashPython wrapper for Google's CityHash and FarmHash non-cryptographic…
- polars-hashPolars-hash adds cryptographic and non-cryptographic hashing…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also cityhash · murmurhash · mmhash3 · pyfarmhash · mmh3 · fnvhash · siphash · siphashc · py-multihash · blake3