Geohash

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche

Geohash ist ein (Geo-)Codierungs-System für zweidimensionale geografische Koordinaten (Breiten-/Längengrad).

Beispiel: Die Koordinaten -25.382708 / -49.265506 werden zum Geohash-Code '6gkzwgjzn820' codiert; -25.383 / -49.266 wird zu '6gkzwgjz'.

Der Geohash-Code hat u.a. folgende Eigenschaften:

  • feste Code-Länge
  • wählbare Genauigkeit (je nach Länge)
  • benachbarte Koordinatenpaare führen zu ähnlichen Codes.

Damit eignet sich der Geohash-Code v.a. für folgende Anwendungen:

  • Primärschlüssel mit geografischen Koordinaten
  • Index für geografische Koordinaten

Es ist zu vermuten, dass sich die Nachbarschaftseigenschaften so ausnutzen lassen, dass daraus eine Struktur entsteht, die bessere Index-Eigenschaften hat, als der aktuelle Stand-der-Technik mit den R-Bäumen.

Ähnliche Codierungen sind die Morton-Zahl (aus Zahlentheorie) und der Natural Area Code (oder Universal Address). Der Geohash-Code bietet die Möglichkeit, die Genauigkeit schrittweise zu verbessern, je nach Code-Länge.

Geohash wurde von Gustavo Niemeyer erfunden. Der Algorithmus ist seit 26. Februar 2008 Public Domain, dies im Unterschied zu ähnlichen Codes, wie z.B. der patentierte Natural Area Code (NAC). Der Geohash-Autor betreut eine freie Webapplikation namens geohash.org. Laut einem Blog-Eintrag des Autors ([1]) wird der Geohash-Code auch von Google intern verwendet.

Weblinks