我有一个 Windows Azure 存储表,我在其中存储了超过 1000k+ 行(实体)。
我想对表执行一些聚合函数,例如计数
特定条件的特定列,average
, total
, min
, max
和 group by
(就像在普通 SQL 中一样)。如何在 Windows Azure 存储表中执行此操作?
最佳答案
唯一的方法几乎是拉下所有实体并在内存中对它们运行聚合。
如果您必须使这些信息保持最新,我会将这些聚合存储在另一个地方,并在每次添加新实体时更新它们。例如平均值是 sum/count
所以你可以有一个表项来存储当前的总和和计数,当你添加一个新实体时,也会更新总和和计数值。
确保使用乐观并发,以便您可以捕获任何竞争条件等。如果您的表实体共享相同的分区键,那么您甚至可以在同一个事务上执行操作。
关于group-by - windows azure 存储表上的聚合函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15741604/