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 を参照 |