我想查詢由Azure Diagnostics生成的WadPerformanceCountersTable,它具有基於刻度標記的PartitionKey,精確到分鐘。這個PartitionKey被存儲爲一個字符串(我沒有任何控制權)。以增量查詢WadPerformanceCountersTable?
我希望能夠根據此表查詢以獲得每分鐘,每小時,每天等的數據點,因此我不必拉取所有數據(我只是想要採樣來近似它)。我希望使用模數運算符來做到這一點,但由於PartitionKey存儲爲一個字符串,這是一個Azure表,我有問題。
有沒有辦法做到這一點?
非工作示例:
var query =
(from entity in ServiceContext.CreateQuery<PerformanceCountersEntity>("WADPerformanceCountersTable")
where
long.Parse(entity.PartitionKey) % interval == 0 && //bad for a variety of reasons
String.Compare(entity.PartitionKey, partitionKeyEnd, StringComparison.Ordinal) < 0 &&
String.Compare(entity.PartitionKey, partitionKeyStart, StringComparison.Ordinal) > 0
select entity)
.AsTableServiceQuery();
這與我目前所擁有的非常相似,除了你的限制爲10分鐘,只需要1條記錄。我需要的是從昨天開始獲得診斷信息,但是隻能在12:00,12:10,12:20等時間獲得診斷信息,而不是每分鐘一次。我可以看到我如何使用你的方法來做到這一點,但我必須對Azure表執行多次調用。 –