Geohash: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
K (Weblinks)
 
(8 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. Beispiel: Die Koordinaten -25.382708 / -49.265506 werden zum Geohash-Code 6gkzwgjzn820 codiert; -25.383 / -49.266 zu 6gkzwgjz.  
+
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:
 
Der Geohash-Code hat u.a. folgende Eigenschaften:
* feste Code-Länge
+
* feste, bzw. wählbare Code-Länge
 
* wählbare Genauigkeit (je nach Länge)
 
* wählbare Genauigkeit (je nach Länge)
 
* benachbarte Koordinatenpaare führen zu ähnlichen Codes.
 
* benachbarte Koordinatenpaare führen zu ähnlichen Codes.
  
Damit eignet sich der Geohash-Code v.a. für folgende Anwendungen:
+
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.
* 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.  
 
Ä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.  
Zeile 22: 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