Ride-hailing e taxi
Gli autisti vicini vengono trovati in millisecondi, e un lock sull'offerta evita le doppie prenotazioni.
Trova gli autisti, i negozi o i dispositivi più vicini in un raggio o in un riquadro, con posizioni dal vivo aggiornate ogni pochi secondi.
Ogni aggiornamento sostituisce la posizione precedente dell'autista.
Una dimostrazione animata con comandi HotKV reali e risposte di esempio. Clicca su un passo qualsiasi per andarci. Comandi e risposte restano in inglese, esattamente come li digiti e li vedi in HotKV.
Abbinare un passeggero all'autista più vicino, o un cliente al negozio più vicino con la merce disponibile, richiede una vista aggiornata di migliaia di posizioni in movimento e una risposta in millisecondi. Un database relazionale con indici spaziali fatica con così tanti aggiornamenti al secondo.
Le posizioni vivono in un indice geospaziale. Ogni autista aggiorna la propria posizione ogni pochi secondi con GEOADD, e GEOSEARCH restituisce tutti quelli entro un raggio o un riquadro, dal più vicino, con la loro distanza. Lo stesso indice risponde alle query dello store locator e delle zone di consegna.
Ogni aggiornamento sostituisce la posizione precedente dell'autista.
GEOADD drivers:berlin 13.4050 52.5200 driver:17 13.3889 52.5170 driver:23Trova i cinque autisti più vicini entro 3 km, dal più vicino.
GEOSEARCH drivers:berlin FROMLONLAT 13.4000 52.5190 BYRADIUS 3 km ASC COUNT 5 WITHDISTBlocca l'autista, così due passeggeri non possono ricevere la stessa auto.
SET offer:driver:17 rider:42 NX EX 15Distanza tra due membri dell'indice.
GEODIST drivers:berlin driver:17 driver:23 kmGli autisti vicini vengono trovati in millisecondi, e un lock sull'offerta evita le doppie prenotazioni.
I corrieri vicini a un ristorante vengono abbinati man mano che gli ordini sono pronti.
I clienti vedono i negozi più vicini dentro un riquadro attorno alla vista della mappa.
GEOADD aggiunge o aggiorna i membri per longitudine e latitudine.
GEOADDAttorno a un punto o a un membro, ordinata per distanza, limitata per numero.
GEOSEARCHGEOSEARCHSTORETra membri, nell'unità che scegli.
GEODISTGEOPOSRimuovi e conta i membri con i comandi dei sorted set che conosci.
ZREMZCARDUn indice geospaziale è un sorted set, quindi ZREM rimuove il membro.
Sì. GEOSEARCH BYBOX accetta una larghezza e un'altezza attorno a un punto o a un membro.
Metri, chilometri, piedi e miglia.
HotKV parla il protocollo Redis, quindi puoi puntarci un client esistente ed eseguire questi stessi comandi.