DataWorks Open Platform で拡張を登録、パブリッシュ、有効化すると、対象のワークスペースで拡張ポイントイベントがトリガーされるたびに、DataWorks は拡張にイベントメッセージを送信します。拡張の応答に基づいて、DataWorks は操作を許可するかどうかを判断します。このトピックでは、DataStudio がサポートする拡張ポイントイベントについて説明し、これらを使用して拡張をトリガーする方法を説明します。
前提条件
-
メッセージサブスクリプションが有効化されていること。詳細については、「メッセージサブスクリプションの有効化」をご参照ください。
-
拡張の開発とデプロイが完了していること。詳細については、「Function Compute を使用した拡張の開発とデプロイ」をご参照ください。
背景
-
拡張の有効化
[管理センター] ページで、拡張機能 を表示し、現在のワークスペースの拡張機能チェックを有効化または無効化できます。
-
データ開発における拡張ポイントイベント
DataWorks の DataStudio モジュールは、ファイルパブリッシュ前、ファイルコミット前、テーブルサブミット前などの拡張ポイントイベントをサポートしています。拡張ポイントイベントの詳細なリストと関連する概念については、「サポートされている拡張ポイントイベントのリスト」をご参照ください。
-
DataWorks は拡張ポイントイベントに関するメッセージ通知を送信できます。拡張はこれらのイベントを自動的に検証し、応答できます。トリガープロセスの詳細については、「サポートされている拡張ポイントイベント」をご参照ください。
制限事項
拡張が有効化されている場合、データ開発中にトリガーされるイベントのメッセージ通知と応答には、以下の制限があります。
-
組み込み拡張が有効化された後、ODPS SQL ノードのみをサポートします。
つまり、ODPS SQL ノードで拡張ポイントイベントがトリガーされると、プロセスがブロックされます。組み込み拡張はロジックを検証し、結果を返します。ODPS SQL ノード以外のノードでイベントがトリガーされた場合も、プロセスはブロックされますが、組み込み拡張は検証を実行せず、すぐに成功結果を返します。
-
[公開前テーブルイベント] と [送信前テーブルイベント] は、MaxCompute テーブルに対してのみトリガーされる拡張ポイントイベントです。
-
do-while ノードやfor-each ノードなど、内部ノードを含む複合ノードの場合、次の操作に進む前に、すべての内部ノードがチェックに合格する必要があります。
概要
ローカルサービスまたはプログラムを DataWorks 拡張として登録することで、DataStudio モジュール内の特定の拡張ポイントイベントに関するメッセージを受信できます。これにより、これらのイベントを処理するカスタムロジックを実装し、UpdateIDEEventResult API へのコールバック) を使用して結果をプラットフォームに返すことができます。この方法により、DataWorks でのプロセス制御が可能になります。サポートされている拡張ポイントは以下のとおりです。
-
ファイル操作:ファイルの実行、コミット、パブリッシュ、削除。
-
テーブル操作:テーブルのサブミットとパブリッシュ。
説明DataStudio でのテーブル操作の拡張イベントは、MaxCompute テーブルに対してのみトリガーされます。
サポートされている拡張ポイントイベント
DataStudio では、拡張を使用して以下の拡張ポイントイベントを検証し、応答できます。
DataStudio - ファイル実行
DataStudio コードエディタで [実行] ボタンをクリックすると、拡張の事前チェックイベントがトリガーされます。[チェック中] というオーバーレイが表示され、「チェックに合格すると、操作が自動的に実行されます。結果は [操作チェック] で確認できます。」というメッセージが表示されます。左側の [操作チェック] パネルでは、すべてのチェック記録 (実行、ファイルコミット、削除などのタイプを含む) を確認できます。記録をクリックすると、詳細ダイアログボックスが開き、各拡張のチェックタイプ、ステータス、詳細を確認できます。
DataStudio - ファイルサブミット
DataStudio でファイルをサブミットすると、システムはファイルコミット前イベントチェックをトリガーします。ツールバーの [サブミット] ボタンをクリックすると、拡張チェックがトリガーされます。エディターには「チェック中」というプロンプトが表示され、チェックに合格すると操作が自動的に実行されます。左側の [操作チェック] パネルで、各チェック項目のステータスを確認できます。リストには「ファイルコミット前イベントチェックをトリガー」と表示されます。
DataStudio - ファイルパブリッシュ
コードエディターで [パブリッシュ] ボタンをクリックしてファイルをサブミットすると、システムは拡張チェックをトリガーします。[デプロイメントパッケージの作成] 画面が表示され、ファイルリスト内の対応するノードのステータスが [チェックおよび検証中] と表示されます。ノードのステータスをクリックして [操作チェック] ダイアログボックスを開き、チェックタイプ、ステータス、検証の詳細を確認できます。
DataStudio - ファイル削除
DataStudio のファイルツリーで対象ノードを右クリックし、[削除] を選択します。この操作により、拡張プログラムからの事前チェックイベントがトリガーされます。ページの下部に青い通知が表示され、「この操作はチェックをトリガーしました。チェックに合格すると、操作は自動的に有効になります。チェック結果は [操作チェック] でご確認ください。」と表示されます。[操作チェック] ページに移動して、チェック記録のリストを確認します。リストには、名前/操作時間、タイプ、ステータスの列が含まれています。特定の記録をクリックして、操作チェックの詳細を確認します。詳細には、「組み合わせテストの削除前」などのチェックタイプと、「チェック中」などの現在のステータスが含まれます。ページには [詳細を表示] と [ドキュメントを表示] のリンクも表示されます。
DataStudio - テーブルサブミット
テーブル (xc_table_prod など) を開発環境または本番環境にサブミットすると、システムは拡張プログラムからの事前チェックを自動的にトリガーします。[チェック中] ダイアログボックスが表示され、「チェックに合格すると、操作が自動的に実行されます。結果は [操作チェック] でご確認ください。」というメッセージが表示されます。左側の [操作チェック] サイドバーでは、タイプとステータスですべてのチェック記録をフィルタリングして表示できます。特定の記録をクリックして、操作チェックの詳細ダイアログボックスを開きます。このダイアログボックスには、現在の操作によってトリガーされた拡張プログラム検証のリスト (「テーブルサブミット前チェック - テストプログラム」などのチェックタイプ) とそれらの検証ステータスが表示されます。[詳細を表示] と [再チェック] の操作がサポートされています。
DataStudio - テーブルパブリッシュ テーブル設定ページで [本番環境へサブミット] タブをクリックすると、拡張チェックがトリガーされます。システムは「チェック中 - チェックに合格すると、操作が自動的に実行されます。結果は [操作チェック] でご確認ください。」というプロンプトを表示します。[操作チェック] ページに移動して、チェック記録のリストを確認します。リストには、テーブル名、サブミット時間、チェックタイプ、ステータスが含まれています。記録をクリックして、詳細を確認します。詳細には、チェックタイプ (テーブルパブリッシュ前チェック など) と現在のステータスが含まれます。[詳細を表示] と [ドキュメントを表示] をクリックすることもできます。この操作により、ワークスペース内のテーブルパブリッシュ前イベントタイプに対して有効化された拡張の検証がトリガーされます。
関連ドキュメント
-
拡張の使用に関する詳細については、「拡張の使用」をご参照ください。
-
DataStudio は、追加の拡張ポイントイベントをサポートしています。詳細については、「サポートされている拡張ポイントイベントのリスト」をご参照ください。
-
ファイル変更イベントのメッセージエンティティ形式の詳細については、「ファイル変更イベント (コミット、パブリッシュ、実行、削除、コードレビュー)」をご参照ください。
-
テーブル変更イベントのメッセージエンティティ形式の詳細については、「テーブル変更イベント (開発環境へのテーブルサブミットと本番環境へのテーブルパブリッシュ)」をご参照ください。