GEOHASH
GEOHASH
GEOHASH key [member [member ...]]
- Доступно с версии:
- 3.2.0
- Сложность по времени:
- O(log(N)) для каждого запрошенного элемента, где N — количество элементов в отсортированном наборе.
- Категории ACL:
-
@read,@geo,@slow,
Возвращает корректные Geohash строки, представляющие положение одного или нескольких элементов в отсортированном наборе, представляющем геопространственный индекс (где элементы были добавлены с помощью GEOADD).
Обычно Redis представляет положение элементов с помощью варианта техники Geohash, где позиции кодируются с помощью 52-битных целых чисел. Кодирование также отличается от стандартного, так как начальные минимальные и максимальные координаты, используемые в процессе кодирования и декодирования, отличаются. Однако эта команда возвращает стандартный Geohash в виде строки, как описано в статье Википедии и совместим с веб-сайтом geohash.org.
Свойства строки Geohash
Команда возвращает строки Geohash длиной в 11 символов, поэтому точность не теряется по сравнению с внутренним 52-битным представлением Redis. Возвращаемые Geohash имеют следующие свойства:
- Их можно сократить, удалив символы справа. При этом точность будет потеряна, но область все равно будет указана.
- Их можно использовать в
geohash.orgURL-адресах, таких какhttp://geohash.org/<geohash-string>. Это пример такого URL-адреса. - Строки с похожим префиксом находятся рядом, но обратное неверно, возможно, что строки с разными префиксами тоже находятся рядом.
Возврат
Ответ массива, конкретно:
Команда возвращает массив, где каждый элемент — Geohash, соответствующий каждому имени элемента, переданному в качестве аргумента команде.
Примеры
GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania" GEOHASH Sicily Palermo Catania
© 2006–2022 Salvatore Sanfilippo
Licensed under the Creative Commons Attribution-ShareAlike License 4.0.
https://redis.io/commands/geohash/