请问百度贴吧的一个帖子是一个表吗?如果这样是不是太多太浪费了?

2016-07-13 00:03:19 +08:00
 mentalidade

假如不是,那么很多条记录的帖子例如:贾君鹏,你妈喊你回家吃饭!这样很大的帖子怎么放?

4266 次点击
所在节点    MySQL
17 条回复
Mac
2016-07-13 00:05:28 +08:00
楼主没听说过表链接?
mentalidade
2016-07-13 00:20:32 +08:00
@Mac 不懂
abelyao
2016-07-13 00:25:12 +08:00
为什么会觉得是一个帖子一个表?
rubytek
2016-07-13 00:30:54 +08:00
类似 hbase 这样的列式存储?
qiayue
2016-07-13 00:45:51 +08:00
每一层楼都是一条记录,不同的记录可以根据情况合理分表
9hills
2016-07-13 00:49:27 +08:00
1 、不是 HBase ,也不是类似的列存储系统
2 、不是一个吧一个表
binux
2016-07-13 00:58:50 +08:00
不是现有数据库,纯内存类似链表的结构,一个吧一条链。
一两年前看过文档。。现在不怎么记得了。。
mentalidade
2016-07-13 07:27:32 +08:00
@abelyao 如果一个帖子一个表的话,每个楼层存放一条记录,每层又可以在楼层中回复
mentalidade
2016-07-13 07:27:49 +08:00
@binux 哪里有文档啊
mringg
2016-07-13 07:52:31 +08:00
@mentalidade binux 大神之前是百度的。。。。。
beidouxun
2016-07-13 08:06:54 +08:00
1 、主贴表(无限极) 一个表
2 、主贴表和回复表 两个表
3 、数据很大,分表 N 个表
一般看设计师的设计理念和项目实际遇到的问题。来决定。
lxy
2016-07-13 09:44:34 +08:00
原来是链表啊。之前抓过贴吧内容,某段时间的旧贴有几率出现两个完全相同的回复,看源码 post_id 都是相同的,从这点就知道不是关系数据库。
ragnaroks
2016-07-13 14:15:47 +08:00
{"TiebaName":"冲锋岛","PostList":[{"PostTitle":"冲锋岛_1","PostData":[{"uname":"xxx","ulevel":"x","content":"我是 1 楼"},{"uname":"xxx","ulevel":"x","content":"我是 2 楼","econtent":[{"uname":"xxx","content":"我是楼中楼 1 楼"},{"uname":"xxx","content":"我是楼中楼 2 楼"}]}]},{"PostTitle":"冲锋岛_2","PostData":[{"uname":"xxx","ulevel":"x","content":"我是 1 楼"}]}]}
ragnaroks
2016-07-13 14:16:30 +08:00
上个月刚用右边的野狗 API 做了个类贴吧的玩意,结构大致如上.
mentalidade
2017-01-10 22:02:25 +08:00
@ragnaroks 好牛,求 github
ragnaroks
2017-01-10 22:08:24 +08:00
@mentalidade 没开源
arist
2017-05-16 17:42:14 +08:00
有一种叫做热数据,对这种帖子会有很多缓存策略。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/292094

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX