Flink SQL概述
DWS-connector主要实现了DynamicTableSourceFactory和DynamicTableSinkFactory接口,可用于对接DWS表作为Flink作业的源表、结果表和维表。
使用DWS-Connector做源表时,DWS-Connector实现了SupportsLimitPushDown和SupportsFilterPushDown接口,支持将limit和where条件下推到数据库执行。
使用DWS-Connector做结果表时,SQL语法格式可能在不同Flink环境下有细微差异,具体以事件环境格式为准。
详情请参见做源表、做结果表和做维表。其中,编写Flink SQL时,DWS数据类型与Flink SQL数据类型的映射关系如下表所示:
DWS数据类型 | Flink SQL数据类型 | 备注 |
|---|---|---|
TINYINT | TINYINT | -- |
| SMALLINT | -- |
| INT | 其中BINARY_INTEGER为兼容Oracle类型。 |
| BIGINT | -- |
| FLOAT | -- |
| DOUBLE | 其中BINARY_DOUBLE为兼容Oracle类型。 |
| DECIMAL(p, s) | -- |
| BOOLEAN | -- |
DATE | DATE | -- |
TIME [(p)] [WITHOUT TIMEZONE] | TIME [(p)] [WITHOUT TIMEZONE] | -- |
TIMESTAMP [(p)] [WITHOUT TIMEZONE] | TIMESTAMP [(p)] [WITHOUT TIMEZONE] | -- |
TIMESTAMP [(p)] [WITH TIMEZONE] | TIMESTAMP_LTZ [(p)] | -- |
|
| -- |
|
| 其中VARCHAR2(n)、CLOB为兼容Oracle类型。 |
BYTEA | BYTES | -- |
-- |
| 不支持。 |

