如何将表实体作为Microsoft Azure表存储中的批处理

时间:2016-01-22 07:21:07

标签: c# azure-table-storage

我想使用Microsoft Azure Table Storage从云存储中获取表实体。并且,获取大量数据(例如100000个实体)需要很长时间。有没有办法将实体作为一个数量为1000的批次?

先谢谢,

1 个答案:

答案 0 :(得分:1)

TableQuery可以为1000个批次提取查询记录 https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-tables/#retrieve-all-entities-in-a-partition

但是,Table Storage旨在通过分区键或行键来提取记录。如果您有任何其他过滤器,它将会很慢,因为没有索引可以提供帮助,因此必须拉出每一行并查看它是否符合您的过滤器。所以我会遍历你的分区键并以这种方式提取数据。

在每批1000之后,您将获得一个延续令牌,以获取该查询的下一批次。我在设置阻塞集合和数据流方面有一些运气,所以我可以启动下一个查询,让我在处理第一个查询时发生I / O.