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

MaxCompute:SQLスクリプトの開発と送信

最終更新日:Dec 05, 2024

このトピックでは、MaxCompute StudioでSQLスクリプトを開発して送信する方法について説明します。 SQLスクリプトの開発には、SQLスクリプトの作成と実行が含まれます。

前提条件

SQLスクリプトを書く

  1. プロジェクトツールウィンドウで、プロジェクト名をクリック、スクリプトを右クリックして、新しい > MaxCompute SQLスクリプト を選択します。

    创建

  2. 新しいMaxCompute SQLスクリプトダイアログボックスで、必要なパラメーターを設定し、OK をクリックします。

    脚本名称

    • スクリプト名: スクリプトの名前。

    • MaxComputeプロジェクト: SQLスクリプトを記述するMaxComputeプロジェクト。 [+] をクリックすると、別のMaxComputeプロジェクトへの接続を確立できます。 詳細については、「プロジェクト接続の管理」をご参照ください。

  3. エディターでSQLスクリプトを記述します。 SQL構文の詳細については、「MaxCompute SQLの概要」をご参照ください。

    サンプルスクリプト:

    create table table_5(
    col1 bigint,
    col2 bigint,
    col3 bigint,
    ds datetime
    );
    insert into table table_5 values(1,2,3,DATETIME'2017-11-11 00:00:00');
    select * from table_5 where ds='${bizdate}';
    説明
    • プロジェクト間のリソース共有を設定できます。 たとえば、Project aにバインドされているスクリプトを使用して、Project Bのtable1にアクセスできます。

    • MaxCompute Studioでは、SQLスクリプトエディターを設定できます。 詳細については、

      概要をご参照ください。

SQLスクリプトの送信

SQLスクリプトを送信する前に、ビジネス要件に基づいてコンパイルパラメーターを設定する必要があります。 MaxCompute Studioは、さまざまなコンパイルパラメーターを提供します。 エディタの上のツールバーでパラメータを設定できます。 次のコンパイルパラメータを設定できます。

  • エディタモード

    • ステートメントモード: このモードでは、エディターはスクリプト内のSQLステートメントをセミコロン (;) で区切り、ステートメントを1つずつMaxComputeサーバーに送信して実行します。

    • スクリプトモード: 最新の開発モードです。 このモードでは、エディタは、全体的な最適化のためにスクリプト全体を一度にMaxComputeサーバーに送信します。 実行効率を向上させるために、このモードを使用することを推奨します。

  • タイプSystem: このパラメーターを設定して、SQL文を実行するときの互換性の問題を防ぐことができます。 有効な値:

    • Legacy TypeSystem: MaxCompute V1.0データ型エディションを示します。

    • MaxCompute TypeSystem: MaxCompute V2.0データ型エディションを示します。

    • Hive Compatible TypeSystem: Hive互換データ型エディションを示します。

  • 実行モード

    • デフォルトバージョン: 安定バージョンが使用されていることを示します。

    • MaxComputeクエリアクセラレーション: MaxComputeクエリアクセラレーション (MCQA) 機能を有効にしてジョブを実行することを示します。

    • アクセラレーションが失敗した場合の再実行: クエリのアクセラレーションが失敗した場合、システムがジョブを再実行することを示します。

  1. ツールバーまたはサイドバーで、运行アイコンをクリックして、SQLスクリプトをMaxComputeサーバーに送信して実行します。

    説明

    上記のコードの ${bizdate} などの変数がSQLスクリプトに存在する場合、ダイアログボックスが表示され、変数の値を入力するように求められます。 この例では、2017-11-11 00:00:00と入力して、現在のパーティションのデータを照会できます。

  2. MaxComputeがSQLスクリプトを実行する前に、IntelliJ IDEAはSQLスクリプトの推定コストを表示します。 推定コストを確認し、[確認] メッセージの [OK] をクリックします。

    确认费用

    説明
    • ツールバーで、刷新アイコンをクリックして、テーブルやユーザー定義関数 (UDF) など、SQLスクリプトで使用されるメタデータを更新できます。 MaxCompute StudioがMaxComputeのテーブルと関数を検出できない場合は、この機能を使用できます。

    • SQLスクリプトは、[Project Explorer] ウィンドウに追加したメタデータに基づいてコンパイルされます。 エラーが検出されない場合、SQLスクリプトはMaxComputeサーバーに送信されます。 その後、MaxComputeサーバーはSQLスクリプトを実行します。

    • SQLスクリプトの実行時に実行ログが生成されます。 MaxComputeでSQLスクリプトを実行すると、[ジョブの詳細] タブが表示されます。 実行の詳細を表示できます。

    • SQLジョブのコスト見積もりを表示する場合は、MaxCompute sql設定項目から [SQLコスト確認ダイアログを表示する] を選択します。

  3. 結果タブで、実行結果を表示します。

    複数のステートメントが1つずつ実行された場合、各ステートメントの実行結果が表示されます。

    运行结果