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

Realtime Compute for Apache Flink:Debug a SQL draft

最終更新日:Jun 16, 2026
[INFO] Doc info: docId=7605350, topicId=2002170, spaceId=133 [INFO] Document content read: nodeId=2608841, 26864 chars SQL ドラフトのデバッグ

デバッグは、本番環境のシンクにデータを書き込むことなく、ジョブの実行をシミュレートして SQL 文のビジネスロジックを検証します。デバッグセッション中、シンクテーブルの種類に関わらず、データがダウンストリームシステムに到達することはありません。

デバッグは、以下の目的で使用します。

  • ライブのアップストリームデータまたは指定したテストデータを使用して、SELECT 文または INSERT 文をテストする。

  • 複数の SELECT 文または INSERT 文を含むジョブを検証する。

  • UPSERT クエリを、count(*) のような更新操作のあるステートメントを含めて検証してください。

制限事項

  • SQL ジョブのみがサポートされています。

  • CREATE TABLE AS SELECT (CTAS) 文および CREATE DATABASE AS (CDAS) 文はサポートされていません。

  • デフォルトでは、Flink は 1,000 レコードを読み取った後に一時停止します。

  • 各デバッグセッションは 3 分に制限されています。

前提条件

開始する前に、以下が準備できていることを確認してください。

  • 実行中の Realtime Compute for Apache Flink ワークスペース

  • ETL ページに有効な SQL 文が記述された SQL ドラフト

  • セッションクラスターを作成し、デバッグタスクを実行するための十分な権限

ステップ 1:セッションクラスターの作成

デバッグはセッションクラスター上で実行されます。セッションクラスターは開発およびテスト専用に設計されています。本番環境では使用しないでください。

  1. Flink コンソールで、対象のワークスペースを開きます。

  2. 左側メニューで、[O&M] > [Session Clusters] を選択します。

  3. [Create Session Cluster] をクリックします。

  4. 以下のセクションで説明するパラメーターを設定し、[Create Session Cluster] をクリックします。

基本設定

パラメーター

説明

[Name]

セッションクラスターの名前。

[Deployment Target]

セッションクラスターを実行するリソースキュー。詳細については、「キューの管理」をご参照ください。

[State]

作成後の望ましい状態。[RUNNING]:クラスターはすぐに起動します。[STOPPED]:クラスターは作成されますが、起動はしません。

[Scheduled Session Management]

指定した期間ジョブが実行されていない場合に、クラスターを自動的にシャットダウンします。アイドル状態のクラスターによるリソースの浪費を防ぎます。

[Labels]

概要ページでジョブをフィルタリングするためのタグ。

エンジンと再起動設定

パラメーター

説明

[Engine Version]

VVR エンジンバージョン。[Recommended] または [Stable] バージョンを選択します。詳細については、「エンジンバージョン」および「ライフサイクルポリシー」をご参照ください。

[Flink Restart Policy]

タスクが失敗したときの再起動動作。

  • [Failure Rate]:設定可能な間隔内の失敗率に基づいて再起動します。

  • [Fixed Delay]:設定した回数、固定の間隔で再起動します。

  • [No Restarts]:失敗時にジョブは再起動しません。

未設定の場合、デフォルトの再起動戦略が適用されます。つまり、チェックポイントがオフの場合、JobManager はタスクの失敗時に再起動せず、チェックポイントがオンの場合は再起動します。

[Other Configuration]

追加の Flink 設定項目(たとえば、taskmanager.numberOfTaskSlots: 1)。

リソース設定

パラメーター

説明

[Number of TaskManagers]

デフォルトでは、この値は並列度と等しくなります。

[JobManager CPU Cores]

デフォルト:1。

[JobManager Memory]

最小:1 GiB。推奨:4 GiB。

[TaskManager CPU Cores]

デフォルト:2。

[TaskManager Memory]

最小:1 GiB。推奨:8 GiB。

スロットサイジングの推奨事項:

ワークロード

スロットあたりの vCPU

スロットあたりのメモリ

小規模ジョブ (並列度 1)

1

2 GiB

複雑なジョブ

1

4 GiB

TaskManager あたり 2 スロットというデフォルト設定から始めてください。

重要

単一の TaskManager のリソースが少なすぎると、ジョブの安定性が低下し、TaskManager のオーバーヘッドをスロット間で共有できなくなります。単一の TaskManager のリソースが多すぎると、その TaskManager での障害が一度に多くのジョブに影響を与えます。

ログ設定

パラメーター

説明

[Root Log Level]

ログレベルは、重大度の低い順に TRACE、DEBUG、INFO、WARN、ERROR となります。

[Log Levels]

クラス名とログレベル。

[Logging Profile]

システムテンプレートまたはカスタムテンプレート。

説明

Kubernetes や YARN などのリソースオーケストレーションフレームワークと Flink の統合に関連するオプションについては、「リソースオーケストレーションフレームワーク」をご参照ください。

セッションクラスターを作成した後、ETL ページでデバッグセッションを開始する際にそのクラスターを選択できます。

ステップ 2:SQL ドラフトのデバッグ

  1. ETL ページで、ジョブの SQL コードを記述または開きます。詳細については、「ジョブ開発の概要」をご参照ください。

  2. [Debug] をクリックします。セッションクラスターを選択し、[Next] をクリックします。

  3. テストデータソースを設定します。

    • [Live data]:ライブのアップストリームデータを使用するには、変更を加えずに [Confirm] をクリックします。

    • [Test data]:テストデータを使用するには、[Download mock data template] をクリックして、ソーステーブルのスキーマに一致する CSV テンプレートを取得します。テンプレートにデータを入力してアップロードし、[Use mock data] を選択します。

    オプション

    説明

    [Download mock data template]

    ソーステーブルのスキーマに一致する CSV テンプレートをダウンロードします。

    [Upload mock data]

    テストデータを含む CSV ファイルをアップロードします。ファイルにはヘッダー行 (例: id(INT)) を含める必要があります。最大ファイルサイズ:1 MB または 1,000 レコード。

    [Data Preview]

    テストデータをアップロードした後、ソーステーブル名の横にある展開アイコン (+) をクリックしてデータをプレビューします。

    [Debug code preview]

    変更された DDL 文をプレビューします。デバッグはソーステーブルとシンクテーブルの DDL 文を自動的に変更しますが、実際のジョブコードは変更しません。

  4. [OK] をクリックします。デバッグ結果が SQL エディターの下に表示されます。

トラブルシューティング

問題

原因

解決策

[Debug] ボタンがグレーアウト表示される

実行中のセッションクラスターがない

[O&M] > [Session Clusters] でセッションクラスターを作成して起動します。

デバッグセッションがタイムアウトする

各セッションは 3 分に制限されている

クエリを単純化するか、入力データ量を減らします。

デバッグ結果が空になる

ソーステーブルにデータがない、またはテストデータが無効

データプレビューを確認します。テストデータを使用している場合は、CSV 形式とヘッダー行を検証します。

セッションクラスターのハートビートタイムアウト

クラスター上で実行されているジョブが多すぎる

同時実行ジョブの数を減らすか、ハートビートの間隔とタイムアウトを増やします。

予期しないデバッグ出力

DDL の自動変更が表示されない

変更された DDL 文を確認するには、[Debug code preview] を確認します。

次のステップ