Geohash: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
K (Weblinks)
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Geohash ist ein Breiten-/Längengrad Geocodierungs-System.  
+
Geohash ist ein (Geo-)Codierungs-Algorithmus für zweidimensionale geografische Koordinaten (latitude/longitude, bzw. Breiten- und Längengrad). Geohash ist nicht zu verwechseln mit [[Geocaching]] oder [[Geohashing]], welches Spiele sind.
  
Der Geohash-Code ist ein (Geo-)Codierungssystem für geografische Koordinaten mit folgenden Eigenschaften:
+
Beispiel: Die Koordinaten -25.382708 / -49.265506 werden zum Geohash-Code '6gkzwgjzn820' codiert; -25.383 / -49.266 wird zu '6gkzwgjz'.
* feste Code-Länge
 
* wählbare Genauigkeit
 
* benachbarte Koordinatenpaare führen zu ähnlichen Codes
 
  
Damit eignet sich der Geohash-Code v.a. für folgende Anwendungen:
+
Der Geohash-Code hat u.a. folgende Eigenschaften:
* als Primärschlüssel (da fixe Code-Länge)
+
* feste, bzw. wählbare Code-Länge
* als zweidimensionaler Index für geografische Koordinaten
+
* wählbare Genauigkeit (je nach Länge)
 +
* benachbarte Koordinatenpaare führen zu ähnlichen Codes.
  
Ähnliche Codierungen sind die Morton-Zahl (aus Zahlentheorie, nicht zu Verwechseln mit ) 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.  
+
Durch seine Eigenschaften eignet sich der Geohash-Code v.a. als Primärschlüssel aus geografischen Koordinaten sowie als Index und interne Repräsentation für geografische Koordinaten. Es ist zu vermuten, dass sich die Nachbarschaftseigenschaften so ausnutzen lassen, dass daraus eine Struktur entsteht, die teilweise bessere Index-Eigenschaften hat, als der aktuelle Stand-der-Technik mit den R-Bäumen.
  
Angeblich verwendet auch Google intern den Geohash-Code in seinem BigTable. 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-Erfinder betreut eine freie Webapplikation namens geohash.org.  
+
Ä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.  
  
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.  
+
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 ([http://blog.labix.org/2008/05/20/google-using-geohash]) wird der Geohash-Code auch von Google intern verwendet.  
  
 
== Weblinks ==
 
== Weblinks ==
Zeile 20: Zeile 18:
 
** [http://en.wikipedia.org/wiki/Geohash Geohash auf Wikipedia] - die 'offizielle' Spezifikation.
 
** [http://en.wikipedia.org/wiki/Geohash Geohash auf Wikipedia] - die 'offizielle' Spezifikation.
 
** [http://forums.groundspeak.com/GC/index.php?showtopic=186412 Original-Thread vom Autor G. Niemeyer]
 
** [http://forums.groundspeak.com/GC/index.php?showtopic=186412 Original-Thread vom Autor G. Niemeyer]
 +
** [http://www.freepatentsonline.com/y2005/0023524.html US-Patent] - Compact text encoding of latitude/longitude coordinates; United States Patent Application 20050023524
 
* Applikationen / Webservices:
 
* Applikationen / Webservices:
 +
** http://geohash.gofreerange.com/
 
** [http://geohash.org/ Geohash.org] - die offizielle Webseite vom Autor G. Niemeyer.
 
** [http://geohash.org/ Geohash.org] - die offizielle Webseite vom Autor G. Niemeyer.
 
** [http://www.nearby.org.uk/api/convert-help.php nearby.org.uk Geocoder]
 
** [http://www.nearby.org.uk/api/convert-help.php nearby.org.uk Geocoder]
 
* Source Code:
 
* Source Code:
** [http://github.com/kungfoo/geohash-java/tree/master Geohash-Java (kungfoo)]
+
** [http://github.com/kungfoo/geohash-java/tree/master Geohash-Java (kungfoo)] ('''empfohlen''')
 
** [http://code.google.com/p/geospatialweb/source/browse/#svn/trunk/geohash/src Geohash Encoder/Decoder in Java] from Google Code
 
** [http://code.google.com/p/geospatialweb/source/browse/#svn/trunk/geohash/src Geohash Encoder/Decoder in Java] from Google Code
 
** [http://github.com/davetroy/geohash/tree/master Improved Geohash Gem for Ruby] from Dave Troy (aktuell), [http://github.com/davetroy/geohash-js/tree/master Javascript]
 
** [http://github.com/davetroy/geohash/tree/master Improved Geohash Gem for Ruby] from Dave Troy (aktuell), [http://github.com/davetroy/geohash-js/tree/master Javascript]
 
* Blogs/Articles:
 
* Blogs/Articles:
 
** [http://www.geospatialsemanticweb.com/2008/05/29/geohash-for-spatial-index-and-search geospatialsemanticweb-Blog]
 
** [http://www.geospatialsemanticweb.com/2008/05/29/geohash-for-spatial-index-and-search geospatialsemanticweb-Blog]

Aktuelle Version vom 1. Dezember 2014, 00:53 Uhr

Geohash ist ein (Geo-)Codierungs-Algorithmus für zweidimensionale geografische Koordinaten (latitude/longitude, bzw. Breiten- und Längengrad). Geohash ist nicht zu verwechseln mit Geocaching oder Geohashing, welches Spiele sind.

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, bzw. wählbare Code-Länge
  • wählbare Genauigkeit (je nach Länge)
  • benachbarte Koordinatenpaare führen zu ähnlichen Codes.

Durch seine Eigenschaften eignet sich der Geohash-Code v.a. als Primärschlüssel aus geografischen Koordinaten sowie als Index und interne Repräsentation für geografische Koordinaten. Es ist zu vermuten, dass sich die Nachbarschaftseigenschaften so ausnutzen lassen, dass daraus eine Struktur entsteht, die teilweise 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