2015-09-12 3 views
1

У меня есть объект json, например пользовательский объект, содержащий около 10 пар ключ/значение, которые я храню в настоящее время в наборах для различных группировок.redis hset vs set для хранения объекта

Я строю объект, затем разбираю его на выходе. Иногда обновление - это боль, потому что я должен получить данные, а затем сбросить их.

Я подумываю переключиться на хэш-наборы и использовать hmset и hgetall.

Есть ли недостатки в использовании хешей? Производительность или иное, или это было бы лучшим решением?

ответ

3

Если объект пользователя плоский, то есть нет вложенных объектов, то хеши идеальны. Получение полей с помощью hget - O (1). Получение всего объекта с помощью hgetall - это O (n), где n - количество полей, поэтому в вашем случае это будет очень быстро.

Просто имейте в виду, что значения полей хеш хранятся в виде строк. Поэтому вам, возможно, придется преобразовать тип, когда вы вернете данные из redis.

+0

отличные звуки хорошо для меня, я буду использовать ioredis, который имеет транспорты для возврата объекта – dzm