Explicando Unidades de Computação no Banco de Dados do Azure para MySQLExplaining Compute Units in Azure Database for MySQL

Este tópico explica o conceito de Unidades de Computação e o que acontece quando sua carga de trabalho atinge o máximo de Unidades de Computação.This topic explains the concept of Compute Units and what happens when your workload reaches the maximum Compute Units.

O que são unidades de computação?What are Compute Units?

Unidades de computação são uma medida de taxa de transferência de processamento da CPU que possuem disponibilidade garantida para um único Banco de Dados do Azure para o servidor MySQL.Compute Units are a measure of CPU processing throughput that is guaranteed to be available to a single Azure Database for MySQL server. Uma unidade de computação é uma medida combinada de recursos de CPU e memória.A Compute Unit is a blended measure of CPU and memory resources. Em geral, 50 Unidades de Computação equivalem a metade de um núcleo.In general, 50 Compute Units equate to half of a core. Cem Unidades de Computação equivalem a um núcleo.100 Compute Units equate to one core. 2.000 Unidades de Computação equivalem a 20 núcleos de produtividade de processamento garantida disponível para o servidor.2,000 Compute Units equate to 20 cores of guaranteed processing throughput available to your server.

A quantidade de memória por Unidade de Computação é otimizada para os tipos de preço Basic e Standard.The amount of memory per Compute Unit is optimized for the Basic and Standard pricing tiers. Dobrar as Unidades de Computação aumentando o nível de desempenho equivale a dobrar o conjunto de recursos disponíveis para esse Banco de Dados do Azure único para MySQL.Doubling the Compute Units by increasing the performance level equates to doubling the set of resource available to that single Azure Database for MySQL.

Por exemplo, um tipo Standard de 800 Unidades de Computação fornece 8 vezes mais taxa de transferência de CPU e memória que uma configuração Standard com 100 Unidades de Computação.For example, a Standard 800 Compute Units provides 8x more CPU throughput and memory than does a Standard 100 Compute Units configuration. No entanto, apesar das 100 Unidades de Computação do tipo Standard fornecerem a mesma taxa de transferência de CPU em comparação com 100 Unidades de Computação da tipo Basic, a quantidade de memória que é pré-configurada no tipo de preço Standard é o dobro da quantidade de memória configurada para o tipo de preço Basic.However, while Standard 100 Compute Units provide the same CPU throughput compared to Basic 100 Compute Units, the amount of memory that is pre-configured in the Standard pricing tier is double the amount of memory configured for the Basic pricing tier. Portanto, o tipo de preço Standard fornece um melhor desempenho de carga de trabalho e menor latência de transação que o tipo de preço Basic com as mesmas Unidades de Computação selecionadas.Therefore, the Standard pricing tier provides better workload performance and lower transaction latency than does the Basic pricing tier with the same Compute Units selected.

Como posso determinar o número de unidades de computação necessárias para a minha carga de trabalho?How can I determine the number of Compute Units needed for my workload?

Se você quiser migrar um servidor MySQL local ou em uma máquina virtual, poderá determinar o número de Unidades de Computação estimando quantos núcleos de taxa de transferência de processamento são necessários para a sua carga de trabalho.If you want to migrate an existing MySQL server running on-premises or on a virtual machine, you can determine the number of Compute Units by estimating how many cores of processing throughput your workload requires.

Se o seu servidor local ou de máquina virtual existente estiver utilizando 4 núcleos (sem contar o hiperthread da CPU), comece configurando 400 Unidades de Computação para o seu Banco de Dados do Azure para o servidor MySQL.If your existing on-premises or virtual machine server is currently using 4 cores (without counting CPU hyperthread), start by configuring 400 Compute Units for your Azure Database for MySQL server. É possível aumentar ou diminuir as unidades de computação dinamicamente conforme as suas necessidades de carga de trabalho sem praticamente nenhum tempo de inatividade do aplicativo.Compute Units can be scaled up or down dynamically depending on your workload needs, and with virtually no application downtime.

Monitorar o gráfico de métricas no Portal do Azure ou gravar comandos de CLI do Azure para medir as Unidades de Computação.Monitor the Metrics graph in the Azure portal or write Azure CLI commands to measure Compute Units. As métricas relevantes para monitorar são a porcentagem de Unidade de Computação e o limite de Unidade de Computação.Relevant metrics to monitor are the Compute Unit percentage and Compute Unit limit.

Importante

Se você achar que não está usando a capacidade máxima do IOPS de armazenamento, monitore também a utilização de Unidades de Computação.If you find storage IOPS are not fully utilized to the maximum, consider monitoring the Compute Units utilization as well. Aumentar as Unidades de Computação pode permitir maior taxa de transferência de E/S, diminuindo o afunilamento de desempenho em virtude de limites de CPU ou memória.Raising the Compute Units may allow for higher IO throughput by lessening the performance bottleneck resulting from limited CPU or memory.

O que acontece quando eu atinjo o máximo de Unidades de Computação?What happens when I hit my maximum Compute Units?

Os níveis de desempenho são calibrados e controlados para fornecer os recursos para executar sua carga de trabalho de banco de dados até os limites máximos para o tipo de preços e o nível de desempenho selecionados.Performance levels are calibrated and governed to provide resources to run your database workload up to the max limits for the selected pricing tier and performance level.

Se a sua carga de trabalho atingir os limites máximos de Unidades de Computação ou IOPS provisionado, você continuará a utilizar os recursos no nível máximo permitido, mas provavelmente suas consultas apresentarão latências maiores.If your workload reaches the maximum limits in either the Compute Units or provisioned IOPS limits, you can continue to use the resources at the maximum allowed level, but your queries are likely to encounter increased latencies. Esses limites não resultam em erros, mas apenas em uma lentidão na carga de trabalho, a menos que a lentidão se torne tão grave que as consultas atinjam o tempo limite.These limits result in a slowdown in the workload rather than errors, unless the slowdown becomes so severe that queries time out.

Se sua carga de trabalho atingir os limites máximo no número de conexões, erros explícitos serão gerados.If your workload reaches the maximum limits on number of connections, explicit errors are raised. Para saber mais sobre os limites de recursos, veja Limites no Banco de Dados do Azure para MySQL.For more information on resources limits, see Limitations in Azure Database for MySQL.

Próximas etapasNext steps

Para saber mais sobre tipos de preço, confira Tipos de preço do Banco de Dados do Azure para MySQL.For more information on pricing tiers, see Azure Database for MySQL pricing tiers.