すべてのプロダクト
Search
ドキュメントセンター

DataWorks:コンポーネント管理

最終更新日:Feb 04, 2026

スクリプトテンプレートは、SQL プロセスを抽象化してコードの再利用を容易にします。スクリプトテンプレートを使用する前に、ビジネス要件を満たすテンプレートを作成する必要があります。本トピックでは、DataStudio のスクリプトテンプレート管理インターフェイスでスクリプトテンプレートを作成・共有・アップグレードする方法と、参照レコードを確認する方法について説明します。

コンポーネントの概要

多くの MaxCompute ビジネスシナリオでは、類似した SQL プロセスが存在します。これらのプロセスは、スキーマが同一またはデータの型が互換性のある入力テーブルおよび出力テーブルを使用しますが、テーブル名は異なります。コードを再利用するために、開発者はそのような SQL プロセスを SQL スクリプトテンプレートとして抽象化できます。このテンプレートでは、変動する入力テーブルを表すために入力パラメーターを、変動する出力テーブルを表すために出力パラメーターを使用します。

SQL スクリプトテンプレートノードを使用する際には、リストからビジネスプロセスに合致するテンプレートを選択し、コードを編集せずに具体的な入力テーブルおよび出力テーブルを設定できます。これにより、新しい SQL スクリプトテンプレートノードが生成され、開発効率が大幅に向上し、重複作業を回避できます。SQL スクリプトテンプレートノードが生成された後は、標準の SQL ノードと同様に公開およびスケジュール設定が可能です。

説明

現時点では、MaxCompute コンピュートエンジンのみが SQL スクリプトテンプレートをサポートしています。

注意事項

  • エディション要件: DataWorks Standard Edition 以降でのみサポートされています。

  • 権限要件: スクリプトテンプレートを作成および使用するには、DataWorks ワークスペースにおいて 開発 権限が必要です。詳細については、「ワークスペースレベルのモジュール権限制御」をご参照ください。

コンポーネントの種類

コンポーネントは、ワークスペース固有スクリプトテンプレートまたは公開コンポーネントのいずれかに分類されます。この分類は、コンポーネント開発者が作成時に設定できます。

  • ワークスペース SQL スクリプトテンプレート: コンポーネントが公開されると、デフォルトでその DataWorks ワークスペースのメンバーのみが利用可能になります。コンポーネントを使用するには、当該ワークスペースのメンバーである必要があります。詳細については、「ワークスペースレベルのモジュール権限制御」をご参照ください。

  • 公開 SQL スクリプトテンプレート: 開発者は、公開 SQL スクリプトテンプレート エリアから汎用的なスクリプトテンプレートをテナント全体に公開できます。テンプレートが公開されると、テナント内のすべてのユーザーがこの公開スクリプトテンプレートを利用可能になります。

コンポーネント管理へのアクセス

  1. DataWorks コンソールの ワークスペース ページに移動します。上部のナビゲーションバーで目的のリージョンを選択し、目的のワークスペースを見つけ、操作 列で ショートカット > Data Studio を選択します。

  2. 左側のナビゲーションウィンドウで image をクリックし、スクリプトテンプレート管理ページに移動します。

コンポーネントの使用フロー

ステップ 1:コンポーネントの定義

開発者は、Data Studio の SQL スクリプトテンプレート ページで、プロシージャ本体のコードおよびその入力パラメーターと出力パラメーターを定義できます。抽象的な SQL プロセスを記述することで、入力パラメーターを使用して指定された入力テーブルを処理し、出力パラメーターで表される価値ある出力テーブルを生成できます。コード内の入力パラメーターおよび出力パラメーターの形式は @@{parameter_name} です。

  1. ワークスペース固有スクリプトテンプレート管理エリアで、image をクリックし、SQL スクリプトテンプレートの作成 を選択します。また、スクリプトテンプレートのフォルダ構成を計画するために、最初に ディレクトリの作成 を選択し、フォルダを右クリックして SQL スクリプトテンプレートの作成 を選択することもできます。

    説明
    • このワークスペースのメンバーが作成したコンポーネントは、ワークスペース SQL スクリプトテンプレート 配下で管理されます。

    • 公開済みのコンポーネントは、公開 SQL スクリプトテンプレート 配下に表示されます。

  2. コンポーネント情報を設定します。

    1. プロシージャ本体を設定します。

      プロシージャ本体は、スクリプトテンプレートの実装コードです。抽象的な SQL コードを記述し、@@{parameter_name} 形式を使用して入力パラメーターおよび出力パラメーターを含めることで、指定された入力テーブルを入力パラメーターで処理し、価値ある出力テーブルを生成できます。後ほどスクリプトテンプレートを使用する際には、異なる入力パラメーターおよび出力パラメーターを設定するだけで、正しい実行可能な SQL コードを生成できます。

    2. 入力パラメーターを設定します。

      コンポーネント編集ページの右側で、[パラメーター設定] をクリックします。[入力パラメーター] の右側にある image アイコンをクリックして、プロシージャ本文の入力パラメーターを定義します。入力パラメーターを [テーブル] または [文字列] として指定できます。

      説明

      スクリプトテンプレートエディターページの上部にある「I/O パラメーターの解析」をクリックすることもできます。この機能により、コードから自動的に入力パラメーターおよび出力パラメーターが検出されます。その後、以下の表に従ってパラメーターを設定できます。

      テーブル

      適用シナリオ

      スクリプトテンプレートがソーステーブルのデータを処理して、単一かつ定数カテゴリの出力結果を生成する場合に使用します。

      設定パラメーターと説明

      • 主要パラメーター: パラメーター定義

      • 設定説明: このパラメーターは、フィールド名、データの型、説明を含むテキスト形式で入力テーブルのスキーマを定義します。この定義により、ユーザーがスクリプトテンプレートを使用する際に、設定する入力テーブルがここで定義されたものと同じフィールド数および互換性のあるデータの型を持つ必要があることを示します。これにより、設定された入力テーブルと定義された入力テーブルとの間でフィールド数の不一致やデータの型の非互換性による実行時エラーを防止できます。

        説明

        この定義は参考情報であり、入力パラメーターの設定時のヒントを提供するもので、即時のチェックはトリガーされません。

      • 例:

        以下の形式でのパラメーター定義を推奨します。

        Field1_Name Field1_Type Field1_Comment 
        Field2_Name Field2_Type Field2_Comment 
        ...
        Fieldn_Name Fieldn_Type Fieldn_Comment

        サンプル設定:

        area_id STRING 'area ID' 
        city_id STRING 'city ID' 
        order_amt DOUBLE 'Order amount' 

      文字列

      適用シナリオ

      ソーステーブルのデータを処理する際に、入力パラメーターの値を変数で制御する場合に使用します。

      設定パラメーターと説明

      • 主要パラメーター: デフォルト値

      • 設定説明: このパラメータータイプに対してデフォルト値を設定できます。デフォルト値が設定されている場合、スクリプトテンプレートの実行時にその値が使用されます。

      • 例:

        • シナリオ 1:スクリプトテンプレートの出力テーブルに、各エリアの上位 N 都市の売上を表示する必要があります。N をスクリプトテンプレートの入力パラメーターとして設定し、文字列パラメーターで N の値を制御できます。

        • シナリオ 2:スクリプトテンプレートの出力テーブルに、特定の省の売上合計を表示する必要があります。省を文字列パラメーターとしてスクリプトテンプレートの入力パラメーターに設定し、異なる省を指定することで、対応する省の売上データを取得できます。

    3. 出力パラメーターを設定します。

      プロシージャ本体の出力パラメーター(スクリプトテンプレートの最終的な出力テーブルを表す)を定義します。他のユーザーがスクリプトテンプレートをより簡単に使用できるように、出力パラメーター設定で出力テーブルのスキーマを指定できます。

      コンポーネント編集ページの右側で、[パラメーター設定] をクリックします。[出力パラメーター] の右側にある image アイコンをクリックして、プロシージャ本文の出力パラメーターを定義します。

      説明

      スクリプトテンプレートエディターページの上部にある「I/O パラメーターの解析」をクリックすることもできます。この機能により、コードから自動的に入力パラメーターおよび出力パラメーターが検出されます。その後、以下の表に従ってパラメーターを設定できます。

      • 主要パラメーター: パラメーター定義。

      • 設定説明: このパラメーターは、フィールド名、データの型、説明を含むテキスト形式で出力テーブルのスキーマを定義します。この定義により、ユーザーがスクリプトテンプレートを使用する際に、設定する出力テーブルがここで定義されたものと同じフィールド数および互換性のあるデータの型を持つ必要があることを示します。これにより、設定された出力テーブルと定義された出力テーブルとの間でフィールド数の不一致やデータの型の非互換性による実行時エラーを防止できます。

        説明

        この定義は参考情報であり、出力パラメーターの設定時のヒントを提供するもので、即時のチェックはトリガーされません。

      • 例:

        以下の形式でのパラメーター定義を推奨します。

        Field1_Name Field1_Type Field1_Comment 
        Field2_Name Field2_Type Field2_Comment 
        ...
        Fieldn_Name Fieldn_Type Fieldn_Comment

        処理要件に応じて、出力パラメーター定義にランクや売上合計などの集計結果フィールドを追加することもできます。例:

        area_id STRING 'area ID' 
        city_id STRING 'city ID' 
        order_amt DOUBLE 'Order amount'
        rank BIGINT 'rank'
  3. 保存 および コミット をクリックします。

    スクリプトテンプレートが作成された後は、SQL スクリプトテンプレートノードでこれを参照して、ビジネス向けの目的のテーブルを迅速に生成できます。詳細については、「ステップ 2:スクリプトテンプレートの参照」をご参照ください。

  4. (任意)SQL スクリプトテンプレートを公開 をクリックして、汎用的なスクリプトテンプレートをテナント全体に公開します。公開 SQL スクリプトテンプレート エリアに表示されます。スクリプトテンプレートが公開されると、テナント内のすべてのユーザーがこれを利用できます。

ステップ 2:コンポーネントの参照

以下のようにコンポーネントを参照できます。

Data Studio の SQL スクリプトテンプレートノードからの参照

Data Studio ページに移動し、SQL スクリプトテンプレートノードを作成してスクリプトテンプレートを参照できます。その後、テンプレート内の入力パラメーターおよび出力パラメーターを置き換えてコードを再利用できます。

  1. Data Studio ページの左側のナビゲーションウィンドウで、image をクリックして Data Studio に移動します。

  2. ワークスペースディレクトリ で、ビジネス要件に基づいて SQL スクリプトテンプレートノードを作成する場所を計画します。フォルダを右クリックするか、image をクリックして、ノードの作成 > MaxCompute > SQL スクリプトテンプレートノード を選択し、ノードのカスタム名を入力します。

  3. ノードエディターページで、右側の SQL スクリプトテンプレートの設定 をクリックし、次に SQL スクリプトテンプレート をクリックします。

  4. スクリプトテンプレートを選択すると、コードが自動的に SQL スクリプトテンプレートエディターページに表示され、SQL スクリプトテンプレートの設定 で各パラメーターの値を定義できます。

ワークスペース SQL スクリプトテンプレートからの参照

SQL スクリプトテンプレート ページに移動し、参照するスクリプトテンプレートを見つけ、直接参照して SQL スクリプトテンプレートノードを作成できます。その後、テンプレート内の入力パラメーターおよび出力パラメーターを置き換えてコードを再利用できます。

  1. Data Studio ページの左側のナビゲーションウィンドウで、image をクリックしてスクリプトテンプレート管理ページに移動します。

  2. ワークスペース SQL スクリプトテンプレート で、対象のコンポーネントを右クリックし、SQL スクリプトテンプレートの参照 を選択します。

  3. 画面の指示に従って、SQL スクリプトテンプレートノードを作成する場所を選択し、ノード名を指定します。

  4. ノードが作成された後、スクリプトテンプレートのコードが自動的に SQL コンポーネントエディターページに表示されます。SQL スクリプトテンプレートの設定 で各パラメーターの値を定義できます。

公開 SQL スクリプトテンプレートからの参照

SQL スクリプトテンプレート ページに移動し、他のテナントによって公開されたスクリプトテンプレートを見つけ、直接参照して SQL スクリプトテンプレートノードを作成できます。その後、テンプレート内の入力パラメーターおよび出力パラメーターを置き換えてコードを再利用できます。

  1. Data Studio ページの左側のナビゲーションウィンドウで、image をクリックしてスクリプトテンプレート管理ページに移動します。

  2. 公開 SQL スクリプトテンプレート セクションで、対象のスクリプトテンプレートを見つけ、参照 をクリックします。

  3. 画面の指示に従って、SQL スクリプトテンプレートノードを作成する場所を選択し、ノード名を指定します。

  4. ノードが作成された後、スクリプトテンプレートのコードが自動的に SQL コンポーネントエディターページに表示されます。SQL スクリプトテンプレートの設定 で各パラメーターの値を定義できます。

コンポーネントのアップグレード

アップグレード操作:スクリプトテンプレート開発者

開発者は、必要に応じてスクリプトテンプレートのコードおよびパラメーター設定を編集できます。変更を保存およびコミットすると、スクリプトテンプレートは新しいバージョンにアップグレードされます。バージョン タブで、各バージョンの詳細を確認できます。

参照バージョンのアップグレード:スクリプトテンプレートユーザー

スクリプトテンプレートがアップグレードされた後、ご利用の SQL スクリプトテンプレートノードがそれを参照している場合、最新バージョンを使用するかどうかを選択できます。

  • 新しいバージョンを使用する必要がない場合は、引き続き元のバージョンを使用できます。

  • 新しいバージョンを使用する場合は、新バージョンのパラメーター設定がご利用の SQL スクリプトテンプレートノードに対して依然として有効であるかを確認してください。新バージョンの説明に基づいて調整を行い、その後ノードをコミットおよび公開します。コミットおよび公開の手順は、標準の SQL ノードと同様です。

アップグレードシナリオの例

開発者が SQL スクリプトテンプレートのバージョン V1 を作成し、別のユーザーがこれを使用します。その後、開発者がスクリプトテンプレートをバージョン V2 にアップグレードします。テンプレートを使用しているユーザーは、新しいバージョン V2 が利用可能になったことに気付きます。ユーザーはスクリプトテンプレートを開き、両方のバージョンの詳細を確認・比較し、新バージョンがより優れたビジネス成果を提供すると判断したため、ノードを最新バージョンに更新します。

参照レコードの確認

スクリプトテンプレートエディターページの右側で、参照レコードをクリックすると、現在のスクリプトテンプレートを参照しているノードを確認できます。これにより、テンプレートに対する変更の影響を推定するのに役立ちます。

その他の操作

コンポーネントのクローン

クローン機能を使用して、既存のスクリプトテンプレートから新しいスクリプトテンプレートを迅速に作成できます。クローンされる内容には、スクリプトテンプレートのコード、パラメーター構成、デバッグ構成のスクリプトパラメーターが含まれます。

  1. 左側の ワークスペース SQL スクリプトテンプレート ペインで、クローンするコンポーネントの名前を右クリックし、ポップアップメニューから クローン を選択します。

  2. ダイアログボックスで、コンポーネントの 名前 および パス を変更する(またはデフォルト値を維持する)し、OK をクリックしてクローンを開始します。

  3. クローンが完了すると、ワークスペース SQL スクリプトテンプレート セクションで新しく生成されたスクリプトテンプレートを確認できます。

バージョン管理

バージョン管理機能を使用して、スクリプトテンプレートを特定の過去のバージョンに復元できます。この機能により、バージョンの表示および比較も可能になり、差分を分析して調整を行うのに役立ちます。

  1. 左側の ワークスペース SQL スクリプトテンプレート ペインで、コンポーネントの名前をダブルクリックして編集ページを開き、そのバージョンを表示および管理します。

  2. エディターページの右側で、バージョン をクリックします。バージョン ページで、開発履歴 および デプロイメント履歴 を表示および管理できます。

    • バージョンの表示:

      1. 開発履歴 または デプロイメント履歴 タブで、表示したいスクリプトテンプレートのバージョンを見つけます。

      2. 操作 列の 表示 をクリックして詳細ページに移動し、スクリプトテンプレートのコードおよびスケジュール設定を確認します。

    • バージョンの比較:

      開発履歴 または デプロイメント履歴 タブで、スクリプトテンプレートの異なるバージョンを比較できます。以下の例では、開発レコードを使用して比較操作を示します。

      • 開発環境または本番環境内でのバージョン比較: 開発履歴 タブで、2 つのバージョンを選択し、上部の 比較するバージョンを選択 ボタンをクリックします。これにより、異なるバージョンのスクリプトテンプレートコードおよびスケジュール設定を比較できます。

      • 開発環境と本番環境の比較:

        1. 開発履歴 タブで、特定のバージョンのスクリプトテンプレートを見つけます。

        2. 操作 列の 比較 ボタンをクリックします。詳細ページで、デプロイメント履歴 から比較対象のバージョンを選択します。

    • バージョンの復元:

      開発履歴 のみから、スクリプトテンプレートを特定の過去のバージョンに復元できます。開発履歴 タブで対象のバージョンを見つけ、操作 列の 復元 ボタンをクリックします。この操作により、スクリプトテンプレートが選択されたバージョンに復元されます。