このトピックでは、オープンソースの Flink リアルタイムエンジンを使用する Flink SQL タスクの作成方法について説明します。
前提条件
開始する前に、プロジェクトでリアルタイムエンジンが有効になっており、Flink がコンピューティングソースとして構成されていることを確認してください。詳細については、「一般プロジェクトの作成」をご参照ください。
権限の説明
スーパー管理者、プロジェクト管理者、および開発者のみが Flink SQL コンピューティングタスクを作成できます。
ステップ 1: Flink SQL タスクの作成
Dataphin のホームページで、上部のメニューバーから [開発] > [データ開発] を選択します。
プロジェクトが Dev-Prod モードを使用している場合は、上部のメニューバーからプロジェクトと環境を選択します。
左側のナビゲーションウィンドウで、[データ処理] > [コンピューティングタスク] を選択します。コンピューティングタスクのリストで、
アイコンをクリックし、[Flink SQL] を選択します。[Flink SQL タスクの作成] ダイアログボックスで、タスクパラメーターを構成します。
パラメーター
説明
タスク名
命名規則は次のとおりです:
小文字、数字、アンダースコア (_) のみを含める必要があります。
長さは 4~63 文字である必要があります。
プロジェクト内で一意である必要があります。
文字で始まる必要があります。
本番環境リソースキュー/開発環境リソースキュー
プロジェクトの Flink コンピューティングソースが Kubernetes デプロイメントモードを使用している場合、登録済みの外部クラスター内のリソースグループを含む、リアルタイムタスク用に構成された任意のリソースグループを選択できます。
プロジェクトの Flink コンピューティングソースが YARN デプロイメントモードを使用している場合、Flink SQL タスクが配置されている本番環境クラスター内のリソースキューまたはリソースグループを選択できます。
説明プロジェクトが基本モードの場合、本番環境リソースキューのみを構成できます。
本番環境エンジンバージョン/開発環境エンジンバージョン
タスクの Flink エンジンバージョンを選択します。Dataphin は次のバージョンをサポートしています:
1.20.1
1.15.3
1.14.2
1.13.1
説明プロジェクトが基本モードの場合、エンジンバージョンのみを構成できます。
ストレージディレクトリ
タスクを保存するフォルダを選択します。
フォルダが存在しない場合は、次の手順でフォルダを作成できます:
左側のコンピューティングタスクリストの上にある
アイコンをクリックして、[フォルダの作成] ダイアログボックスを開きます。[フォルダの作成] ダイアログボックスで、フォルダの [名前] を入力し、[ディレクトリを選択] で場所を選択します。
[OK] をクリックします。
作成方法
次の作成方法のいずれかを選択できます: 空のタスクを作成、サンプルコードを参照、またはテンプレートを使用。
空のタスクを作成: 空の Flink SQL タスクを作成します。
サンプルコードを参照: 組み込みのサンプルコードを使用してタスクを作成します。
テンプレートを使用: リアルタイムコンピューティングタスクテンプレートに基づいてタスクを作成します。
説明
Flink SQL タスクの簡単な説明を入力します。説明の長さは最大 1,000 文字です。
[OK] をクリックします。
ステップ 2: Flink SQL タスクコードの開発とプリコンパイル
Flink SQL タスクのコードページで、タスクコードを記述します。
Dataphin では、ネイティブのデータ定義言語 (DDL) 文を使用してメタテーブルを迅速に作成できます。Dataphin がネイティブの
create table/create temporary table文を検出した場合、エディターの
プロンプトアイコンをクリックしてメタテーブルを迅速に作成できます。詳細については、「Flink SQL タスクの開発メソッド」をご参照ください。コードの記述が完了したら、上部のメニューバーにある [フォーマット] ボタンをクリックして、SQL コードを自動的にフォーマットします。
上部のメニューバーにある [プリコンパイル] をクリックして、コードの構文と必要な権限を確認します。
プリコンパイルが成功した場合、[プリコンパイル成功] というメッセージが表示されます。プリコンパイルが失敗した場合、[プリコンパイル失敗] というメッセージが表示されます。ページ下部の [コンソール] をクリックして、失敗ログを表示できます。
ステップ 3: Flink タスクの構成
エディターサイドバーの[構成] をクリックします。
構成ダイアログボックスで、Flink タスクの [リアルタイムモード] と [オフラインモード] を構成できます。
説明Dataphin のリアルタイムコンピューティングは、統一されたコンピューティングエンジンを使用して、ストリームとバッチの統合タスクをサポートします。単一のコードベースで [ストリームとバッチ] の両方のタスク設定を構成し、異なるモードでインスタンスを生成できます。バッチ処理を有効にするには、タスク構成ページでオフラインモードを有効にし、リソースやスケジューリング依存関係などの設定を構成します。

リアルタイムモード
リソース構成 (必須): 本番環境と開発環境におけるタスクのリソースキュー、エンジンバージョン、並列処理の次数、Task Manager 数、Job Manager メモリ、および Task Manager メモリを構成します。詳細については、「Ververica Flink リアルタイムモードリソースの構成」をご参照ください。
変数構成: コンピューティングタスクコードで使用される変数に値を割り当てます。これにより、実行中に変数が割り当てられた値に自動的に置き換えられます。詳細については、「リアルタイムモードの変数構成」をご参照ください。
チェックポイント構成: Flink SQL タスクのチェックポイントを構成します。チェックポイントにより、予期せぬ障害でプログラムが再起動した場合に、タスクをクラッシュ前の状態に復元できます。詳細については、「リアルタイムモードのチェックポイント構成」をご参照ください。
State 構成: State 内のデータを自動的にクリーンアップする間隔を構成します。詳細については、「リアルタイムモードの State 構成」をご参照ください。
実行時パラメーター: Flink アプリケーションの実行動作とパフォーマンスを制御するための実行時パラメーターを構成します。詳細については、「リアルタイムモードの実行時パラメーター構成」をご参照ください。
依存ファイル: タスクが依存するリソースファイルを構成します。 詳細については、「リアルタイムモード依存ファイル構成」をご参照ください。
依存関係: 依存関係を構成すると、トラブルシューティングやデバッグの際にアップストリームタスクとダウンストリームタスクを迅速に把握するのに役立ちます。詳細については、「リアルタイムモードの依存関係構成」をご参照ください。
オフラインモード (ベータ)
重要プロジェクトのリアルタイムコンピューティングソースが Kubernetes (k8s) デプロイメントモードを使用するオープンソースの Flink クラスターである場合、オフラインモードはサポートされません。
リソース構成 (必須): 本番環境と開発環境におけるタスクのリソースキュー、エンジンバージョン、並列処理の次数、Task Manager 数、Job Manager メモリ、および Task Manager メモリを構成します。詳細については、「オープンソース Flink オフラインモードリソースの構成」をご参照ください。
変数構成: コンピューティングタスクコードで使用される変数に値を割り当てます。これにより、実行中に変数が割り当てられた値に自動的に置き換えられます。詳細については、「オフラインモードの変数構成」をご参照ください。
実行時パラメーター: Flink アプリケーションの実行動作とパフォーマンスを制御するための実行時パラメーターを構成します。詳細については、「オフラインモードの実行時パラメーター構成」をご参照ください。
依存ファイル: Flink SQL タスクが依存するリソースファイルを構成します。 詳細については、「オフラインモード依存ファイル構成」をご参照ください。
スケジューリング構成 (必須): 本番環境でノードが定期的にスケジューリングされる方法を定義します。スケジューリングプロパティを使用して、タスクのスケジューリング周期と有効日を構成できます。詳細については、「オフラインモードのスケジューリング構成」をご参照ください。
依存関係 (必須): 依存関係を構成すると、トラブルシューティングやデバッグの際にアップストリームタスクとダウンストリームタスクを迅速に把握するのに役立ちます。詳細については、「オフラインモードの依存関係構成」をご参照ください。
[OK] をクリックします。
ステップ 4: Flink タスクコードのデバッグ
Dataphin で Flink コードをデバッグできます。上部のメニューバーにある [デバッグ] ボタンをクリックして、タスクのデータをサンプリングし、ローカルデバッグを実行してコードが正しいことを確認します。
デバッグ構成ダイアログボックスで、[リアルタイムモード - FLINK ストリームタスク] (リアルタイムモードデバッグ) または[オフラインモード - FLINK バッチタスク] (オフラインモードデバッグ) を選択します。
リアルタイムモードデバッグ: このモードでは、対応するリアルタイム物理テーブルからデータをサンプリングし、Flink ストリームモードでローカルデバッグを実行します。詳細については、「リアルタイムモードデバッグ」をご参照ください。
オフラインモードデバッグ: このモードでは、対応するオフライン物理テーブルからデータをサンプリングし、Flink バッチモードでローカルデバッグを実行します。詳細については、「オフラインモードデバッグ」をご参照ください。
現在、一度に 1 つのモードでのみデバッグできます。モードを選択すると、対応するテーブルからデータがサンプリングされてデバッグが行われます。
ステップ 5: Flink SQL タスクの送信
上部にあるメニューバーの [送信] ボタンをクリックします。
[送信] ダイアログボックスで、[送信内容] と [事前チェック] 情報を確認し、[送信備考] を入力します。
[OKして送信] をクリックします。
プロジェクトが Dev-Prod モードの場合、Flink SQL タスクを本番環境に公開する必要があります。詳細については、「公開タスクの管理」をご参照ください。
次のステップ
タスクが正常に送信された後、オペレーションセンターでその運用保守 (O&M) を表示および管理して、タスクが正常に実行されることを確認できます。詳細については、「リアルタイムタスクの表示と管理」をご参照ください。