1
skydiver 2013-11-29 12:06:39 +08:00
用hSet效率高一些
|
2
peonone 2013-11-29 13:05:25 +08:00
hset相当于是2级hash
如果book:1:name数量比较多,还是用hset合适 |
3
peonone 2013-11-29 13:07:40 +08:00
redis和关系型数据库的差距比较大,不要用关系数据库的概念去对应
|
4
xia0ta0 2013-11-29 13:21:08 +08:00
推荐hset,set适合存储离散的数据
如果想得到一本书有name和author属性,使用set,get需要存储或者读取两次;使用set的存储的数据可以用hgetall一次读出来。 好处还有很多,推荐看一下redis作者写的一个仿reddit Hacknews的程序lamernews https://github.com/antirez/lamernews |
5
xia0ta0 2013-11-29 17:43:13 +08:00
写错了。。。 是使用hset的存储的数据可以用hgetall一次读出来
|
6
cyokvip 2013-11-29 17:43:28 +08:00 via iPhone
好像用hset比较多
|
7
mckelvin 2013-11-30 20:14:13 +08:00
hset正适合这么用。在http://redis.io/topics/data-types Hashes一节中写道:
A hash with a few fields (where few means up to one hundred or so) is stored in a way that takes very little space, so you can store millions of objects in a small Redis instance. |
8
wudikua OP @mckelvin 那一本书的 N个chapter 适不适合存 hset呢,比如 hset(Book:1 chapter:1, XXOO); 一章的内容大概5000字。
哎。现在我好多都是存的key,可能被phpRedisAdmin误导了,因为那个可以自动分割 “:”变得比较可视化,我还以为redis推荐这么做呢,也是受http://www.searchdatabase.com.cn/showcontent_52657.htm 这篇文章中的登录那部分的设计的引导。 |