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

AnalyticDB:Azkabanを使用してXIHE SQLジョブをスケジュールする

最終更新日:Aug 13, 2024

Azkabanは、複雑な依存関係を含むワークフローを作成、実行、および管理するために使用できるバッチワークフロージョブスケジューラです。 Azkabanを使用して、AnalyticDB for MySQLのXIHE SQLジョブをスケジュールできます。

前提条件

  • AzkabanがインストールされているサーバーにMySQLクライアントがインストールされています。詳細については、MySQLドキュメントをご参照ください。

  • Azkabanがインストールされています。詳しくは、Azkabanドキュメントをご参照ください。

  • Azkabanを実行するサーバーのIPアドレスが、AnalyticDB for MySQLクラスターのIPアドレスホワイトリストに追加されます。 詳細については、「ホワイトリストの設定」をご参照ください。

データ準備

AnalyticDB for MySQLクラスターで、azkaban_testという名前のデータベースを作成します。 データベースで、azkaban_test.namesという名前のテーブルを作成し、テストデータをテーブルに挿入します。 例:

-- Create a database.
CREATE DATABASE azkaban_test;
-- Create a table.
CREATE TABLE azkaban_test.names (
  id BIGINT,
  name STRING
);
-- Insert data into the table.
INSERT INTO azkaban_test.names VALUES(1, 'Li'), (2, 'Yang');

手順

  1. ワークフローファイルを作成します。

    1. ワークフローフォルダを作成します。 フォルダー内のジョブを開始、クエリ、および終了するスクリプトを作成します。

      • ジョブを開始するスクリプト:

        #start
        type=command
        command=echo 'job start'
      • ジョブを照会するスクリプト:

        type=command
        dependencies=start
        command=mysql -hamv-bp165vrm0g8s****.ads.aliyuncs.com -utest -padb14**** -P3306 -e "create table azkaban_test.duplicated_names as select * from azkaban_test.names"

        パラメーター:

        • -h: AnalyticDB for MySQLクラスターのエンドポイント。 AnalyticDB for MySQLコンソールにログインし、[クラスター情報] ページに移動してエンドポイントを表示します。

        • -u: AnalyticDB for MySQLクラスターのデータベースアカウントの名前。

        • -p: AnalyticDB for MySQLクラスターのデータベースの名前。

        • -P: AnalyticDB for MySQLクラスターのポート番号。 値を3306に設定します。

        • -e: SQL文。

      • ジョブを終了するスクリプト:

        #end
        type=command
        dependencies=exec_query
        command=echo 'job end'
    2. ワークフローフォルダをZIP形式で圧縮します。

  2. プロジェクトを作成し、手順1で作成したワークフローファイルをアップロードします。

    1. Azkabanコンソールにログインします。 上部のナビゲーションバーで、[プロジェクト] をクリックします。

    2. ページの右上隅にある [プロジェクトの作成] をクリックします。

    3. [プロジェクトの作成] ダイアログボックスで、[名前][説明] パラメーターを設定し、[プロジェクトの作成] をクリックします。

    4. ページの右上隅にある [アップロード] をクリックします。

    5. [プロジェクトハエのアップロード] ダイアログボックスで、ワークフローファイルを選択し、[アップロード] をクリックします。

  3. ワークフローを実行します。

    1. [プロジェクト] ページで、[フロー] タブをクリックします。

    2. [フローの実行] をクリックします。

    3. [実行] をクリックします。

    4. [フロー送信済み] メッセージで、[続行] をクリックします。

  4. ワークフローの詳細を表示します。

    1. 上部のナビゲーションバーで、[実行] をクリックします。

    2. [最近完了] タブをクリックします。

    3. ワークフローの実行IDをクリックします。 [ジョブリスト] タブをクリックして、各ジョブの詳細を表示します。

    4. [ログ] をクリックして、ジョブログを表示します。