我在某處讀取RowKey以外的數據並且PartitionKey會導致全表掃描。我期望正確理解整個查詢過程,但是在整個考驗過程中我已經有點空了。Azure表高級查詢
說我有數據對象的幾百萬行的單個存儲。我已經通過PartitionKey將它分成了多個數據子集。假設我按照
var query = new TableQuery<MyEntity>()
.Where(TableQuery.CombineFilters(
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, pPartition),
TableOperators.And,
TableQuery.GenerateFilterCondition("Timestamp", QueryComparisons.GreaterThanOrEqual, startTime));
創建查詢如何在表上構建此查詢結束?我是否可以控制首先應用哪個過濾器 - 它是應用這些過濾器的順序,所以在這種情況下,我首先會獲得說明.. 100k行的子集,然後應用Timestamp過濾器。
我之所以考慮這個問題,是因爲我想同時使用PartitionKey和RowKey來存儲不同的分離數據,但我也需要能夠儘可能高效地按日期查詢。這個系統的工作負載相當繁重,因此需要很多這樣的請求,所以及時處理它很重要。