我想使用Microsoft Azure Table Storage从云存储中获取表实体。并且,获取大量数据(例如100000个实体)需要很长时间。有没有办法将实体作为一个数量为1000的批次?
先谢谢,
保
答案 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.