查询 azure table 以获取分区的最后插入数据

Querying azure table to get last inserted data for a partition

我有一个 Azure 存储 table,用于存储从多个来源更新的状态。我将分区键作为源 ID(每个源都是唯一的)。现在对于任何给定的源 ID,我想访问最后更新的状态。我可以通过按降序按时间戳对分区的结果进行排序并获取第一条记录来做到这一点,但它似乎不是很高效。每个分区可以有超过 1000 条记录,排序似乎不是最好的方法。

有没有其他方法可以有效地实现同样的目标?分区中的实体是否已按我可以利用的特定行键排序?

在 RowKey 中插入一个随着时间的推移 "decreasing" 的值。我用这个:
myentity.RowKey = String.Format("{0:D19}", DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks);

现在您可以在主键上执行带有 where 条件的 select,然后执行 Take(1)。这将为您提供最新的项目。