web-dev-qa-db-ja.com

Azure SQL Databaseの「DTUパーセンテージ」メトリック

新しい Azure SQLデータベース層構造 では、データベースの「DTU」の使用状況を監視して、別の層にアップグレードするかダウングレードするかを知ることが重要と思われます。

Azure SQL Databaseサービス層とパフォーマンスレベル を読み取る場合、CPU、データ、およびログの使用率の監視についてのみ説明します。

ただし、新しいメトリックを追加する場合、DTUパーセンテージオプションもあります。

Add Database Metrics

これについてはオンラインで見つけることができません。これは本質的に他のDTU関連のメトリックの要約ですか?

74
Dave New

DTUは、サービス層のパフォーマンスの測定単位であり、いくつかのデータベース特性の要約です。各サービス層には、ある層のパフォーマンスレベルを別の層と比較する簡単な方法として、一定数のDTUが割り当てられています。

Database Throughput Unit(DTU): DTUは、Basic、Standard、およびプレミアムデータベース。 DTUは、CPU、メモリ、読み取り、および書き込みの混合測定に基づいています。 DTUが増加すると、パフォーマンスレベルによって提供される電力が増加します。たとえば、5 DTUのパフォーマンスレベルには、1 DTUのパフォーマンスレベルの5倍の電力があります。最大DTUクォータは各サーバーに適用されます。

DTUクォータは、個々のデータベースではなくサーバーに適用され、各サーバーには最大1600 DTUがあります。 DTU%は、特定のデータベースが使用しているユニットの割合であり、この数はサービス層のDTU評価の100%を超える可能性があるようです(サーバーの制限まで想定しています)。この割合の数値は、適切なサービス層の選択に役立つように設計されています。

この発表 の下から下へ:

たとえば、DTUの消費量が80%の値を示している場合、S2データベースが持つ制限の80%の割合でDTUを消費していることを示しています。このビューで100%を超える値が表示される場合、S2より大きいパフォーマンス層が必要であることを意味します。

例として、300%のパーセント値が表示されているとします。これは、S2で利用可能なリソースの3倍のリソースを使用していることを示しています。妥当な開始サイズを決定するには、S2で使用可能なDTU(50 DTU)と次に高いサイズ(P1 = 100 DTU、またはS2の200%、P2 = 200 DTUまたはS2の400%)を比較します。 S2の300%にいるので、P2から始めて再テストすることをお勧めします。

87
embedded.kyle

コメントするにはまだクールではありませんが、@ vladislavのコメントに関しては、元の記事はかなり古いものでした。これは、OPの質問に答えるのに役立つDTUに関する更新ドキュメントです。

https://docs.Microsoft.com/en-us/Azure/sql-database/sql-database-what-is-a-dt

13
Jeff Patton

このドキュメントから、このDTUパーセントは次のクエリによって決定されます。

SELECT end_time,   
  (SELECT Max(v)    
   FROM (VALUES (avg_cpu_percent), (avg_data_io_percent), 
(avg_log_write_percent)) AS    
   value(v)) AS [avg_DTU_percent]   
FROM sys.dm_db_resource_stats;  

avg_cpu_percentavg_data_io_percent、およびavg_log_write_percentの最大値のように見えます

参照:

https://docs.Microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-db-resource-stats-Azure-sql-database

11
jyong