Are queries against Azure Table Storage indexed when using partial RowKey?

I understand from MS PDC views that PartitionKey is used to balance tables on multiple servers, but no one seems to give any recommendations as to whether PartitionKey is used as the WITHIN index on the same server.

In addition, everyone will tell you that specifying PartitionKey and RowKey gives you excellent performance, but no one seems to tell you if RowKey is used to improve performance in the PartitionKey section.

Here are some sample queries to help me ask questions. Suppose the entire table contains 100,000,000 rows.

  • PartionKey = "123" and OtherField = "def"
  • PartitionKey = "123" and RowKey> = "aaa" and RowKey <"AAC"

Here are my questions:

  • If I have only 10 rows in each section, will the query be Fast?
  • If I have 1,000,000 rows in each section, will query 2 be fast?
+5
source share
5 answers

ATS PartitionKey, . ATS PartitionKey "server" /node, 1:1. ( , , PartitionKeys, / node, , Azure. Azure ATS, , , ... " " )

RowKey "", node. , RowKey - PartitionKey.

, , PartitionKey , , - ATS . 1- PartitionKey, RowKey. (, , PartKey)

,

 

1. PartitionKey = x RowKey = y ( OtherProp = z)

node,

 

2. PartitionKey = x ( OtherProp = z)

node, ATS equvi.

 

3. OtherProp = z

,


,

  • , . (.. " ?" ). , Query2, 10 , "", , ,

  • ( ) , 1. Query2,

, , , ATS.

( , ) , , - . , , , , , - , ..

+15

# 1, , .

# 2 , RowKey. ( , .) , , , , , , # 1.

+1

(PartitionKey, RowKey). . PartitionKey . , , 10 .

10 PartitionKey = "123", "". "".

+1

, .

In other words, Azure table storage can really be thought of as just a single index consisting of two parts, a partition key and a range key in that order.

0
source

All Articles