从Azure表存储中检索时有没有办法跳过行?

时间:2012-08-26 13:49:43

标签: azure azure-table-storage

我相信过去这个问题的答案是否定的。然而,最近的版本有任何改变,或者有人知道我可以做到这一点的方式。我正在使用数据表,并希望能够做一些像跳过50检索50行。跳过100检索50行等。

3 个答案:

答案 0 :(得分:3)

仍然无法跳过行。支持的唯一导航结构是top。表服务REST API是访问Wndows Azure存储的权威方式,因此其documentation是可用或不可能的位置。

答案 1 :(得分:2)

使用延续令牌,您可以在这里提出什么问题。 Scott Densmore刚才在博客中解释了如何在显示表格时使用连续令牌进行分页(就像你在这里用DataTables所要求的那样):Paging with Windows Azure Table Storage。该博客文章展示了如何在使用延续令牌在页面之间前后移动时显示3个项目的页面:

enter image description here

除此之外,史蒂夫的帖子也描述了相同的概念:Paging Over Data in Windows Azure Tables

答案 2 :(得分:2)

是(有点)而不是。不,在REST头部没有直接支持Skip操作的意义上。你当然可以在记忆中做到这一点,但那会破坏目的。

但是,如果正确构建数据,当然可以实际执行此模式。我们自己做这样的事。我们将分区键与日期时间对齐,并使用RowKey作为鉴别器。这意味着我们可以始终查明我们感兴趣的分区范围,然后Take()一些数据量。因此,例如,我们可以通过指定唯一查询(跳过我们不想要的数据)轻松地Take()每小时前20行。 partion键每小时简单对齐,然后我们可以选择使用RowKey进一步区分 - 最后,我们只是获取数据。当并行执行时,这只是花花公子。

同样,技术上更正确的答案是否定的。但是,您可以使用PK和RK巧妙地近似它。