1
WildCat 2014-11-28 18:07:37 +08:00 via iPhone 1
类似Rails的俄罗斯套娃缓存?
给 Topic 模型加一个 updated_at 时间戳,缓存键为 topic/[topic_id]/[updated_at] 或者给 Topic 加 questions_count 字段 以上面的 key 缓存该 topic 下的所有 questions 参考: http://segmentfault.com/blog/tower/1190000000673412 不知道是不是你需要的 |
2
crazyxin1988 2014-11-28 18:10:37 +08:00 3
树形结构,可以参考一下SQL反模式中介绍的这两个
Nested Sets Closure Table |
3
wong2 2014-11-28 18:12:55 +08:00 1
哈,最近刚做了。用的是 Closure Table
|
4
WildCat 2014-11-28 18:13:28 +08:00 via iPhone
…没注意,原来是表结构,匿了
|
5
YORYOR 2014-11-28 18:18:41 +08:00 1
类似于微博的话题与微博以及微博与评论的关系,可以用nosql加索引实现
|
7
hustlzp OP |
9
virusdefender 2014-11-28 19:10:29 +08:00 1
sql反模式 网上搜搜这本书看 里面就有~
|
10
hustlzp OP @virusdefender thanks!
|
11
est 2014-11-28 20:09:05 +08:00 1
1-1000用来存汽车话题类别id
1001-2000用来存电脑话题类别id。 得到电脑类别questions列表:select * from questions where category_id between 10001 and 2000 只是一个hack。 |
12
lincanbin 2014-11-28 23:05:56 +08:00 1
在保存结构关系的时候,把一个topic对应的所有parent全部单独存一条记录,做索引,简单粗暴,空间换时间。
每个question也同样处理,保存所有的topic对应的所有parent,一般也就多保存二三十条记录。 到时候WHERE IN就出来了,这样单纯的结构和简单的语句才是最快的。 |