Algoritma: Geohash

Geohash adalah sistem geocoding yang memungkinkan kita mengetahui user berada di area mana pada sebuah peta. Algoritma ini mengencode lokasi user ke dalam bentuk huruf dan angka. Lebih jelasnya lihat gambar di bawah.

Wilayah Jakarta Selatan dalam Grid

Biasanya kita menggunakan latitude dan longtitude untuk mengetahui titik lokasi tertentu, tetapi dengan Geohash kita merepresentasikan bumi menjadi kotak-kotak kecil.

Geohash memiliki level untuk setiap luasan area (level 1: 1 digit, level 2: 2 digit, dst.), semakin spesifik lokasi jumlah karakter hash akan menjadi lebih panjang (qquh2w) dan semakin lebar jumlah digit yang diberikan lebih kecil (q).

Level Geohash dan Ukuran Area

Lebih jelasnya kalian bisa melihat melalui URL berikut: https://rawgit.com/rzanato/geohashgrid/master/geohashgrid.html

Contoh Implementasi Geohash

  • Real-time search location: Google Map
  • Real-time search restaurant/hotel: Yelp
  • Transportation app: Gojek, Grab, Uber
  • dll

Contoh Code Geohash

Sudah ada banyak library geohash yang bisa digunakan, salah satunya library ngeohash (https://npm.io/package/ngeohash).

Selanjutnya bagaimana implementasi Geohash untuk aplikasi real-time search location.