Azure表存储:对相同数据的相同查询返回不同的结果

Azure表存储:对相同数据的相同查询返回不同的结果,azure,azure-storage,azure-table-storage,Azure,Azure Storage,Azure Table Storage,背景信息: 使用Azure表存储(不是SQL Azure) 我有一个名为Reservations的表,带有PK:Int(进行预订的个人/组织的Id);RK:字符串(格式为-) 下面显示的查询进行比较(RowKey>=EntityName和RowKey查询需要多长时间?是否超时?查看您是否在响应中获得x-ms-NEXTPARTIONKEY和x-ms-NextRowKey标题。由于您在查询中未使用PARTIONKEY,因此您的查询正在执行全表扫描,并且只返回数据的子集。请注意在对表服务的单个请求中,

背景信息:

  • 使用Azure表存储(不是SQL Azure)
  • 我有一个名为Reservations的表,带有PK:Int(进行预订的个人/组织的Id);RK:字符串(格式为-)

  • 下面显示的查询进行比较(RowKey>=EntityName和RowKey查询需要多长时间?是否超时?查看您是否在响应中获得
    x-ms-NEXTPARTIONKEY
    x-ms-NextRowKey
    标题。由于您在查询中未使用PARTIONKEY,因此您的查询正在执行全表扫描,并且只返回数据的子集。请注意在对表服务的单个请求中,表服务最多只返回1000个实体。@GauravMantri看起来你是对的。我看到的是“x-ms-continuation-NextPartitionKey”和“x-ms-continuation-NextRowKey”.也许我看错了文档,但我的印象是,只有在我的实际结果(我期望的结果是35)出现时,我才会得到这些标题大于1000。您是否能够更详细地解释这一点,或者为我指出正确的方向?再次感谢!Gaurav是正确的。如果您的查询跨越分区边界,您还可以看到延续标记。这意味着,如果您的35行恰好在两个分区之间拆分,您可能会在第一次调用中得到35行的子集,并且其余部分在第二个分区中。如果您的数据被拆分到多个分区中,则在加载所有数据之前,您可能需要执行更多的调用。表存储也在分析分区使用情况,并在后台处理数据,因此您将看到返回的不同子集。始终查找延续令牌。