Azure Database for MySQL のコンピューティング ユニットについてExplaining Compute Units in Azure Database for MySQL

このトピックでは、コンピューティング ユニットの概念と、ワークロードが最大コンピューティング ユニットに達した場合に何が起こるかについて説明します。This topic explains the concept of Compute Units and what happens when your workload reaches the maximum Compute Units.

コンピューティング ユニットとはWhat are Compute Units?

コンピューティング ユニットは、単一の Azure Database for MySQL サーバーで使用できることが保証される CPU 処理スループットの測定値で、Compute Units are a measure of CPU processing throughput that is guaranteed to be available to a single Azure Database for MySQL server. CPU とメモリ リソースを組み合わせた測定値です。A Compute Unit is a blended measure of CPU and memory resources. 一般に、50 個のコンピューティング ユニットは、コアの半分と同等です。In general, 50 Compute Units equate to half of a core. 100 個のコンピューティング ユニットは、1 つのコアと同等です。100 Compute Units equate to one core. 2,000 個のコンピューティング ユニットは、サーバーで使用可能な保証された処理スループットの 20 個のコアと同等です。2,000 Compute Units equate to 20 cores of guaranteed processing throughput available to your server.

コンピューティング ユニットあたりのメモリ量は、Basic および Standard 価格レベル用に最適化されています。The amount of memory per Compute Unit is optimized for the Basic and Standard pricing tiers. パフォーマンス レベルを上げてコンピューティング ユニットを 2 倍にすると、その単一の Azure Database for MySQL が利用できるリソース セットを 2 倍にした場合と同じ効果が得られますDoubling the Compute Units by increasing the performance level equates to doubling the set of resource available to that single Azure Database for MySQL.

たとえば、Standard 800 コンピューティング ユニットでは、Standard 100 コンピューティング ユニット構成よりも 8 倍の CPU スループットとメモリを実現します。For example, a Standard 800 Compute Units provides 8x more CPU throughput and memory than does a Standard 100 Compute Units configuration. ただし、Standard 100 コンピューティング ユニットの CPU スループットは、Basic 100 コンピューティング ユニットと同じですが、Standard 価格レベルで事前構成されたメモリ量は、Basic 価格レベルで構成されているメモリ量の 2 倍になります。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. そのため、Standard 価格レベルでは、同じコンピューティング ユニットが選択された Basic 価格レベルより、ワークロードのパフォーマンスが向上し、トランザクションの待ち時間が減少します。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.

ワークロードで必要とされるコンピューティング ユニットの数を判断する方法How can I determine the number of Compute Units needed for my workload?

オンプレミスまたは仮想マシンで実行されている既存の MySQL サーバーを移行する場合、ワークロードに必要な処理スループットのコア数を見積もることで、コンピューティング ユニットの数を決定できます。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.

既存のオンプレミスまたは仮想マシン サーバーで現在使用されているのが 4 コアの場合は (CPU のハイパースレッド数を除く)、まず Azure Database for MySQL サーバー用に 400 コンピューティング ユニットを構成します。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. コンピューティング ユニットのスケールアップとスケールダウンは、ワークロードのニーズに応じて動的に行うことができ、事実上、アプリケーションのダウンタイムは発生しません。Compute Units can be scaled up or down dynamically depending on your workload needs, and with virtually no application downtime.

Azure Portal でメトリック グラフを監視するか、コンピューティング ユニットを測定する Azure CLI コマンドを記述します。Monitor the Metrics graph in the Azure portal or write Azure CLI commands to measure Compute Units. 監視する関連メトリックは、コンピューティング ユニットの割合とコンピューティング ユニットの制限です。Relevant metrics to monitor are the Compute Unit percentage and Compute Unit limit.


記憶域 IOPS が最大まで完全に利用されていないことがわかった場合は、コンピューティング ユニット使用率の監視も検討してください。If you find storage IOPS are not fully utilized to the maximum, consider monitoring the Compute Units utilization as well. コンピューティング ユニットを増やすと、CPU またはメモリの制限により、パフォーマンスのボトルネックが少なくなるため、IO スループットが向上する可能性があります。Raising the Compute Units may allow for higher IO throughput by lessening the performance bottleneck resulting from limited CPU or memory.

コンピューティング ユニットが最大数に達した場合に起こることWhat happens when I hit my maximum Compute Units?

選択した価格レベルとパフォーマンス レベルの最大限度までデータベース ワークロードを実行するように、パフォーマンス レベルが調整、制御され、リソースが提供されます。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.

ワークロードがコンピューティング ユニットまたはプロビジョニング済み IOPS のいずれかの上限に達した場合、許可される最大レベルでリソースを引き続き利用できますが、待ち時間が長くなる可能性があります。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. 上限に達してもエラーにはなりませんが、ワークロードが遅くなり、遅延が深刻になった場合はクエリのタイムアウトが発生します。These limits result in a slowdown in the workload rather than errors, unless the slowdown becomes so severe that queries time out.

ワークロードが、接続数の上限に達すると、明示的なエラーが発生します。If your workload reaches the maximum limits on number of connections, explicit errors are raised. リソース制限の詳細については、「Azure Database for MySQL の制限事項」をご覧ください。For more information on resources limits, see Limitations in Azure Database for MySQL.

次のステップNext steps

価格レベルの詳細については、Azure Database for MySQL の価格レベルに関するページをご覧ください。For more information on pricing tiers, see Azure Database for MySQL pricing tiers.