0

分片提供可扩展的吞吐量和存储。可扩展的吞吐量和存储是分析的天堂。然而,我认为有一个巨大的权衡。

如果我使用散列分片键, - 写入将非常可扩展 - 但是,如果我对事实进行顺序读取,它将是详尽的,因为它必须访问所有服务器

如果我使用范围分片键,例如使用字段 A, - 如果我们不使用时间戳字段,写入可能是可扩展的 - 但是,如果我们不使用字段 A,顺序读取将不可扩展

在我看来,它不会像数据仓库那样具有很强的可扩展性。但是,我不知道还有什么其他解决方案可以使 mongoDB 数据仓库可扩展。

mongoDB sharding 真的适合做数据仓库的可扩展吗?

4

1 回答 1

1

呃,如果你读取的数据很多,很有可能你会耗尽一台服务器的物理读取能力。您希望并行完成读取 - 除非我对数据仓库以及当今 HDD 和 SSD 的限制有非常错误的理解。

您首先要做的是选择要分析的数据子集,对吗?如果您有大量数据,则这种匹配是并行完成的。选择子集后,应该做进一步的分析,对吧?这正是MongoDB 在聚合框架中所做的。对所有受影响的分片进行早期匹配,并将结果发送到该数据库的主分片,在那里应用聚合管道的进一步步骤。

于 2014-09-17T16:26:43.127 回答