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

AnalyticDB:DataWorksを使用したXIHE SQLタスクのスケジュール

最終更新日:Jun 14, 2024

DataWorksは、MaxComputeをコンピューティングおよびストレージエンジンとして使用して、大量のデータをバッチモードで処理および分析します。 DataWorksは、視覚化されたワークフロー開発、スケジューリング、およびO&Mのための完全ホストサービスを提供します。DataWorksでは、タスクは時間または依存関係によって管理およびスケジュールできます。 マネージドスケジューリング、タスク依存関係管理、タスクO&MなどのDataWorks機能を使用して、AnalyticDB for MySQLタスクをスケジュールおよび管理できます。

目的

タスクスケジューリングには、タスク間の依存関係が必要です。 このトピックでは、2つのAnalyticDB for MySQLタスクがDataWorksで作成されます。 テーブルとタスクの関係を次の図に示します。

目的

  • タスク1

    o_orderstatus = 'F' 条件を含むステートメントを実行して、完了した注文を注文テーブルからフィルタリングし、完了した注文をfinished_ordersテーブルに書き込みます。

  • タスク2

    o_totalprice > 10000条件を含むステートメントを実行して、finished_ordersテーブルから合計価格が10,000を超える注文をフィルタリングし、high_value_finished_ordersテーブルに注文を書き込みます。

前提条件

  1. AnalyticDB for MySQLクラスターが作成され、クラスターにホワイトリストが設定されます。 詳細については、「AnalyticDB For MySQL Data Warehouse Edition (V3.0) の使用」をご参照ください。

    説明

    AnalyticDB for MySQLクラスターがDataWorksと同じリージョンにあることを確認します。

    • パブリックエンドポイントを使用してDataWorksからAnalyticDB for MySQLに接続する場合は、パブリックエンドポイントを申請し、DataWorksホワイトリストのIPアドレスをAnalyticDB for MySQLホワイトリストに追加する必要があります。

    • Virtual Private Cloud (VPC) エンドポイントを使用してDataWorksからAnalyticDB for MySQLに接続する場合は、DataWorksで排他的リソースグループを作成する必要があります。 排他的リソースグループのVPCは、AnalyticDB for MySQLクラスターのVPCと同じである必要があります。

    • このトピックでは、テーブルをテストデータとして使用します。In this topic, the orders table is used as test data. AnalyticDB for MySQLデータベースに接続した後、次のステートメントを実行してテストテーブルを作成できます。

      テーブル注文を作成する (
            o_orderkey bigint NOT NULL COMMENT ''、
            o_custkey int NOT NULL COMMENT ''、
            o_orderstatus varchar NOT NULL COMMENT ''、
            o_totalprice decimal(15,2) NOT NULL COMMENT ''、
            o_orderdate date NOT NULL COMMENT ''、
            o_orderpriority varchar NOT NULL COMMENT ''、
            o_clerkvar char NOT NULL COMMENT ''、
            o_shippriority int NOT NULL COMMENT ''、
            o_comment varchar NOT NULL COMMENT ''、
            ダミーvarchar
        ) ハッシュ (o_orderkey) によって分配されます。CREATE TABLE finished_orders (
             o_orderkey bigint NOT NULL、
             o_totalprice decimal(15,2) NOT NULL、
             主キー (o_orderkey)
         ) ハッシュによる配布 (o_orderkey);
      
      作成テーブルhigh_value_finished_orders (
            o_orderkey bigint NOT NULL、
            o_totalprice decimal(15,2) NOT NULL、
            PRIMARY KEY ('o_orderkey')
        )
        ハッシュ (o_orderkey) によって分配されます。
  2. ワークスペースはDataWorksで作成されます。 詳細については、「ワークスペースの作成」をご参照ください。

    説明

    ワークスペースの標準モードを選択します。

ステップ1. DataWorksでAnalyticDB for MySQLデータソースを追加する

詳細については、「AnalyticDB For MySQL 3.0データソース」をご参照ください。

DataWorksは、接続サービスのセキュリティ制御を実装します。 AnalyticDB for MySQLデータベースのエンドポイントとポートをDataWorksのホワイトリストに追加する必要があります。

设置白名单2

ステップ2. DataWorksでAnalyticDB for MySQLノードを作成する

詳細については、「AnalyticDB For MySQLノードの設定」をご参照ください。

手順3: タスクの依存関係の設定

DataWorksでは、時間または依存関係に基づいて設定をスケジュールすることでタスクをトリガーできます。 指定された依存関係に基づいて、指定された時点で複数のタスクが実行されます。 詳細については、「時間プロパティの設定」および「同じサイクルのスケジューリング依存関係の設定」をご参照ください。

たとえば、finished_ordersタスクを毎日02:00:00に実行するように設定できます。 finished_ordersタスクが実行された後、high_value_finished_ordersタスクが実行されます。

ステップ 4. タスクの発行

タスクを設定した後、これらのタスクを公開および維持できます。 詳細については、「ノードのデプロイ」をご参照ください。

タスクを公開した後、公開するタスクを表示できます。

タスクが公開された後、タスクのO&Mページでタスクを表示および管理できます。