Perguntas frequentes sobre chaves hierárquicas de partição em Azure Cosmos DB (pré-visualização)

APLICAÇÕES A: SQL API API para Cassandra Gremlin API API de Tabela Azure Cosmos DB API para MongoDB

As teclas hierárquicas de partição, ou subpartição, permitem-lhe configurar até uma hierarquia de três níveis para as chaves de partição para otimizar ainda mais a distribuição de dados e permitir uma maior escala. Este artigo responde a perguntas comumente sobre chaves hierárquicas Azure Cosmos DB.

Existe um limite de armazenamento no tamanho de uma chave de partição lógica?

Sim. Tal como em Cosmos DB de hoje, o tamanho da partição lógica ainda está limitado a 20 GB. No entanto, com chaves hierárquicas de partição, a partição lógica é agora todo o caminho chave da partição. Por exemplo, se você dividido por TenantId -> UserId, um exemplo de partição lógica seria "Contoso_Alice". Utilizar subpartição significa que pode ter 20 GB de dados onde o valor chave de partição é "Contoso_Alice". A quantidade de armazenamento permitida para dados em "Contoso" é efetivamente 20 GB * número de UserIds exclusivos para o inquilino "Contoso".

Há alterações no armazenamento e limites ru/s em divisórias físicas?

N.º Tal como em Cosmos DB hoje, uma divisória física pode conter 50 GB de armazenamento e servir até 10.000 RU/s. No entanto, com chaves hierárquicas de partição, se os dados para um prefixo chave de partição particular - por exemplo, TenantId - estiverem em múltiplas divisórias físicas, subpartição significa que o total de RU/s alcançável para um único TenantId pode exceder 10.000 RU/s.

O que acontece se eu perguntar e apenas especificar uma chave de partição no "meio" do caminho?

Sua consulta ainda será uma consulta de partição cruzada. Por exemplo, se você dividir por TenantId -> UserId, e fornecer apenas o UserId na consulta, esta consulta irá abafar todas as divisórias físicas.

Para ter uma consulta de encaminhada eficiente usando o exemplo TenantId -> UserId, existem duas opções:

  • Forneça o TenantId. As consultas irão para todas as divisórias físicas que contenham os dados do TenantId.
  • Forneça tanto o TenantId como o UserId. As consultas irão para a única partição física contendo o TenantId e o UserId específico.

Tenho de criar um novo imóvel nos meus documentos para usar esta funcionalidade?

N.º Especifique a hierarquia dos caminhos-chave de partição que pretende utilizar durante a criação do contentor. Por exemplo, se você dividir por TenantId -> UserId, você não precisa criar um novo imóvel com estes valores concatenados. Certifique-se de que cada documento tem um imóvel TenantId e um proprietário UserId. Para mais informações, consulte exemplos de códigos de subpartição.

Passos seguintes