2011-04-05 113 views
0

我知道azure表存储中的记录由PartitionKey组织并由RowKey编制索引。 我的应用程序要求我根据TimeStamp的日期范围查询表存储器中的记录。我在表格存储中有成千上万的记录,并且性能非常缓慢。 原因是,TimeStamp没有编入索引。 据我所知,PartitionKey实质上是Ticks中TimeStamp的转换。纠正我,如果我错了。Azure表上的查询存储的分区键

如果这是真的,我该如何查询PartitionKey上的表存储而不是TimeStamp字段并提高性能。

回答

0

您确定您自己的分区密钥,以便它可以成为您想要的。

1

timestamp记录实际上是为了azure的内部使用,您不希望将其用于您的业务逻辑。

如果你目前有一个任意的主键,那么你可以使主键是你自己处理的日期时间(使用rowkey来确保唯一性)。如果在运行更新时需要更新,请根据实际时间戳进行更新,然后使用删除和重新插入模式进行更新。

如果当前的主键和行键很重要,那么创建一个查找表。即一个只有时间戳作为主键和另一个表的主键的表,因为它是rowkey。然后,您可以使用此表从主表中查找您需要的记录。