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

Data Transmission Service:DAGモードでのETLタスクの設定

最終更新日:Dec 24, 2024

データ伝送サービス (DTS) は、抽出、変換、およびロード (ETL) 機能を提供します。 ETL機能を使用すると、ストリーミングデータをクレンジングおよび変換できます。 このようにして、必要なデータを正確かつ効率的に取得できます。 このトピックでは、有向非巡回グラフ (DAG) モードでETLタスクを設定する方法について説明します。

背景情報

説明

この機能はまもなく利用できなくなり、この機能を有効にした特定のユーザーのみ無料で利用できます。 データ同期または移行インスタンスでETLタスクを設定することを推奨します。 詳細については、「データ移行または同期タスクでのETLの設定」をご参照ください。

  • ETLタスクを設定する前に、次の情報に注意してください。

    • Input/Dimension Tableは、ETLタスクのソースデータベースを示します。

    • Outputは、ETLタスクのターゲットデータベースを示します。

  • DTSは、データ同期プロセスのストリーミングETL機能を提供します。 ソースデータベースとターゲットデータベースの間にさまざまな変換コンポーネントを追加して、データを変換し、処理されたデータをターゲットデータベースにリアルタイムで書き込むことができます。 たとえば、2つのストリームテーブルを大きなテーブルに結合し、その大きなテーブルのデータをターゲットデータベースに書き込むことができます。 ソーステーブルにフィールドを追加し、フィールドに値を割り当てる関数を設定することもできます。 次に、フィールドをターゲットデータベースに書き込むことができます。

前提条件

  • ETLタスクは、中国 (杭州) 、中国 (上海) 、中国 (青島) 、中国 (北京) 、中国 (張家口) 、中国 (深セン) 、中国 (広州) 、中国 (香港) のいずれかのリージョンで作成されます。

  • ソースデータベースは、MySQLPolarDB for MySQLOraclePostgreSQLiSeries DB2 (AS/400)Db2 for LUWPolarDB-X 1.0PolarDB for PostgreSQLMariaDBPolarDB for OracleSQL ServerPolarDB-X 2.0となります。

  • ターゲットデータベースは、MySQLPolarDB for MySQLOracleAnalyticDB for MySQL V3.0PolarDB for PostgreSQLPostgreSQLDb2 for LUWiSeries DB2 (AS/400)AnalyticDB for PostgreSQLSQL ServerMariaDBPolarDB-X 1.0PolarDB for Oracle、およびTablestore

  • ターゲットデータベースのテーブルのスキーマが作成されます。 これは、ETL機能がスキーマ移行をサポートしていないためです。 例えば、テーブルAは、フィールド1、フィールド2、およびフィールド3を含み、テーブルBは、フィールド2、フィールド3、およびフィールド4を含む。 フィールド2とフィールド3を含むテーブルにテーブルAとテーブルBを結合する場合は、フィールド2とフィールド3を含むテーブルCをターゲットデータベースに作成する必要があります。

  • ETL機能は完全なデータ同期をサポートしていません。 したがって、増分データのみをリアルタイムで変換できます。

注意事項

  • ソースデータベースとターゲットデータベースは同じリージョンに存在する必要があります。

  • すべてのストリームテーブルは同じインスタンスに属している必要があります。

  • データベースの名前とテーブルの名前はすべて一意である必要があります。

  • 変換コンポーネントには次の制限があります。

    • テーブル結合: 結合操作は、2つのテーブル間でのみ実行できます。

    • Field CalculatorおよびTable Record Filter: 単一のテーブルスキーマのみがサポートされています。

フローチャート

配置ETL任务流程

ETLタスクを作成するには、1つ以上のソースデータベース、1つ以上の変換コンポーネント、およびターゲットデータベースを設定する必要があります。 次の表に、ETLタスクの作成方法を示します。

ステップ

説明

関連ドキュメント

ソースデータベースの設定

[入力 /ディメンションテーブル] セクションで1つ以上のソースデータベースを選択し、各ソースデータベースのパラメーターを設定できます。

説明

同じタイプのソースデータベースを複数回選択できます。

  1. [ノード設定] タブでパラメーターを設定します。

  2. [出力フィールド] タブでパラメーターを設定します。

  3. オプション: Node TypeパラメーターをStream Tableに設定した場合、時間属性を設定する必要があります。

ソースデータベースの設定

変換コンポーネントの設定

1つ以上の変換コンポーネントを選択し、各変換コンポーネントのパラメーターを設定できます。

説明

同じタイプの変換コンポーネントを複数回選択できます。

  • テーブル参加

    1. [ノード設定] タブでパラメーターを設定します。

    2. [出力フィールド] タブでパラメーターを設定します。

  • フィールド計算機

    1. Conversion Nameパラメーターを設定します。

    2. 電卓を設定します。

  • テーブルレコードフィルター

    1. Conversion Nameパラメーターを設定します。

    2. WHERE条件を指定します。

変換コンポーネントの設定

ターゲットデータベースの設定

[出力] ノードのターゲットデータベースタイプを選択し、ターゲットデータベースに次のパラメーターを設定できます。

  1. [ノード設定] タブでパラメーターを設定します。

  2. [フィールドマッピング] タブでパラメーターを設定します。

ターゲットデータベースの設定

手順

  1. ストリーミングETLページに移動します。

    1. 最初に

      DTSコンソール

    2. 左側のナビゲーションウィンドウで、[ETL] をクリックします。

  2. ストリーミングETLページの左上隅にある [新增数据流] をクリックします。 [データフローの作成] ダイアログボックスで、[データフロー名] フィールドにETLタスク名を指定し、[開発方法] パラメーターを [DAG] に設定します。

  3. クリックOK.

  4. ETLタスクのパラメーターを設定します。

    1. ETLタスクを作成します。

      説明
      • この例では、[Input/Dimension Table MySQL] ノード、[Field Calculator] ノード、および [Output MySQL] ノードが設定されています。

      • 1つ以上のソースデータベースを選択できます。 同じタイプのソースデータベースを複数回選択できます。

      • 1つ以上の変換コンポーネントを選択できます。 同じ変換コンポーネントを複数回選択できます。

      • 選択できるターゲットデータベースは1つだけです。

      1. キャンバスの左側で、[入力 /ディメンションテーブルMySQL] ノードをキャンバスの空白領域にドラッグします。

      2. キャンバス上の [入力 /寸法テーブルMySQL-1] をクリックします。 [ノード設定] 、[出力フィールド] 、および [時間属性] タブでパラメーターを設定します。 必要なパラメーターの設定方法の詳細については、「ソースデータベースの設定」をご参照ください。

      3. キャンバスの左側で、[Field Calculator] ノードをキャンバスの空白領域にドラッグします。

      4. [入力 /ディメンションテーブルMySQL-1] ノードの上にポインターを移動し、ドットをクリックして [入力 /ディメンションテーブルMySQL-1] ノードと [フィールド計算機-1] ノードの間に線を引きます。

      5. キャンバス上の [Field Calculator-1] ノードをクリックし、[ノード設定] タブでパラメーターを設定します。 必要なパラメーターの設定方法の詳細については、「変換コンポーネントの設定」をご参照ください。

      6. キャンバスの左側で、[出力MySQL-1] ノードをキャンバスの空白領域にドラッグします。

      7. ポインタを [Field Calculator-1] ノードの上に移動し、ドットをクリックして [Field Calculator-1] ノードと [出力MySQL-1] ノードの間に線を引きます。

      8. [出力MySQL-1] ノードをクリックし、[ノード設定] タブと [フィールドマッピング] タブでパラメーターを設定します。 必要なパラメーターを設定する方法の詳細については、「ターゲットデータベースの設定」をご参照ください。

      9. 上記の設定を完了したら、ビジネス要件に基づいて [Flink SQL検証の生成] または [発行] をクリックします。

        • Flink SQL検証の生成: Flink SQL検証が成功した場合、Flink SQL検証の成功メッセージが表示されます。 検証に失敗した場合は、[Flink SQL検証の生成] の横にある [ETL検証の詳細を表示] をクリックします。 エラーメッセージに基づいて問題をトラブルシューティングした後、Flink SQL検証を再度実行できます。

        • 公開: システムは最初にFlink SQL検証を実行します。 ETLタスクは、Flink SQLの検証が成功した後にのみ事前チェックできます。 [ETL検証の詳細を表示] をクリックすると、検証の詳細が表示されます。

    2. Flink SQLの検証が完了したら、事前チェックを実行します。 DTSは、タスクが事前チェックに合格した後にのみETLタスクを開始できます。 タスクが事前チェックに合格しなかった場合は、失敗した各項目の横にある [詳細の表示] をクリックします。 エラーメッセージに基づいて問題をトラブルシューティングした後、事前チェックを再度実行できます。

    3. 事前チェックに合格したら、をクリックします。次へ: インスタンスの購入ページの下部にあります。

    4. [インスタンスの購入] ページで、[インスタンスクラス] および [計算ユニット (CU)] パラメーターを設定します。 次に、[データ送信サービス (従量課金) サービス規約] および [パブリックプレビューのサービス規約] を読み、選択します。

    5. クリック購入して開始ETLタスクを開始します。

      [ストリーミングETL] ページに戻り、[ステータス] 列でETLタスクの状態を表示できます。