Geohash: Unterschied zwischen den Versionen
Stefan (Diskussion | Beiträge) |
Stefan (Diskussion | Beiträge) |
||
Zeile 1: | Zeile 1: | ||
Geohash ist ein Breiten-/Längengrad Geocodierungs-System. | Geohash ist ein Breiten-/Längengrad Geocodierungs-System. | ||
− | Der Geohash-Code ist ein (Geo-)Codierungssystem für geografische Koordinaten | + | 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. |
+ | |||
+ | Der Geohash-Code hat u.a. folgende Eigenschaften: | ||
* feste Code-Länge | * feste Code-Länge | ||
− | * wählbare Genauigkeit | + | * 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: | Damit eignet sich der Geohash-Code v.a. für folgende Anwendungen: | ||
− | * | + | * Primärschlüssel mit geografischen Koordinaten |
− | * | + | * Index für geografische Koordinaten |
− | Ähnliche Codierungen sind die Morton-Zahl (aus Zahlentheorie | + | Ä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-Erfinder betreut eine freie Webapplikation namens geohash.org. | |
− | 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. | + | Angeblich verwendet auch Google intern den Geohash-Code in seinem BigTable. 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. |
== Weblinks == | == Weblinks == |
Version vom 30. Dezember 2008, 19:35 Uhr
Geohash ist ein Breiten-/Längengrad Geocodierungs-System.
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.
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
Ä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-Erfinder betreut eine freie Webapplikation namens geohash.org.
Angeblich verwendet auch Google intern den Geohash-Code in seinem BigTable. 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.
Weblinks
- Dokumentation:
- Geohash auf Wikipedia - die 'offizielle' Spezifikation.
- Original-Thread vom Autor G. Niemeyer
- Applikationen / Webservices:
- Geohash.org - die offizielle Webseite vom Autor G. Niemeyer.
- nearby.org.uk Geocoder
- Source Code:
- Geohash-Java (kungfoo)
- Geohash Encoder/Decoder in Java from Google Code
- Improved Geohash Gem for Ruby from Dave Troy (aktuell), Javascript
- Blogs/Articles: