次の方法で共有


クイックスタート: Azure Synapse Analytics の専用 SQL プール (以前の SQL DW) に使用されるコンピューティングを T-SQL を使用してスケーリングする

T-SQL と SQL Server Management Studio (SSMS) を使用して、専用 SQL プールのコンピューティングをスケーリングします。 コンピューティングをスケールアウトしてパフォーマンスを向上させます。または、コンピューティングをスケールバックしてコストを削減します。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料の Azure アカウントを作成してください。

Note

この記事は、Azure Synapse Analytics ワークスペースで作成された専用 SQL プール、専用 SQL プール (旧称 SQL DW)、接続されたワークスペース内の専用 SQL プール (旧称 SQL DW) に適用されます。

開始する前に

最新バージョンの SQL Server Management Studio (SSMS) をダウンロードしてインストールします。

必要に応じて専用 SQL プールを作成する

このクイックスタートは、専用 SQL プールが既に用意されていることを前提としています。

必要に応じて、Azure Synapse ワークスペースに新しい専用 SQL プールを作成することをお勧めします。 Azure Synapse ワークスペースを作成し、Synapse Studio を使用して専用 SQL プールを作成してください。 または、「クイックスタート: 作成と接続 - ポータル」を使用して mySampleDataWarehouse という名前の専用 SQL プール (旧称 SQL DW) を作成することにより、従来型の専用 SQL プール (旧称 SQL DW) を作成することもできます。

ファイアウォール規則があり、SQL Server Management Studio (SSMS) 内から専用 SQL プールに接続できることを確認します。

サーバー管理者としてサーバーに接続する

このセクションでは、SQL Server Management Studio (SSMS) を使って、Azure SQL Server に対する接続を確立します。

  1. SQL Server Management Studio を開きます。

  2. [サーバーへの接続] ダイアログ ボックスで、次の情報を入力します。

    設定 提案された値 説明
    サーバーの種類 データベース エンジン この値は必須です
    サーバー名 完全修飾サーバー名 例: mySampleDataWarehouseservername.database.windows.net
    認証 SQL Server 認証 このチュートリアルで構成した認証の種類は "SQL 認証" のみです。
    ログイン サーバー管理者アカウント サーバーの作成時に指定したアカウントです。
    Password サーバー管理者アカウントのパスワード サーバーの作成時に指定したパスワードです。

    SQL Server Management Studio から専用 SQL プールに接続するスクリーンショット。

  3. [接続] を選択します。 SSMS で [オブジェクト エクスプローラー] ウィンドウが開きます。

  4. オブジェクト エクスプローラーで、 [データベース] を展開します。 mySampleDataWarehouse を展開して、新しいデータベースのオブジェクトを表示します。

    データベース オブジェクトが表示されている SQL Server Management Studio オブジェクト エクスプローラーのスクリーンショット。

サービス目標の表示

サービス目標設定には、専用 SQL プール (以前の SQL DW) の Data Warehouse ユニットの数が含まれています。

専用 SQL プール (以前の SQL DW) に使用されている現在の Data Warehouse ユニットを確認するには、次の手順に従います。

  1. mySampleDataWarehouseservername.database.windows.net への接続で、System Databases を展開します。

  2. master システム データベースを右クリックし、[新しいクエリ] を選択します。 新しいクエリ ウィンドウが開きます。

  3. sys.database_service_objectives 動的管理ビューから選択するには、次のクエリを実行します。

    SELECT
        db.name AS [Database]
    ,    ds.edition AS [Edition]
    ,    ds.service_objective AS [Service Objective]
    FROM
         sys.database_service_objectives ds
    JOIN
        sys.databases db ON ds.database_id = db.database_id
    WHERE
        db.name = 'mySampleDataWarehouse';
    
  4. 次の結果では、mySampleDataWarehouse のサービス目標が DW400 であることが Service Objective 列に示されています。

    [サービスの目標] 列に現在の DWU が示されている、SQL Server Management Studio 結果セットのスクリーンショット。

コンピューティングのスケーリング

専用 SQL プール (以前の SQL DW) では、Data Warehouse ユニットを調整してコンピューティング リソースを増減させることができます。 「作成と接続 - ポータル」では、mySampleDataWarehouse を作成し、400 DWU で初期化しました。 次の手順では、mySampleDataWarehouse の DWU を調整します。

Data Warehouse ユニットを変更するには:

  1. master システム データベースを右クリックし、[新しいクエリ] を選択します。

  2. ALTER DATABASE T-SQL ステートメントを使用して、サービス目標を変更します。 次のクエリを実行して、サービス目標を DW300 に変更します。

    ALTER DATABASE mySampleDataWarehouse
    MODIFY (SERVICE_OBJECTIVE = 'DW300c');
    

スケール変更要求の監視

以前の変更要求の進行状況を確認するには、WAITFORDELAY T-SQL 構文を使用して sys.dm_operation_status 動的管理ビュー (DMV) をポーリングします。

サービス オブジェクトの変更状態をポーリングするには:

  1. master システム データベースを右クリックし、[新しいクエリ] を選択します。

  2. 次のクエリを実行して、sys.dm_operation_status DMV をポーリングします。

    WHILE
    (
        SELECT TOP 1 state_desc
        FROM sys.dm_operation_status
        WHERE
            1=1
            AND resource_type_desc = 'Database'
            AND major_resource_id = 'mySampleDataWarehouse'
            AND operation = 'ALTER DATABASE'
        ORDER BY
            start_time DESC
    ) = 'IN_PROGRESS'
    BEGIN
        RAISERROR('Scale operation in progress',0,0) WITH NOWAIT;
        WAITFOR DELAY '00:00:05';
    END
    PRINT 'Complete';
    
  3. 結果の出力には、状態のポーリングのログが表示されます。

    専用 SQL プール操作の状態を監視するクエリの出力を示している、SQL Server Management Studio のスクリーンショット。

専用 SQL プール (以前の SQL DW) の状態の確認

専用 SQL プール (以前の SQL DW) が一時停止すると、T-SQL で接続することはできません。 専用 SQL プール (以前の SQL DW) の現在の状態を確認する場合は、PowerShell コマンドレットを使用できます。 例については、PowerShell を使用して専用 SQL プール (以前の SQL DW) の状態を確認する方法に関するセクションを参照してください。

操作の状態の確認

専用 SQL プール (以前の SQL DW) に対するさまざまな管理操作に関する情報を返すには、sys.dm_operation_status DMV で次のクエリを実行します。 たとえば、操作と操作の状態 (IN_PROGRESS または COMPLETED) が返されます。

SELECT *
FROM
    sys.dm_operation_status
WHERE
    resource_type_desc = 'Database'
AND
    major_resource_id = 'mySampleDataWarehouse';

次のステップ

ここでは、専用 SQL プール (以前の SQL DW) の計算をスケーリングする方法について学習しました。 Azure Synapse Analytics に関する理解をさらに深めるために、データの読み込みに関するチュートリアルに進んでください。