九、案例分析
京东的商品评价存储设计,原文地址
现状
- 商品的评论数量:数十亿条
- 每天的服务调用:数十亿次
- 每年成倍增长
整体的数据存储:基础数据存储,文本存储
基础数据存储
Mysql:只存储非文本的基础信息。包括:评论状态,用户,时间等基础数据。以及图片,标签,点赞等附加信息。数据组织形式(不同的数据又可选择不同的库表拆分方案):
- 评论基础数据按用户ID进行拆库并拆表
- 图片及标签处于同一数据库下,根据商品编号分别进行拆表
- 其它的扩展信息数据,因数据量不大、访问量不高,处理于同一库下且不做分表即可
文本存储
文本存储(评论的内容)使用了mongodb、hbase
- 选择nosql而非mysql
- 减轻了mysql存储压力,释放msyql,庞大的存储也有了可靠的保障
- nosql的高性能读写大大提升了系统的吞吐量并降低了延迟