【发布时间】:2012-02-03 08:23:56
【问题描述】:
所以我们希望存储两种索引。
- 第一种将是数十亿的数量级,每个都有 1 到 1000 个值,每个值是一个或两个 64 位整数。
- 第二种将是数百万,每个都有大约 200 个值,每个值的大小在 1KB 到 1MB 之间。
我们的使用模式将是这样的:
- 这两种索引的值都会以每秒数千次的速度添加到顶部。
- 索引将不常被读取,但当它们被读取时,它将是读取的整个索引
- 应在将值写入索引或在某种批处理类型作业中修剪索引
现在我们已经考虑了很多数据库,目前我们最喜欢的是 Cassandra 和 PostreSQL。然而,我们的应用程序是在 Erlang 中的,它没有为 Cassandra 提供生产就绪的绑定。而一个主要的要求就是不能需要太多的人力来维护。我感觉 Cassandra 会引发意想不到的扩展问题,而 PostgreSQL 会很痛苦,但至少对我们来说这是一个已知数量。我们已经熟悉 PostgreSQL,但对 Cassandra 还不是很熟悉。
所以。关于哪种数据存储最适合我们的用例的任何建议或建议?我愿意接受任何和所有建议!
谢谢,
-亚历克
【问题讨论】:
-
请澄清索引(例如第一个):单个键下有多少索引成员?如果可以,请发布一个数字示例。
-
“这将是读取的整个索引”——那么,这是一种非常奇怪的索引。通常,索引的目的是避免阅读全部内容。你能详细解释一下你想要达到的目标吗?
标签: mysql postgresql cassandra riak