7

我正在为具有以下要求的项目寻找数据存储解决方案:

  1. 应用程序在商店中动态创建容器/表。
  2. 在一小段时间内(例如两周),该表/容器并行获得大量插入。最后一次阅读必须立即可用。
  3. 插入的数据非常小,有 4 到 6 个数字列。
  4. 需要小型查询/过滤支持,但不需要连接或交叉查询。
  5. 需要执行一些聚合函数,如“Count”、“Sum”、“Max”、“Min”和“Avg”。

基本上,我需要类似 Windows Azure 表存储但具有聚合函数的东西。

你会推荐什么?

4

6 回答 6

4

RavenDB支持您提到的所有内容以及更多内容。它的扩展性很好,并且通过 Map/Reduce 查询和 Linq 查询支持聚合函数。它也可以在内存中运行。

于 2011-05-27T01:09:19.487 回答
3

MongoDB也是一个不错的选择。它支持对单节点安装的组(聚合)查询。如果您需要扩展,您可以创建分片集群并使用 map/reduce 来满足聚合需求 - 但与其他解决方案相比,Mongo 的 map/reduce 性能并不是顶级的。

如果您需要 map/reduce 的高性能,您可以查看Hadoop

于 2011-06-02T08:24:30.477 回答
1

为什么不使用SQL Azure?它支持聚合功能并满足您的所有需求,请查看此表

于 2011-06-06T08:40:36.967 回答
0

如果它不必是免费的,那么 kdb+ 将是一个不错的选择。它是一个主要用于金融时间序列分析的系统。它支持您所要求的一切,而且速度非常快。有一个免费试用版可用,但要在生产中使用它是……昂贵的。它可以使用类似 sql 的语法完全查询,并且可以使用 apl 家族中称为 q 的专有语言完全可编程。

http://www.kx.com/

于 2011-06-03T19:27:57.953 回答
0

对于问题正文中列出的要求,市场上任何合格的 SQL 服务器都可以处理这个问题,尽管您需要设置一些索引来让事情变得超级快。

但这就像说,如果你想让你的车开得快,你必须把它放在 D 档并踩下油门踏板,这就是 fwiw。

于 2011-06-05T22:13:36.940 回答
0

确实需要有关要求和预算的更多信息......但是,由于人们只是在抛出一些答案,我将把这个混在一起:

有一些非常酷且非常昂贵的硬件解决方案可以运行大规模并行 SQL 查询,例如 Netezza Skimmer 或 TwinFin

http://www.netezza.com/data-warehouse-appliance-products/skimmer.aspx

几乎让我希望我们的数据仓库太慢 - 只是这样我才能得到这些小狗之一。

于 2011-06-06T07:06:52.620 回答