Partilhar via


Escolher contagem de estilhaços no Azure Cosmos DB para PostgreSQL

APLICA-SE A: Azure Cosmos DB para PostgreSQL (alimentado pela extensão de banco de dados Citus para PostgreSQL)

Escolher a contagem de estilhaços para cada tabela distribuída é um equilíbrio entre a flexibilidade de ter mais fragmentos e a sobrecarga para o planejamento e a execução de consultas entre eles. Se você decidir alterar a contagem de estilhaços de uma tabela após a distribuição, poderá usar a função alter_distributed_table .

Caso de uso de SaaS multilocatário

A escolha ideal varia dependendo dos seus padrões de acesso aos dados. Por exemplo, no caso de uso do banco de dados SaaS multilocatário, recomendamos escolher entre 32 e 128 fragmentos. Para cargas de trabalho menores, digamos <100 GB, você pode começar com 32 fragmentos e para cargas de trabalho maiores, você pode escolher 64 ou 128. Esta escolha dá-lhe a margem de manobra para escalar de 32 a 128 máquinas operárias.

Caso de uso de análise em tempo real

No caso de uso do Real-Time Analytics, a contagem de estilhaços deve estar relacionada ao número total de núcleos nos trabalhadores. Para garantir o máximo paralelismo, você deve criar fragmentos suficientes em cada nó para que haja pelo menos um fragmento por núcleo de CPU. Normalmente, recomendamos a criação de um alto número de fragmentos iniciais, por exemplo, 2x ou 4x o número de núcleos de CPU atuais. Ter mais fragmentos permite dimensionamento futuro se você adicionar mais trabalhadores e núcleos de CPU.

Lembre-se de que, para cada consulta, o Azure Cosmos DB para PostgreSQL abre uma conexão de banco de dados por fragmento e que essas conexões são limitadas. Tenha cuidado para manter a contagem de estilhaços pequena o suficiente para que as consultas distribuídas muitas vezes não precisem esperar por uma conexão. Dito de outra forma, as conexões necessárias, (max concurrent queries * shard count), não devem exceder o total de conexões possíveis no sistema, (number of workers * max_connections per worker).

Próximos passos