このトピックでは、オープンソースの Flink リアルタイムエンジンに基づいて FLINK_SQL タスクを作成する方法について説明します。
前提条件
開始する前に、プロジェクトでリアルタイムエンジンが有効になっており、計算ソースとしてFlink が構成されていることを確認してください。 詳細については、「汎用プロジェクトを作成する」をご参照ください。
権限の説明
スーパー管理者、プロジェクト管理者、および開発者のみが FLINK_SQL 計算タスクを作成できます。
ステップ 1: FLINK_SQL タスクの作成task
Dataphin ホームページで、上部のナビゲーションバーの[開発] > [データ開発] をクリックします。
上部のナビゲーションバーで、プロジェクト(および開発プロダクションモードを使用している場合は環境)を選択します。
左側のナビゲーションウィンドウで、[データ処理] > [スクリプトタスク] を選択します。 右側の計算タスクリストで、
アイコンをクリックし、[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 タスクコードの開発とプリコンパイルtask code
FLINK_SQL タスクコードページで、タスクコードを記述します。
Dataphin は、ネイティブ DDL 文を使用したメタテーブルの迅速な作成をサポートしています。 Dataphin がネイティブの
create table/create temporary table文を検出すると、エディターで
プロンプトアイコンをクリックして、メタテーブルをすばやく作成できます。 詳細については、「Flink_SQL タスク開発方法」をご参照ください。コードの記述が完了したら、現在の計算タスクの上部メニューバーにある[フォーマット] ボタンをクリックして、SQL コードフォーマットを自動的に調整できます。
上部メニューバーの[プリコンパイル] をクリックして、コードタスクの構文と権限を確認します。
プリコンパイルが成功すると、[プリコンパイル成功] と表示されます。 プリコンパイルが失敗すると、[プリコンパイル失敗] と表示されます。 ページ下部にある[コンソール] をクリックすると、プリコンパイル失敗ログを表示できます。
ステップ 3: FLINK_SQL タスクの構成task
エディターサイドバーの[構成] をクリックします。
構成ダイアログボックスで、FLINK_SQL タスクの[リアルタイムモード] と[オフラインモード] の設定を構成します。
説明Dataphin リアルタイムコンピューティングは、統合ストリームバッチコンピューティングエンジンを使用して、ストリームバッチ統合タスクをサポートしています。 単一のコードベースで[ストリームとバッチ] タスク構成の両方を構成して、同じコードに基づいて異なるモードでインスタンスを生成できます。 バッチ処理を有効にするには、タスク構成ページでオフラインモードを有効にし、関連リソース、スケジューリングの依存関係、およびその他の設定を構成する必要があります。
リアルタイムモード
リソース構成 (必須): 本番環境と開発環境で、タスクのリソースキュー、エンジンバージョン、並列度、Task Manager 数、Job Manager メモリ、および Task Manager メモリを構成します。 詳細については、「Ververica Flink リアルタイムモードリソースの構成」をご参照ください。
変数構成: 変数パラメーター構成では、計算タスクコードで使用される変数に値を割り当て、変数パラメーターを対応する値に自動的に置き換えることができます。 詳細については、「リアルタイムモード変数構成」をご参照ください。
チェックポイント構成: プログラムが予期しないクラッシュ後に再起動されたときに、タスクをクラッシュ前の状態に効果的に復元できるように、Flink SQL タスクのチェックポイントを構成します。 詳細については、「リアルタイムモードチェックポイント構成」をご参照ください。
状態構成: State 内のデータの自動クリーンアップのサイクルを構成します。 詳細については、「リアルタイムモード状態構成」をご参照ください。
ランタイムパラメーター、: ランタイムパラメーターを構成することで、Flink アプリケーションの実行動作とパフォーマンスを制御できます。構成の詳細については、「リアルタイムモードランタイムパラメーター構成」をご参照ください。
依存ファイル: タスクが依存するリソースファイルを構成します。 詳細については、「リアルタイムモード依存ファイル構成」をご参照ください。
依存関係: 依存関係を構成すると、トラブルシューティングとデバッグを行う際に、アップストリームタスクとダウンストリームタスクをすばやく理解できます。 詳細については、「リアルタイムモード依存関係構成」をご参照ください。
オフラインモード (ベータ)
重要プロジェクトにバインドされているリアルタイム計算ソースが、k8s (Kubernetes) のデプロイメントモードのオープンソース Flink の場合、オフラインモードはサポートされていません。
リソース構成 (必須): 本番環境と開発環境で、タスクのリソースキュー、エンジンバージョン、並列度、Task Manager 数、Job Manager メモリ、および Task Manager メモリを構成します。 詳細については、「オープンソース Flink オフラインモードリソースの構成」をご参照ください。
変数構成: 変数パラメーター構成では、計算タスクコードで使用される変数に値を割り当て、変数パラメーターを対応する値に自動的に置き換えることができます。 詳細については、「オフラインモード変数構成」をご参照ください。
ランタイムパラメーター注:: ランタイムパラメーターを構成することで、Flink アプリケーションの実行動作とパフォーマンスを制御できます。構成の詳細については、「オフラインモードランタイムパラメーター構成」をご参照ください。
依存ファイル: Flink SQL タスクが依存するリソースファイルを構成します。 詳細については、「オフラインモード依存ファイル構成」をご参照ください。
スケジューリング構成 (必須): スケジューリング構成では、本番環境でノードを定期的にスケジューリングする方法を定義します。 スケジューリング構成のスケジューリングプロパティを使用して、タスクスケジューリングサイクルと有効日を構成できます。 詳細については、「オフラインモードスケジューリング構成」をご参照ください。
依存関係 (必須): 依存関係を構成すると、トラブルシューティングとデバッグを行う際に、アップストリームタスクとダウンストリームタスクをすばやく理解できます。 詳細については、「オフラインモード依存関係構成」をご参照ください。
[OK] をクリックします。
ステップ 4: FLINK_SQL タスクコードのデバッグtask code
Dataphin は、開発された Flink_SQL コードのデバッグをサポートしています。 上部メニューバーの[デバッグ] ボタンをクリックして、コードタスクのデータをサンプリングし、ローカルデバッグを実行して、コードの正確性を確保します。
デバッグ構成ダイアログボックスで、[リアルタイムモード - FLINK ストリームタスク] (リアルタイムモードデバッグ) または[オフラインモード - FLINK バッチタスク] (オフラインモードデバッグ) を選択します。
リアルタイムモードデバッグ: 対応するリアルタイム物理データをサンプリングし、データサンプリングの完了後に Flink ストリームモードでローカルデバッグを実行します。 詳細については、「リアルタイムモードデバッグ」をご参照ください。
オフラインモードデバッグ: 対応するオフライン物理テーブルデータをサンプリングし、データサンプリングの完了後に Flink バッチモードでローカルデバッグを実行します。 詳細については、「オフラインモードデバッグ」をご参照ください。
現在、シングルモードデバッグのみがサポートされています。 モードを選択した後、対応するモードテーブルデータをサンプリングしてデバッグします。
ステップ 5: Flink SQL タスクの送信
上部にあるメニューバーの [送信] ボタンをクリックします。
[送信] ダイアログボックスで、[送信コンテンツ] と[事前チェック] 情報を確認し、[送信備考] を入力します。
[OK をクリックして送信] をクリックします。
プロジェクトが開発プロダクションモードの場合、Flink SQL タスクを本番環境に公開する必要があります。 詳細については、「公開タスクの管理」をご参照ください。
次のステップ
送信が成功したら、オペレーションセンターで Flink SQL タスクを表示および維持して、タスクが適切に実行されていることを確認できます。 詳細については、「リアルタイムタスクの表示と管理」をご参照ください。