4

目前 Table Storage 支持 From、Where、Take 和 First。

是否有计划支持其他 29 家运营商中的任何一家?

为了实现 COUNT、SUM、GROUP BY 等内容,是否有关于存储的架构或设计实践?

如果我们必须自己编写这些代码,那么我们通过 SQL 和 SQL Server 看到的性能差异有多大?如果我需要对庞大的数据集进行计数、求和或分组,您是否认为它具有可比性,或者会慢得多?

我喜欢 Azure 平台和基于云的存储的想法。我喜欢表存储,因为它可以存储的数据量和它的无模式特性。由于存储空间的高成本,SQL Azure 无法正常工作。

4

2 回答 2

4

瑞安,

正如史蒂夫所说,聚合是在“客户端”解决的,如果您的数据集太大,这可能会导致性能不佳。

另一种方法是以不同的方式思考问题。您可能希望预先计算这些值,以便它们随时可用。例如,如果您有主从数据(如众所周知的采购订单 + 行项目),您可能希望将“行项目的总和”存储在标题中。这可能看起来是“多余的”(确实如此),但非规范化是您必须考虑的事情。

这些预计算可以“同步”或“异步”完成。在某些情况下,您可以负担得起近似值,因此从性能的角度来看,延迟计算可能是有益的。

于 2010-05-26T16:56:38.617 回答
3

唯一的选择是将所有内容拉到本地并在本地对象上运行 Count() 或 Sum()。因为您必须在进行计数之前传输表的全部内容,所以这肯定会比使用 SQL 执行服务器端的操作要慢得多。慢多少取决于数据的大小。

于 2010-05-12T00:26:21.990 回答