我有一个json对象,例如一个具有大约10个键/值对的用户对象,我当前存储在各种分组的集合中。
我将对象进行字符串化,然后在出路时对其进行解析。更新有时是一种痛苦,因为我必须获取数据然后重置它。
我正在考虑切换到哈希集并使用hmset和hgetall。
使用哈希有什么缺点吗?性能或其他方面,或者这是一个更好的解决方案?
答案 0 :(得分:5)
如果用户对象是扁平的,即没有嵌套对象,则哈希是完美的。使用hget获取单个字段是O(1)。使用hgetall获取整个对象的是O(n),其中n是字段数,所以在你的情况下它也会超快。
请记住,哈希字段值存储为字符串。因此,当您从redis获取数据时,可能需要进行一些类型转换。