所以我们希望存储两种索引。
我们的使用模式将是这样的:
现在我们考虑了不少数据库,目前我们最喜欢的是Cassandra和PostreSQL。但是,我们的应用程序是在Erlang中,它没有为Cassandra生成就绪的绑定。一个主要的要求是它不需要太多的人力来维护。我觉得Cassandra会抛出意想不到的缩放问题,而PostgreSQL只是一个痛苦的碎片,但至少对我们来说这是一个知道数量。我们已经熟悉PostgreSQL,但对Cassandra并不是很熟悉。
因此。有关哪种数据存储最适合我们的用例的任何建议或建议?我愿意接受任何建议!
谢谢,
-Alec
答案 0 :(得分:2)
根据今天的标准,数十亿不是一个大数字,为什么不写一个基准而不是猜测呢?这将为您提供更好的决策工具,这很容易做到。只需安装目标操作系统和每个数据库引擎,然后运行查询,让我们说Perl(因为我喜欢它) 这样做不会超过一天,我之前做过类似的事情。 一个很好的基准测试方法是编写一个随机的脚本,或者像高斯钟形曲线一样,执行查询,“模拟”真实用法。然后绘制数据或像老板那样做,只需阅读日志。
答案 1 :(得分:2)
您没有提供足够的信息来支持大部分答案:您的索引设计。但是,通过发展群集,Cassandra很容易扩展。
您可能希望阅读这篇文章:http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html
Cassandra的一个更重要的问题是它是否支持您需要的查询类型 - 可扩展性不是问题。从您给出的数字来看,这听起来像是在谈论太字节或几十TB,这对Cassandra来说是非常安全的。