Como escolher entre o débito aprovisionado padrão (manual) e o dimensionamento automático

APLICA-SE A: NoSQL MongoDB Cassandra Gremlin Tabela

O Azure Cosmos DB suporta dois tipos ou ofertas de débito aprovisionado: standard (manual) e dimensionamento automático. Ambos os tipos de débito são adequados para cargas de trabalho fundamentais para a atividade que requerem elevado desempenho e dimensionamento e são apoiados pelos mesmos SLAs do Azure Cosmos DB em débito, disponibilidade, latência e consistência.

Este artigo descreve como escolher entre o débito aprovisionado padrão (manual) e o dimensionamento automático para a carga de trabalho.

Descrição geral dos tipos de débito aprovisionados

Antes de analisar a diferença entre o dimensionamento padrão (manual) e o dimensionamento automático, é importante compreender primeiro como funciona o débito aprovisionado no Azure Cosmos DB.

Quando utiliza o débito aprovisionado, define o débito, medido em unidades de pedido por segundo (RU/s) necessárias para a carga de trabalho. O serviço aprovisiona a capacidade necessária para suportar os requisitos de débito. As operações de base de dados no serviço, como leituras, escritas e consultas, consomem alguma quantidade de unidades de pedido (RUs). Saiba mais sobre as unidades de pedido.

A tabela seguinte mostra uma comparação de alto nível entre o dimensionamento padrão (manual) e o dimensionamento automático.

Description Standard (manual) Dimensionamento Automático
Mais adequado para Cargas de trabalho com tráfego estável ou previsível Cargas de trabalho com tráfego variável ou imprevisível. Veja casos de utilização do dimensionamento automático.
Como funciona Aprovisiona uma quantidade definida de RU/s que é estática ao longo do T tempo, a menos que as altere manualmente. A cada segundo, pode utilizar até débito T de RU/s.

Por exemplo, se definir 400 RU/s padrão (manual), o débito permanecerá em 400 RU/s.
Defina as RU/s Tmax mais elevadas ou máximas que não pretende que o sistema exceda. O sistema dimensiona automaticamente o débito T de forma a que 0.1* Tmax <= T <= Tmax.

Por exemplo, se definir o dimensionamento automático máximo de RU/s de 4000 RU/s, o sistema dimensionará entre 400 e 4000 RU/s.
Quando Utilizar Quer gerir manualmente a capacidade de débito (RU/s) e dimensionar-se manualmente.

Tem uma utilização elevada e consistente de RU/s aprovisionadas. De todas as horas num mês, se definir RU/s T aprovisionadas e utilizar o montante total para 66% das horas ou mais, estima-se que irá poupar com RU/s aprovisionadas (manuais) padrão.

Isto baseia-se numa comparação entre a definição T padrão (manual) e a mesma quantidade Tmax no dimensionamento automático.
Quer que o Azure Cosmos DB faça a gestão da capacidade de débito (RU/s) e do dimensionamento, com base na utilização.

Tem uma utilização de RU/s que é variável ou difícil de prever. De todas as horas num mês, se definir o dimensionamento automático máximo de RU/s Tmax e utilizar o montante Tmax total para 66% das horas ou menos, estima-se que irá poupar com o dimensionamento automático.

Isto baseia-se numa comparação entre definir o dimensionamento Tmax automático e a mesma quantidade T no débito padrão (manual).
Modelo de faturação A faturação é efetuada por hora para as RU/s aprovisionadas, independentemente do número de RUs consumidas.

Exemplo:
  • Aprovisionar 400 RU/s
  • Hora 1: sem pedidos
  • Hora 2: 400 RU/s de pedidos


  • Para ambas as horas 1 e 2, ser-lhe-ão cobradas 400 RU/s para ambas as horas às tarifas padrão (manual).
    A faturação é efetuada por hora, para as RU/s mais elevadas para as que o sistema dimensionou durante a hora.

    Exemplo:
  • Aprovisionar RU/s máximas de dimensionamento automático de 4000 RU/s (dimensiona entre 400 e 4000 RU/s)
  • Hora 1: o sistema aumentou verticalmente para o valor mais alto de 3500 RU/s
  • Hora 2: o sistema reduziu verticalmente para um mínimo de 400 RU/s (sempre 10% de Tmax), devido a nenhuma utilização


  • Ser-lhe-á faturado 3500 RU/s na hora 1 e 400 RU/s na hora 2 às taxas de débito aprovisionado de dimensionamento automático. A taxa de dimensionamento automático por RU/s é de 1,5 * a taxa padrão (manual).
    O que acontece se exceder as RU/s aprovisionadas As RU/s permanecem estáticas no que é aprovisionado. Todos os pedidos que consomem para além das RUs aprovisionadas num segundo serão limitados pela taxa, com uma resposta que recomenda um tempo para aguardar antes de tentar novamente. Pode aumentar ou diminuir manualmente as RU/s, se necessário. O sistema dimensionará as RU/s para o dimensionamento automático máximo de RU/s. Todos os pedidos que consomem além das RU/s máximas de dimensionamento automático num segundo serão limitados pela taxa, com uma resposta que recomenda um tempo para aguardar antes de tentar novamente.

    Compreender os padrões de tráfego

    Novas aplicações

    Se estiver a criar uma nova aplicação e ainda não souber o seu padrão de tráfego, poderá querer começar no ponto de entrada RU/s (ou ru/s mínimas) para evitar o aprovisionamento excessivo no início. Em alternativa, se tiver uma pequena aplicação que não precisa de um dimensionamento elevado, poderá querer aprovisionar apenas o ponto de entrada mínimo RU/s para otimizar o custo. Para pequenas aplicações com tráfego de baixa espera, também pode considerar o modo de capacidade sem servidor .

    Quer planeie utilizar o dimensionamento standard (manual) ou automático, eis o que deve considerar:

    Se aprovisionar RU/s padrão (manual) no ponto de entrada de 400 RU/s, não poderá consumir mais de 400 RU/s, a menos que altere manualmente o débito. Ser-lhe-á faturado 400 RU/s à taxa de débito aprovisionado (manual) padrão, por hora.

    Se aprovisionar o débito de dimensionamento automático com RU/s máximas de 4000 RU/s, o recurso será dimensionado entre 400 e 4000 RU/s. Uma vez que a taxa de faturação do débito de dimensionamento automático por RU/s é de 1,5x da taxa padrão (manual), durante horas em que o sistema tenha reduzido verticalmente para o mínimo de 400 RU/s, a sua fatura será superior a 400 RU/s manualmente. No entanto, com o dimensionamento automático, em qualquer altura, se o tráfego da aplicação aumentar, pode consumir até 4000 RU/s sem ser necessária qualquer ação do utilizador. Em geral, deve ponderar a vantagem de poder consumir até ao máximo de RU/s em qualquer altura com a taxa de dimensionamento automático de 1,5x.

    Utilize a calculadora de capacidade do Azure Cosmos DB para estimar os requisitos de débito.

    Aplicações existentes

    Se tiver uma aplicação existente a utilizar o débito aprovisionado padrão (manual), pode utilizar as métricas do Azure Monitor para determinar se o padrão de tráfego é adequado para o dimensionamento automático.

    Primeiro, localize a métrica de consumo normalizado da unidade de pedido da base de dados ou do contentor. A utilização normalizada é uma medida de quanto está a utilizar atualmente o débito aprovisionado (manual) padrão. Quanto mais próximo for o número de 100%, mais estará a utilizar totalmente as RU/s aprovisionadas. Saiba mais sobre a métrica.

    Em seguida, determine como a utilização normalizada varia ao longo do tempo. Encontre a utilização normalizada mais elevada para cada hora. Em seguida, calcule a utilização normalizada média em todas as horas. Se vir que a utilização média é inferior a 66%, considere ativar o Dimensionamento automático na base de dados ou no contentor. Em contrapartida, se a utilização média for superior a 66%, recomenda-se que permaneça no débito aprovisionado padrão (manual).

    Dica

    Se a sua conta estiver configurada para utilizar escritas em várias regiões e tiver mais do que uma região, a taxa por 100 RU/s é a mesma para o dimensionamento manual e automático. Isto significa que a ativação do dimensionamento automático não implica custos adicionais, independentemente da utilização. Como resultado, é sempre recomendado utilizar o dimensionamento automático com escritas de várias regiões quando tiver mais do que uma região, para tirar partido das poupanças de pagar apenas pelas RU/s para as quais a sua aplicação é dimensionada. Se tiver escritas em várias regiões e uma região, utilize a utilização média para determinar se o dimensionamento automático resultará numa poupança de custos.

    Exemplos

    Vamos analisar duas cargas de trabalho de exemplo diferentes e analisar se são adequadas para débito manual ou de dimensionamento automático. Para ilustrar a abordagem geral, vamos analisar três horas do histórico para determinar a diferença de custos entre utilizar o dimensionamento manual e automático. Para cargas de trabalho de produção, é recomendado utilizar 7 a 30 dias do histórico (ou mais, se disponível) para estabelecer um padrão de utilização de RU/s.

    Nota

    Todos os exemplos apresentados neste documento baseiam-se no preço de uma conta do Azure Cosmos DB implementada numa região não governamental nos EUA. Os preços e cálculos variam consoante a região que estiver a utilizar. Veja a página de preços do Azure Cosmos DB para obter as informações de preços mais recentes.

    Pressupostos:

    • Suponha que atualmente temos um débito manual de 30 000 RU/s.
    • A nossa região está configurada com escritas de região única, com uma região. Se tivéssemos várias regiões, multiplicaríamos o custo por hora pelo número de regiões.
    • Utilize as taxas de preços públicas para o débito manual (0,008 USD por 100 RU/s por hora) e o débito de dimensionamento automático (0,012 USD por 100 RU/s por hora) em contas de escrita de região única. Veja a página de preços para obter detalhes.

    Em primeiro lugar, analisamos o consumo normalizado de RUs. Esta carga de trabalho tem tráfego variável, com um consumo normalizado de RUs entre 6% e 100%. Existem picos ocasionais a 100% que são difíceis de prever, mas muitas horas com baixa utilização.

    Carga de trabalho com tráfego variável – consumo normalizado de RUs entre 6% e 100% para todas as horas

    Vamos comparar o custo do aprovisionamento de 30 000 RU/s de débito manual, em comparação com a definição de RU/s máximas de dimensionamento automático para 30 000 (dimensiona entre 3000 e 30 000 RU/s).

    Agora, vamos analisar o histórico. Suponha que temos a utilização descrita na tabela seguinte. A utilização média nestas três horas é de 39%. Uma vez que o consumo normalizado de RUs é inferior a 66%, economizamos com o dimensionamento automático.

    Tenha em atenção que na hora 1, quando houver 6% de utilização, o dimensionamento automático cobrará RU/s por 10% das RU/s máximas, que é o mínimo por hora. Embora o custo do dimensionamento automático possa ser superior ao débito manual em determinadas horas, desde que a utilização média seja inferior a 66% em todas as horas, o dimensionamento automático será globalmente mais barato.

    Período de tempo Utilização RU/s de dimensionamento automático faturado Opção 1: 30 000 RU/s manuais Opção 2: Dimensionamento automático entre 3000 e 30 000 RU/s
    Hora 1 6% 3.000 30 000 * 0,008 / 100 = $2,40 3000 * 0,012 / 100 = $0,36
    Hora 2 100% 30,000 30 000 * 0,008 / 100 = $2,40 30 000 * 0,012 / 100 = $3,60
    Hora 3 11% 3300 30 000 * 0,008 / 100 = $2,40 3300 * 0,012 / 100 = $0,40
    Total $7,20 $4,36 (39% de poupança)

    Esta carga de trabalho tem tráfego constante, com um consumo normalizado de RUs entre 72% e 100%. Com 30 000 RU/s aprovisionadas, significa que estamos a consumir entre 21 600 e 30 000 RU/s.

    Carga de trabalho com tráfego estável – consumo normalizado de RUs entre 72% e 100% para todas as horas

    Vamos comparar o custo do aprovisionamento de 30 000 RU/s de débito manual, em comparação com a definição de RU/s máximas de dimensionamento automático para 30 000 (dimensiona entre 3000 e 30 000 RU/s).

    Suponha que temos o histórico de utilização, conforme descrito na tabela. A nossa utilização média nestas três horas é de 88%. Uma vez que o consumo normalizado de RUs é superior a 66%, economizamos com o débito manual.

    Em geral, se a utilização média em todas as 730 horas num mês for superior a 66%, iremos poupar com o débito manual.

    Período de tempo Utilização RU/s de dimensionamento automático faturado Opção 1: 30 000 RU/s manuais Opção 2: Dimensionamento automático entre 3000 e 30 000 RU/s
    Hora 1 72% 21,600 30 000 * 0,008 / 100 = $2,40 21600 * 0,012 / 100 = $2,59
    Hora 2 93% 28,000 30 000 * 0,008 / 100 = $2,40 28 000 * 0,012 / 100 = $3,36
    Hora 3 100% 30,000 30 000 * 0,008 / 100 = $2,40 30 000 * 0,012 / 100 = $3,60
    Total $7,20 $9,55

    Dica

    Com o débito padrão (manual), pode utilizar a métrica de utilização normalizada para estimar as RU/s reais que poderá utilizar se mudar para o dimensionamento automático. Multiplique a utilização normalizada num ponto no tempo pelas RU/s padrão (manuais) atualmente aprovisionadas. Por exemplo, se tiver aprovisionado 5000 RU/s e a utilização normalizada for de 90%, a utilização de RU/s é de 0,9 * 5000 = 4500 RU/s. Se vir que o seu padrão de tráfego é variável, mas acabou ou está aprovisionado, poderá querer ativar o dimensionamento automático e, em seguida, alterar a definição de RU/s máximas de dimensionamento automático em conformidade.

    Como calcular a utilização média

    As faturas de dimensionamento automático das RU/s mais elevadas foram dimensionadas para numa hora. Ao analisar o consumo normalizado de RUs ao longo do tempo, é importante utilizar a utilização mais elevada por hora ao calcular a média.

    Para calcular a média da utilização mais elevada em todas as horas:

    1. Defina a Agregação na métrica Consumo de RUs Não Dimensionado como Máx.
    2. Selecione a Granularidade da hora para 1 hora.
    3. Navegue para Opções de gráfico.
    4. Selecione a opção de gráfico de barras.
    5. Em Partilhar, selecione a opção Transferir para o Excel . A partir da folha de cálculo gerada, calcule a utilização média em todas as horas.

    Para ver o consumo normalizado de RUs por hora, 1) Selecione a granularidade da hora para 1 hora; 2) Editar definições de gráfico; 3) Selecione a opção de gráfico de barras; 4) Em Partilhar, selecione a opção Transferir para o Excel para calcular a média em todas as horas.

    Medir e monitorizar a utilização

    Ao longo do tempo, depois de escolher o tipo de débito, deve monitorizar a sua aplicação e fazer ajustes conforme necessário.

    Ao utilizar o dimensionamento automático, utilize o Azure Monitor para ver o dimensionamento automático máximo de RU/s aprovisionado (Débito Máximo de Dimensionamento Automático) e as RU/s para as quais o sistema está atualmente dimensionado (Débito Aprovisionado). Segue-se um exemplo de uma carga de trabalho variável ou imprevisível com o dimensionamento automático. Tenha em atenção que quando não existe tráfego, o sistema dimensiona as RU/s para o mínimo de 10% das RU/s máximas, que neste caso são 5000 RU/s e 50 000 RU/s, respetivamente.

    Exemplo de carga de trabalho a utilizar o dimensionamento automático, com ru/s máximas de dimensionamento automático de 50 000 RU/s e débito entre 5000 e 50 000 RU/s

    Nota

    Quando utiliza o débito aprovisionado padrão (manual), a métrica Débito Aprovisionado refere-se ao que definiu como utilizador. Quando utiliza o débito de dimensionamento automático, esta métrica refere-se às RU/s para as qual o sistema está atualmente dimensionado.

    Passos seguintes