Список пар ключ-значение в Redis - PullRequest
1 голос
/ 10 января 2012

Можно ли иметь список пар ключ / значение в Redis?или, возможно, набор пар ключ-значение.

То, что я хочу иметь, - это список меток времени и даты, счетчики которых имеют следующий вид:

1.1.12 -> 12
1.2.12 -> 1
1.3.12 -> 3

Я хочу иметь возможность получитьдиапазон следующим образом:

получить диапазон от 1.1.12 до 1.2.12, и я хочу получить результат как 13.

Возможно ли это?

Какие структуры мне следует использовать?

Как правильно это сделать?

Допустим, я хочу иметь метки времени в качестве набора, и каждая метка времени будет указывать на 3-4 пары ключевых значений следующим образом:

1.1.12 -> error : 1
          pass : 100
1.2.12 -> error : 3
          pass : 50
1.3.12 -> error : 12
          pass : 100

поддерживает ли клиент C # это?

Моя главная цель - сохранить эту многозначную структуру и иметь возможность запрашивать.

1 Ответ

0 голосов
/ 10 января 2012

Я бы предложил преобразовать строки даты / времени во что-то вроде «секунд с начала эпохи» (но, возможно, использовать 64-битное значение, если вам нужен больший диапазон, чем с 1970 по 2038 год - и, возможно, использовать другой стартовыйопять же, в соответствии с требованиями вашего приложения).

Оттуда я бы использовал zset («отсортированный» или «оцененный» набор, который поддерживает выборку подмножеств с использованием операций / команд Redis ZRANGE и ZRANGEBY).Секундами с вашей эпохи может быть оценка, а вашим значением может быть любое кодированное значение, которое вам нравится (включая закодированный словарь / хэш-таблицу JSON или BSON).Или это может быть простая строка, которую вы используете в качестве ключа Redis (таким образом реализуя один уровень косвенности - zset, действующий как индекс ключей Redis).Если вы выберете этот последний подход, я бы порекомендовал использовать хранимое целое число Redis для предоставления уникальных идентификаторов последовательности для ваших ключей - так, чтобы у них были свойства ACID в возможной грани параллельных процессов / узлов, создающих эти косвенный ключ / значениепар).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...