SET RECOMMENDATIONS (Transact-SQL)
適用対象: Azure Synapse Analytics (専用 SQL プールのみ)
現在のセッションの Azure Synapse ディストリビューション アドバイザーを有効または無効にします。 ディストリビューション アドバイザーの使用に関する手順とサンプルについては、「Azure Synapse SQL のディストリビューション アドバイザー」を参照してください。
注意
Distribution Advisor は現在、Azure Synapse Analytics でプレビューの段階です。 プレビュー機能はテストのみを目的としているため、運用インスタンスや運用データでは使用しないでください。 Distribution Advisor はプレビュー機能のため、動作や機能が変更される可能性があります。 また、データが重要な場合は、テスト データのコピーも保持してください。
構文
SET RECOMMENDATIONS { ON | OFF };
引数
ON
現在のクライアント セッションのディストリビューション アドバイザーを有効にします。 続けて実行されるクエリはディストリビューション戦略の推奨事項のための考慮に取り入れられます。
OFF
現在のクライアント セッションのディストリビューション アドバイザーを OFF にします。 アドバイスを文字列として返します。
解説
Azure Synapse Analytics (専用 SQL プールのみ) にのみ適用されます。
ユーザー データベースに接続している場合は、このコマンドを実行します。
アクセス許可
public ロールのメンバーシップが必要です。
例
次の例では、選択した TPC-DS クエリに対するディストリビューションの推奨事項が返されます。 TPC-DS は、分析意思決定支援ワークロードの業界標準ベンチマークです。
まず、ディストリビューション アドバイザーの推奨事項収集を開始し、サンプル クエリを実行します。
-- Step 1: Turn the distribution advisor ON for the current client session
SET RECOMMENDATIONS ON;
GO
-- <insert your queries here, up to 100>
SELECT ss_store_sk, COUNT(*) FROM store_sales, store WHERE ss_store_sk = s_store_sk GROUP BY ss_store_sk;
SELECT cs_item_sk, COUNT(*) FROM catalog_sales, item WHERE cs_item_sk = i_item_sk AND i_manufact_id > 100 GROUP BY cs_item_sk;
SELECT * FROM dbo.reason;
-- Turn the distribution advisor OFF for the current client session.
SET RECOMMENDATIONS OFF;
GO
現在のセッションの動的管理ビュー sys.dm_pdw_distrib_advisor_results
から推奨事項を収集します。 次に例を示します。
-- Step 2: view advice generated for the above workload
DECLARE @sessionid nvarchar(100), @recommendation nvarchar(max);
SELECT @sessionid = SESSION_ID();
SELECT @recommendation = recommendation FROM sys.dm_pdw_distrib_advisor_results WHERE session_id = @sessionid;
SELECT @recommendation;
GO