【发布时间】:2015-01-22 00:32:17
【问题描述】:
我需要一个可以在 Windows Azure 上运行的 NoSQL 数据库,该数据库适用于以下参数。目前,Azure 表存储、HBase 和 Cassandra 似乎是最有希望的选择。
- 10 亿个实体
- 每秒最多 100 次读取,但缓存会大大减少读取次数
- 每秒大约 10 - 50 次写入
强一致性将是一个加分项,因此 HBase 在这方面可能会比 Cassandra 更好。
查询通常在具有各种索引的辅助内存数据库上完成,此外还有 ElasticSearch 或 Windows Azure Search 以进行全文搜索和一些过滤。
Azure 表存储看起来不错,但据我所知,Azure 表存储和 HBase 之间的最大区别在于 HBase 支持更新和读取单个属性的值,而不是同时读取整个实体的值。我想 HBase 肯定有一些缺点,但我不确定在这种情况下它们会是什么。
我也认为 crate.io 看起来可能很有趣,但我想知道是否会出现无法预料的问题。
在这种情况下,任何人对不同数据库的优缺点有任何其他想法,是否有任何一个出于某种原因真的不适合?
【问题讨论】:
-
你考虑过 MySQL 吗?
-
嗨,crate dev 在这里,所以我显然有偏见,但我认为 crate 可以很好地处理你的用例。尽管我不确定您对一致性的要求是什么。但您可以阅读crate.io/docs/en/latest/storage_consistency.html 并自行判断。
-
我想我至少会在 SQL 中存储一些数据。板条箱看起来很有趣,我会更多地研究它。虽然目前看起来它可能有点太不成熟,而且没有多少人在使用它,但我正在考虑是否可以尝试一些不太重要的数据。
-
最近的 Crate SnowSprint 围绕 Windows 和 Azure 做了很多工作。如果您想了解更多信息,请给我留言。
标签: cassandra azure-table-storage crate nosql