【发布时间】:2012-06-29 20:00:52
【问题描述】:
我目前正在设计一个系统来监视 youtube 视频的排名/观看次数。每天有大量 youtube 视频(> 500.000 并且还在增长)。
我目前正在考虑将其存储在 MySQL 数据库中,但令我不安的是,该表会增长到数十亿和数万亿行,我认为这不会很好。
我需要分析这些数据,例如:
- 哪些视频在 X 和 Y 之间的时间里增长了很多
- 绘制每天的点击次数
- 绘制每周的点击次数...
- 还有一些我还不知道的事情
那么,我的 web 2.0 想到的是,有没有一种 NoSQL 数据库可以更好地处理这个问题?我没有完全了解这些(几乎)新数据库,也不知道它们能做什么。
您的建议是什么,使用什么类型的数据库? 有没有关系?如果不是,是哪个 NoSQL 数据库?
PS:第一优先是快速评估和插入结果,第二是高可用性(或只是复制)
【问题讨论】:
-
考虑性能,附注:你知道 facbeook 是基于 MySQL 构建的吗?
-
是的,我想我在某个时候读过。我提出这个问题的动机主要是我对“太大的表”(未聚集)和对历史数据的快速评估的关注。我目前正在试验 mysql,但我不确定它是否是正确的选择。
-
老实说,如果您事先关心的只是太大的表,我认为您不必担心,如果: 您可以使用索引来缩小搜索结果的范围。索引用作行指针,因此行数不会影响索引,它只是简单地指向那些正确的行...