Skip to main content

No project description provided

Project description

Pygeohash-Fast

A Fast geohasher for python.

Created by wrapping the rust geohash crate with pyo3.

Huge shout out to the georust community :)

Currently very WIP, only supports encoding geohashes.

Speed Comparisons

Compared against the great python library pygeohash This isn't a perfect benchmark, but should illstrate what's possible. Tested on 1 million randomly generated lat/long pairs.

Results for Pygeohash

In [14]: %%timeit
    ...: [encode(lats[i], lngs[i], 8) for i in range(len(lats))]

10.8 s ± 77.4 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

Results for Pygeohash-fast encode:

In [16]: %%timeit
    ...: [fast_encode(lngs[i], lats[i], 8) for i in range(len(lats))]
3.44 s ± 11.4 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

However, in order to improve things in further when encoding many points we have methods for encoding many points at once.

In [22]: %%timeit
    ...: encode_many(lngs, lats, 8)
155 ms ± 3.58 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

So for simple geohash encoding this library is ~69x times faster, nice.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygeohash_fast-0.3.0.tar.gz (5.0 kB view details)

Uploaded Source

Built Distributions

pygeohash_fast-0.3.0-cp37-abi3-win_amd64.whl (189.4 kB view details)

Uploaded CPython 3.7+Windows x86-64

pygeohash_fast-0.3.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl (273.0 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.5+ x86-64

pygeohash_fast-0.3.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (459.3 kB view details)

Uploaded CPython 3.7+macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

File details

Details for the file pygeohash_fast-0.3.0.tar.gz.

File metadata

  • Download URL: pygeohash_fast-0.3.0.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/0.13.1

File hashes

Hashes for pygeohash_fast-0.3.0.tar.gz
Algorithm Hash digest
SHA256 c9c65705b81e1c350df21889177d28fcbd034d7e7b16adf309c0d5aeb78cd7ec
MD5 79bfcced08d9148af4497859f24719e6
BLAKE2b-256 36fb3c9c2ee4d8165706189d2523a9645f79f4d4d6417dbd3e69d49c26a9188f

See more details on using hashes here.

File details

Details for the file pygeohash_fast-0.3.0-cp37-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for pygeohash_fast-0.3.0-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7689815493290df44d3f1b994b437b7701c9e9c03d80e3c4a044a41067d8c517
MD5 89752eecb45b6676b04ca7dcd7ef3fc8
BLAKE2b-256 05f2c86514edb0540364e86a6d090f294898dff6a8e0ac2181c8f6bf52c49d89

See more details on using hashes here.

File details

Details for the file pygeohash_fast-0.3.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pygeohash_fast-0.3.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 fcd440069e0504d47aa1334409aabd1a87727fa0f7ce82e4b8c03405519c6678
MD5 c2c3c9df04163a530b56db5080d21f7a
BLAKE2b-256 e74094afaf31fd36493b930ea073bb3a64153cded273d9e03024da69a0658a01

See more details on using hashes here.

File details

Details for the file pygeohash_fast-0.3.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygeohash_fast-0.3.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 87fca3f8ddec45a562bd1eaf485dde2e104eaf318a18d26efbc18b9c54826550
MD5 452fefc13e39465b5a25dbdb7213cd44
BLAKE2b-256 905b67386c564a7a5ca58d65868640e555f1c1fac98dd3e0f241a795fa1e98f7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page