ForHosting KIT · Viaggi e geografia

Encoder geohash

Trasformi una coppia di coordinate in un geohash breve: 37,7749 e -122,4194 con nove caratteri diventano 9q8yyk8yt, una chiave grande quanto un isolato che raggruppa i luoghi vicini. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Latitudine in gradi decimali
37,7749
Longitudine in gradi decimali
-122,4194
Precisione
9
Ottiene
Geohash
9q8yyk8yt

Un geohash trasforma una coppia di coordinate geografiche in una breve stringa base32 che identifica una cella rettangolare sulla Terra. I punti vicini condividono lunghi prefissi comuni, il che rende la codifica utile per la ricerca di prossimità, le chiavi dei tile, le partizioni di cache e i token di posizione leggibili. Questa capacità riceve latitudine, longitudine e una lunghezza di precisione, poi restituisce la stringa geohash insieme al riquadro di delimitazione della cella. L'algoritmo è pura aritmetica: nessuna chiamata di rete, nessun campionamento casuale e nessun orologio. Precisioni non valide o coordinate fuori intervallo vengono respinte con un chiaro errore di input, anziché con una cella sbagliata in silenzio.

Che cosa rappresenta davvero un geohash

Ogni carattere che aggiunge dimezza la cella grosso modo in una dimensione e poi nell'altra, quindi stringhe più lunghe descrivono rettangoli più piccoli. Un hash di un solo carattere copre un'ampia fetta del pianeta; nove o dieci caratteri sono di norma sufficienti per un isolato o l'impronta di un edificio, a seconda della latitudine. Poiché i prefissi si annidano, due posizioni che condividono i primi sette caratteri ricadono nella stessa cella grossolana, ed è esattamente ciò che rende pratiche le query per prefisso e il clustering sulla mappa.

La stringa non è un hash crittografico: punti diversi possono condividere un prefisso di proposito, e la stessa precisione produce sempre la stessa stringa per le stesse coordinate. La usi quando le serve una chiave compatta e sicura per URL che indichi un luogo, invece di una coppia in virgola mobile completa in ogni riga di log o record di database.

Come scegliere la precisione e inviare le coordinate

Invii gradi decimali sul globo WGS84: latitudine da meno novanta a novanta, longitudine da meno centottanta a centottanta. La precisione è il numero di caratteri base32 che vuole indietro, da uno a dodici. I valori bassi si adattano a raggruppamenti nazionali o regionali; quelli intermedi a città e quartieri; quelli alti a celle su scala di interni o di tracciamento veicoli.

La risposta ripete gli input inviati, il geohash risultante e i limiti di latitudine/longitudine della cella che quella stringa denota. Quei limiti sono gli intervalli con cui l'encoder ha concluso dopo l'ultimo bit, così può verificare la copertura senza decodificare a parte. Campi mancanti e valori non numerici falliscono allo stesso modo.

Preferisca numeri decimali stabili anziché stringhe con unità o lettere cardinali; converta i riferimenti DMS o di griglia prima di chiamare.

Dove si inseriscono le celle codificate nelle pipeline reali

Poiché la trasformazione è deterministica e priva di effetti collaterali, può rigenerare la stessa chiave nel browser, in un worker o in un processo batch e aspettarsi risultati identici byte per byte per gli stessi input. Ricordi che le celle geohash sono rettangoli nello spazio dei gradi, non cerchi perfetti di area uguale: vicino ai poli una cella lunga è molto più stretta in metri est-ovest della stessa lunghezza vicino all'equatore.

Per una ricerca per raggio rigorosa calcola comunque la distanza sui punti originali; usi l'hash per il raggruppamento e il recupero dei candidati, poi affini.

Chiavi di partizione per database e cache

Memorizzi un geohash a lunghezza fissa accanto a ogni record, così le scansioni per intervallo e gli shard di cache raggruppano posizioni vicine senza indici in virgola mobile.

Clustering sulla mappa ed etichette dei tile

Raggruppi i pin per prefissi condivisi a una precisione scelta simile allo zoom, poi espanda solo le celle che richiedono dettaglio.

Token di posizione brevi negli URL

Sostituisca le lunghe query di coordinate con un geohash compatto che recupera comunque una cella nota quando viene decodificato altrove.

Che cosa restituisce questo encoder geohash?

Restituisce la stringa geohash, la latitudine e la longitudine inviate, la lunghezza di precisione e il riquadro di delimitazione della cella che quella stringa identifica.

Quale precisione dovrei usare?

Usi meno caratteri per regioni ampie e più per celle fini. Valori intorno a sette-nove sono comuni per la scala di un isolato; dodici è il massimo che questo strumento accetta.

Quanto costa?

Lo strumento sulla pagina è gratuito nel browser. Gli input non validi non vengono addebitati.

Perché luoghi vicini hanno l'inizio del geohash in comune?

Perché le celle sono annidate: ogni carattere in più divide la cella precedente in parti più piccole. Due luoghi i cui geohash condividono i primi sette caratteri stanno nella stessa cella ampia, e questo rende possibili le ricerche per prefisso e i raggruppamenti su mappa.

Una cella geohash ha la stessa dimensione ovunque?

No. Le celle sono rettangoli in gradi, non cerchi di uguale area: vicino ai poli una cella è molto più stretta da est a ovest, in metri, che all'equatore. Per una ricerca per raggio rigorosa misuri la distanza sulle coordinate originali.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/geo/geohash-encode

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/geo/geohash-encode \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"latitude":37.7749,"longitude":-122.4194,"precision":9}'
{
  "latitude": 37.7749,
  "longitude": -122.4194,
  "precision": 9
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.geohash_encode",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Che cosa rappresenta davvero un geohash

Il geohash è uno schema di codifica pubblico che intreccia i bit di longitudine e latitudine, poi impacchetta quei bit cinque alla volta in un alfabeto di 32 caratteri che omette di proposito le lettere ambigue.

Come scegliere la precisione e inviare le coordinate

Se la precisione è sotto uno, oppure una delle coordinate è fuori dal suo intervallo lecito, la chiamata fallisce con invalid_input e non viene addebitata.

Dove si inseriscono le celle codificate nelle pipeline reali

I team usano i geohash come chiavi di partizione negli archivi di serie temporali, come identificatori dei tile per le cache client, come prefissi condivisi per i filtri di punti vicini e come token brevi in URL o payload QR quando una coppia lat/lon completa è scomoda. Esegua lo strumento gratuito nel browser per ispezionare una singola posizione, o chiami l'API quando le serve la stessa codifica dentro l'automazione a $0.002 per richiesta riuscita.

Quando fallisce la codifica?

Fallisce con invalid_input quando la precisione è sotto uno (o sopra dodici), quando la latitudine è fuori da −90…90, quando la longitudine è fuori da −180…180, o quando un numero richiesto manca o non è finito.

Il risultato è lo stesso nel browser e nell'API?

Sì. Entrambi eseguono lo stesso encoder puro in lib.js, quindi input identici producono stringhe geohash e riquadri di delimitazione identici.

Leggi la documentazione completa del KIT →