Spec-Zone.ru › Redis

TDIGEST.RANK

TDIGEST.RANK
Синтаксис
TDIGEST.RANK key value [value ...]
Доступно в:
Redis Stack / Bloom 2.4.0
Время выполнения:
O(1)

Возвращает для каждого входного значения (с плавающей запятой) оценку ранга значения (количество наблюдений в эскизе, которые меньше значения, плюс половина количества наблюдений, равных значению).

Несколько рангов можно получить в одном вызове.

Необходимые аргументы

key — имя ключа существующего эскиза t-digest.
value — входное значение, для которого должна быть оценена ранг.

Возвращаемое значение

Массивный ответ — массив целых чисел, заполненных rank_1, rank_2, ..., rank_V:

  • -1 — когда value меньше значения наименьшего наблюдения.
  • Количество наблюдений — когда value больше значения наибольшего наблюдения.
  • В противном случае: оценка количества (наблюдений, меньших value + половины наблюдений, равных value).

0 — ранг значения наименьшего наблюдения.

n-1 — ранг значения наибольшего наблюдения; n обозначает количество наблюдений, добавленных в эскиз.

Все значения равны -2, если эскиз пуст.

Примеры

redis> TDIGEST.CREATE s COMPRESSION 1000
OK
redis> TDIGEST.ADD s 10 20 30 40 50 60
OK
redis> TDIGEST.RANK s 0 10 20 30 40 50 60 70
1) (integer) -1
2) (integer) 0
3) (integer) 1
4) (integer) 2
5) (integer) 3
6) (integer) 4
7) (integer) 5
8) (integer) 6
redis> TDIGEST.REVRANK s 0 10 20 30 40 50 60 70
1) (integer) 6
2) (integer) 5
3) (integer) 4
4) (integer) 3
5) (integer) 2
6) (integer) 1
7) (integer) 0
8) (integer) -1  
redis> TDIGEST.CREATE s COMPRESSION 1000
OK
redis> TDIGEST.ADD s 10 10 10 10 20 20
OK
redis> TDIGEST.RANK s 10 20
1) (integer) 2
2) (integer) 5
redis> TDIGEST.REVRANK s 10 20
1) (integer) 4
2) (integer) 1

© 2006–2022 Salvatore Sanfilippo
Licensed under the Creative Commons Attribution-ShareAlike License 4.0.
https://redis.io/commands/tdigest.rank/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API