如何在 Azure 中通过部分 RowKey 高效检索实体 Table

How to efficiently retrieve en entity by partial RowKey in Azure Table

在我的应用程序中,RowKey 是单词 + SEPARATOR_CHAR + 时间戳的组合。对于给定的 PartitionKey 和部分 RowKey(没有时间戳部分),如何有效地检索具有最大时间戳的实体? Azure Table 是否支持使用部分 RowKey 的查询?

如果您将行放在 table 中,并且最近的行具有最大的时间戳,您可以只查询具有 rowkey 的第一部分的行,并使用 take 获取第一个结果查询选项。

要仅获取具有行键第一部分的行,您可以使用 > 过滤器和 < 来限制从服务中检索的行。

示例:

行 table(a_2、a_1、b_1)

目标:想要所有 'a' 行

过滤器:> a_ & < a`(因为 ` 在 ascii 上的 _ 之后 table)

结果:a_2、a_1

如果您知道最近添加的带有该 rowkey 的行就是您想要的行,您可以向查询添加 'top=1' 以获得 a_2.