次の方法で共有


Azure Synapse Analytics - ワークロード管理ポータル監視

この記事では、ワークロード グループのリソース使用率とクエリ アクティビティを監視する方法について説明します。 Azure メトリック エクスプローラーの構成方法の詳細については、「Azure Monitor メトリック エクスプローラーで Azure メトリック」を参照してください。 システム リソースの消費を監視する方法の詳細については、Azure Synapse Analytics 監視に関するドキュメントの「リソース使用率」セクションを参照してください。 ワークロード管理を監視するために用意されているワークロード グループ メトリックには、リソース割り当てとクエリ アクティビティの 2 つの異なるカテゴリがあります。 これらのメトリックは、ワークロード グループ別に分割およびフィルター処理できます。 これらのメトリックは、システム定義 (リソース クラス ワークロード グループ) であるか、(CREATE WORKLOAD GROUP 構文を使用してユーザーによって作成された) ユーザー定義であるかに基づいて、分割およびフィルター処理できます。

ワークロード管理メトリックの定義

ワークロード管理メトリックの詳細については、「Microsoft.Synapse/workspaces/sqlPools でサポートされているメトリック」の「SQL 専用プール - ワークロード管理」というエントリを参照してください。

監視シナリオとアクション

トラブルシューティングのためのワークロード管理メトリックの使用法を明確に示す一連のグラフ構成と、問題に対処するための関連アクションを次に示します。

使用率が低いワークロードの分離

次のワークロード グループと分類子の構成を考えてみましょう。ここでは、wgPriority という名前のワークロード グループが作成され、wcCEOPriority ワークロード分類子を使用してそれに TheCEO membername がマップされています。 wgPriority ワークロード グループには、25% のワークロードの分離が構成されています (MIN_PERCENTAGE_RESOURCE = 25)。 TheCEO によって送信される各クエリには、システム リソースの 5% が割り当てられます (REQUEST_MIN_RESOURCE_GRANT_PERCENT = 5)。

CREATE WORKLOAD GROUP wgPriority
WITH ( MIN_PERCENTAGE_RESOURCE = 25
      ,CAP_PERCENTAGE_RESOURCE = 50
      ,REQUEST_MIN_RESOURCE_GRANT_PERCENT = 5);

CREATE WORKLOAD CLASSIFIER wcCEOPriority
WITH ( WORKLOAD_GROUP = 'wgPriority'
      ,MEMBERNAME = 'TheCEO');

下のグラフは、次のように構成されています。
メトリック 1: "Effective min resource percent (有効な最小リソース割合) " (Avg 集計、blue line)
メトリック 2: "Workload group allocation by system percent (システム割合別のワークロード グループの割り当て) " (Avg 集計、purple line)
フィルター: [ワークロード グループ] = wgPriority
2 つのメトリックとフィルターがあるグラフを示すスクリーンショット。 このグラフは、25% のワークロードの分離に対して平均で 10% しか使用されていないことを示しています。 この場合、MIN_PERCENTAGE_RESOURCE パラメーター値を 10 または 15 に小さくすると、システム上の他のワークロードでリソースを使用できるようになります。

ワークロード グループのボトルネック

次のワークロード グループと分類子の構成を考えてみましょう。ここでは、wgDataAnalyst という名前のワークロード グループが作成され、wcDataAnalyst ワークロード分類子を使用してそれに DataAnalyst membername がマップされています。 wgDataAnalyst ワークロード グループには、6% のワークロードの分離 (MIN_PERCENTAGE_RESOURCE = 6) と、9% のリソースの上限 (CAP_PERCENTAGE_RESOURCE = 9) が構成されています。 DataAnalyst によって送信される各クエリには、システム リソースの 3% が割り当てられます (REQUEST_MIN_RESOURCE_GRANT_PERCENT = 3)。

CREATE WORKLOAD GROUP wgDataAnalyst  
WITH ( MIN_PERCENTAGE_RESOURCE = 6
      ,CAP_PERCENTAGE_RESOURCE = 9
      ,REQUEST_MIN_RESOURCE_GRANT_PERCENT = 3);

CREATE WORKLOAD CLASSIFIER wcDataAnalyst
WITH ( WORKLOAD_GROUP = 'wgDataAnalyst'
      ,MEMBERNAME = 'DataAnalyst');

下のグラフは、次のように構成されています。
メトリック 1: "Effective cap resource percent (有効な上限リソース割合) " (Avg 集計、blue line)
メトリック 2: "Workload group allocation by cap resource percent (上限リソース割合別のワークロード グループの割り当て) " (Avg 集計、purple line)
メトリック 3: "Workload group queued queries (ワークロード グループのキューに登録されたクエリ) " (Sum 集計、turquoise line)
フィルター: [ワークロード グループ] = wgDataAnalyst
3 つのメトリックとフィルターがあるグラフを示すスクリーンショット。 このグラフは、9% のリソースの上限に対してこのワークロード グループの使用率が 90% を超えていることを示しています ("上限リソースの割合によるワークロード グループの割り当てメトリック" より)。 "ワークロード グループのキューに登録されたクエリのメトリック" に示されているように、クエリのキュー登録は安定して存在します。 この場合、CAP_PERCENTAGE_RESOURCE を 9% を超える値まで増加させることで、より多くのクエリを同時に実行できるようになります。 CAP_PERCENTAGE_RESOURCE を大きくする場合は、使用可能なリソースが十分にあり、他のワークロード グループによって分離されていないことが前提となります。 "Effective cap resource percent (有効な上限リソース割合) メトリック" を確認して、上限が引き上げられていることを確認します。 より大きいスループットが必要な場合は、REQUEST_MIN_RESOURCE_GRANT_PERCENT3 より大きい値に増加させることも検討してください。 REQUEST_MIN_RESOURCE_GRANT_PERCENT を大きくすると、クエリの実行速度が向上する可能性があります。

次のステップ