performance - Windows Azure 表存储 LINQ 运算符

标签 performance linq azure azure-table-storage

目前表存储支持 From、Where、Take 和 First。

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

为了实现 COUNT、SUM、GROUP BY 等功能,人们应该遵循存储方面的架构或设计实践吗?

如果我们必须自己编写这些代码,那么我们通过 SQL 和 SQL Server 寻找类似的性能差异有多大?您是否认为它在某种程度上具有可比性,或者如果我需要对巨大的数据集进行计数、求和或分组,它会慢得多吗?

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

最佳答案

瑞安,

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

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

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

关于performance - Windows Azure 表存储 LINQ 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2814561/

相关文章:

sql - Azure SQL 数据仓库 ADO.Net 错误代码

java - Tomcat 进程在交换空间用完后被 Linux 内核杀死;没有任何 JVM OutOfMemory 错误

c# - 如何获取 EF 查询来编译最优化的 SQL?

java - 创建一个快速的 Android 词典(字数统计)

c# - DefaultIfEmpty() 不起作用

LINQ 查询类似于 SQL WHERE x IN

Azure 服务总线 - 401 40103 : Invalid authorization token signature for post message using CURL

azure - 将 Azure 网站/Web 应用程序限制为只能在 vnet 内部查看的方法

c# - 使用 C# 将集合拆分为并行的相等批处理

c# - DataTable.Select 与 List.FindAll