Beam Calcite SQL の概要

Apache Calcite は、ビッグデータ処理で広く使用されている SQL ダイアレクトであり、ストリーミングの拡張機能がいくつか含まれています。Beam Calcite SQL は、デフォルトの Beam SQL ダイアレクトです。

Beam SQL には、Beam の統合されたバッチ/ストリーミングモデルと、複雑なデータ型処理を活用した追加の拡張機能があります。これらの拡張機能は、Beam Calcite SQL を含む、すべての Beam SQL ダイアレクトで使用できます。

クエリ構文

クエリステートメントは、1 つ以上のテーブルまたは式をスキャンし、計算された結果の行を返します。Beam Calcite SQL のクエリステートメントの詳細については、クエリ構文のリファレンスを参照してください。

字句構造

Beam SQL ステートメントは、一連のトークンで構成されています。Beam Calcite SQL のトークンの詳細については、字句構造のリファレンスを参照してください。

データ型

Beam SQL は、標準の SQL スカラデータ型に加え、配列、マップ、ネストされた行を含む拡張機能をサポートしています。Beam Calcite SQL のスカラデータ型の詳細については、データ型のリファレンスを参照してください。

関数と演算子

次の表は、Beam Calcite SQL でサポートされている Apache Calcite の関数と演算子をまとめたものです。

演算子と関数Beam SQL のサポート状況
演算子の優先順位はい
比較演算子Beam SQL スカラ関数を参照
論理演算子Beam SQL スカラ関数を参照
算術演算子と関数Beam SQL スカラ関数を参照
文字列演算子と関数Beam SQL スカラ関数を参照
バイナリ文字列演算子と関数いいえ
日付/時刻関数Beam SQL スカラ関数を参照
システム関数いいえ
条件関数と演算子Beam SQL スカラ関数を参照
型変換はい
値コンストラクターいいえ、配列を除く
コレクション関数いいえ
期間述語いいえ
JDBC 関数エスケープいいえ
集計関数Beam SQL 拡張機能の 集計関数を参照
ウィンドウ関数いいえ
グループ化関数いいえ
グループ化されたウィンドウ関数Beam SQL 拡張機能の ウィンドウ処理とトリガーを参照
グループ化された補助関数はい、SESSION_END を除く
空間関数いいえ
ジオメトリ作成関数 (3D)いいえ
ジオメトリ述語いいえ
JSON 関数いいえ
ユーザー定義関数Beam SQL 拡張機能の ユーザー定義関数を参照してください。名前付きおよびオプションのパラメータを持つ関数を呼び出すことはできません。
MATCH_RECOGNIZEいいえ
DDL 拡張機能Beam SQL 拡張機能の CREATE EXTERNAL TABLE を参照