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

Realtime Compute for Apache Flink:コードテンプレート

最終更新日:Mar 07, 2026

Fully managed Flink は、豊富なコードテンプレートを提供します。各テンプレートには、特定の利用シーン、コードサンプル、および手順が含まれています。これらのテンプレートを活用することで、Flink の特徴や構文を迅速に理解し、ビジネスロジックを実装できます。本トピックでは、コードテンプレートの利用シーンおよび使用手順について説明します。

制限事項

コードテンプレートは、リアルタイムコンピューティングエンジンのバージョン vvr-4.0.12-flink-1.13 以降でのみサポートされます。

注意事項

テンプレートに `INSERT INTO` 文が含まれていない場合、ジョブをデプロイできません。

サポートされるテンプレート

以下の表は、Fully managed Flink でサポートされるテンプレートとその利用シーンを示しています。最新の情報については、コンソールをご参照ください。

カテゴリ

テンプレート名

利用シーン

基本テンプレート

Create Table

テーブルを作成し、カタログに保存するには、データ定義言語 (DDL) 文を使用します。テーブルに対する操作は、データベースに対する操作と同様です。

Create Temporary Table

テーブルを現在のセッションまたは SQL スクリプト内でのみ使用する場合、一時テーブルを使用します。

Create Temporary View

Flink SQL におけるコードの再利用、長時間実行されるクエリの整理、または開発の簡素化を行うには、一時ビューを使用します。

INSERT INTO

クエリ結果を外部ストレージシステム上のテーブルに書き込むには、`INSERT INTO` 構文を使用します。これにより、後続アプリケーションで結果を利用できます。

STATEMENT SET

クエリ結果を 2 つ以上の後続外部システムに書き込むには、`STATEMENT SET` 構文を使用します。

Watermark

Flink が不規則な順序で到着するデータを正しく処理できるようにするには、ウォーターマークを使用します。ウォーターマークは、テーブルの DDL 文内で定義できます。具体的には、既存のフィールドに対してウォーターマーク生成式を作成し、そのフィールドを時刻属性としてマークします。詳細については、「イベント時刻とウォーターマーク」をご参照ください。

集約および分析

GROUP BY

リアルタイムでデータを集約・分析するには、`GROUP BY` 句を使用します。

Tumbling window aggregation

時系列データをグループ化し、各グループ内のデータに対して集約・分析を行うには、タンブリング ウィンドウを使用します。

Sliding window aggregation

指定された間隔でウィンドウ内のデータを更新するには、スライドウィンドウを使用します。

Cumulative window aggregation

計算結果を早期に確認できるようにするには、累積ウィンドウ(Cumulative window)を使用します。たとえば、毎分最新のウィンドウ結果を表示できます。

説明

累積ウィンドウ集約は、変更データキャプチャ(CDC)をサポートしていません。CDC を使用した状態でこの集約を実行すると、構文検証エラーが発生します:org.apache.flink.table.api.TableException: Not supported window type: CUMULATE(max_size=[xxx ms], step=[xxx min])

Session window aggregation

アクティブなセッション中にユーザーのデータに関するリアルタイム統計情報を収集するには、セッションウィンドウを使用します。

Over window aggregation

ウィンドウ内の各要素に対して統計分析を行うには、OVER ウィンドウを使用します。

Cascading window aggregation

同一のストリームから、1 分、5 分、30 分、1 時間など異なる時間軸にわたって同時にデータを集約するには、カスケードウィンドウを使用します。

Deduplication template

Deduplication

データストリームから重複データを削除するには、重複排除構文を使用します。

Top-N テンプレート

Top-N

ビジネス要件に基づいて上位または下位 N 件のレコードを算出するには、Top-N 構文を使用します。

Window Top-N

特定の時間範囲内で上位または下位 N 件のレコードを算出するには、ウィンドウ Top-N 構文を使用します。

CEP テンプレート

パターン検出(CEP)

データストリーム内で一連のイベントパターンを検索するには、`MATCH_RECOGNIZE` 構文を使用します。

結合(Join)テンプレート

Regular Join

他のデータストリームと結合してデータを照会・計算するには、通常の結合(Regular Join)を使用します。

Interval Join

指定された時間範囲内でテーブルのデータと結合するには、インターバル結合(Interval Join)を使用します。

Temporal table join

ストリーム内の各レコードを、別のテーブル内の対応するバージョン管理済みデータと結合するには、時系列テーブル結合(Temporal table join)を使用します。

Dimension table join

静的なディメンションテーブルとデータを結合するには、ディメンションテーブル結合(Dimension table join)を使用します。

操作手順

本セクションでは、Create Table テンプレートを例として、コードテンプレートの使用方法を説明します。

  1. まず、リアルタイムコンピューティングコンソールにログインします。

  2. 対象のワークスペースの [操作] 列で、[コンソール] をクリックします。

  3. DataStudio > ETL」ページで、[新規作成] をクリックします。

  4. [SQL 基本テンプレート] タブで、目的のテンプレートをダブルクリックします。または、テンプレートを選択して、右下の隅にある [次へ] をクリックすることもできます。

    image..png

  5. 必要に応じて、[ファイル名][ストレージの場所][エンジンバージョン]、および SQL コードを変更できます。

    image..png

  6. [作成] をクリックします。

    その後の手順は、標準的なジョブ開発と同様です。詳細については、「ジョブ開発マップ」をご参照ください。