Dane podstawoweMobilność

Wyszukiwanie geoprzestrzenne

Znajduj najbliższych kierowców, sklepy lub urządzenia w promieniu lub prostokącie, z pozycjami na żywo aktualizowanymi co kilka sekund.

lub wyszukiwanie w prostokącie
Promień
jednostki
km, mi, m, ft
aktualizacje pozycji
Live
Krok 1 z 4
Kierowcy zgłaszają pozycje

Każda aktualizacja zastępuje poprzednią pozycję kierowcy.

Przykładowa sesjaplaying
# Kierowcy zgłaszają pozycje
hotkv> GEOADD drivers:berlin 13.4050 52.5200 driver:17 13.3889 52.5170 driver:23
(integer) 0

Animowany przegląd z prawdziwymi poleceniami HotKV i przykładowymi odpowiedziami. Kliknij dowolny krok, aby do niego przejść. Polecenia i odpowiedzi pozostają po angielsku, dokładnie tak, jak je wpisujesz i widzisz w HotKV.

Problem

Dopasowanie pasażera do najbliższego kierowcy albo klienta do najbliższego sklepu z towarem wymaga świeżego obrazu tysięcy poruszających się pozycji i odpowiedzi w milisekundach. Relacyjna baza danych z indeksami przestrzennymi ma kłopot z tyloma aktualizacjami na sekundę.

Jak radzi sobie z tym HotKV

Pozycje żyją w indeksie geoprzestrzennym. Każdy kierowca aktualizuje własną pozycję co kilka sekund przez GEOADD, a GEOSEARCH zwraca wszystkich w promieniu lub prostokącie, od najbliższego, wraz z odległością. Ten sam indeks odpowiada na zapytania wyszukiwarki sklepów i stref dostaw.

Krok po kroku

Co się dzieje, polecenie po poleceniu

  1. 01

    Kierowcy zgłaszają pozycje

    Każda aktualizacja zastępuje poprzednią pozycję kierowcy.

    GEOADD drivers:berlin 13.4050 52.5200 driver:17 13.3889 52.5170 driver:23
  2. 02

    Pasażer prosi o samochód

    Znajdź pięciu najbliższych kierowców w promieniu 3 km, od najbliższego.

    GEOSEARCH drivers:berlin FROMLONLAT 13.4000 52.5190 BYRADIUS 3 km ASC COUNT 5 WITHDIST
  3. 03

    Zaproponuj przejazd

    Zablokuj kierowcę, aby dwóch pasażerów nie dostało tego samego samochodu.

    SET offer:driver:17 rider:42 NX EX 15
  4. 04

    Odległość do miejsca odbioru

    Odległość między dwoma elementami indeksu.

    GEODIST drivers:berlin driver:17 driver:23 km
Gdzie się sprawdza

Scenariusze z życia

Przewozy i taksówki

Pobliscy kierowcy są znajdowani w milisekundach, a blokada oferty zapobiega podwójnej rezerwacji.

Platformy dostaw

Kurierzy w pobliżu restauracji są dopasowywani, gdy zamówienia stają się gotowe.

Wyszukiwarki sklepów

Klienci widzą najbliższe sklepy w prostokącie wokół widoku mapy.

Wbudowane

Co dostajesz

Pozycje na żywo

GEOADD dodaje lub aktualizuje elementy według długości i szerokości geograficznej.

GEOADD

Wyszukiwanie w promieniu i prostokącie

Wokół punktu lub elementu, posortowane według odległości, ograniczone liczbą.

GEOSEARCHGEOSEARCHSTORE

Odległości i pozycje

Między elementami, w wybranej jednostce.

GEODISTGEOPOS

Pod spodem zwykłe zbiory posortowane

Usuwaj elementy i licz je znanymi poleceniami zbiorów posortowanych.

ZREMZCARD

Częste pytania

Jak usunąć kierowcę, który przechodzi offline?

Indeks geoprzestrzenny to zbiór posortowany, więc ZREM usuwa element.

Czy mogę szukać w prostokącie?

Tak. GEOSEARCH BYBOX przyjmuje szerokość i wysokość wokół punktu lub elementu.

Jakie jednostki są obsługiwane?

Metry, kilometry, stopy i mile.

Powiązane przypadki użycia

Wypróbuj na własnym obciążeniu

HotKV mówi protokołem Redis, więc możesz skierować na niego istniejącego klienta i uruchomić te same polecenia.