本文将为您介绍 EasyStream 中如何创建MySQL/Oracle类型流表。

操作步骤

  1. 在流表管理页面,单击目标逻辑库,表单页面左上角显示对应库名表示切换成功。
  2. 单击 创建表 按键,进行表创建。
  3. 选择 数据源类型MySQL/Oracle
  4. 完成剩余表单内容,创建MySQL/Oracle流表。

字段类型映射

MySQL type Oracle type Flink SQL type
TINYINT TINYINT
SMALLINT TINYINT UNSIGNED SMALLINT
INT MEDIUMINT SMALLINT UNSIGNED INT
BIGINT INT UNSIGNED MEDIUMINT UNSIGNED BIGINT
BIGINT UNSIGNED DECIMAL(20, 0)
FLOAT BINARY_FLOAT FLOAT
DOUBLE DOUBLE PRECISION BINARY_DOUBLE DOUBLE
NUMERIC(p, s) DECIMAL(p, s) SMALLINT FLOAT(s) DOUBLE PRECISION REAL NUMBER(p, s) NUMBER(p) DECIMAL(p, s) (p值取默认值10,s值取默认值0)
BOOLEAN TINYINT(1) BOOLEAN
DATE DATE DATE
TIME [(p)] TIME [(p)] [WITHOUT TIMEZONE]
DATETIME [(p)] TIMESTAMP [(p)] [WITHOUT TIMEZONE] TIMESTAMP [(p)] [WITHOUT TIMEZONE]
CHAR(n) VARCHAR(n) TEXT CHAR(n) VARCHAR(n) CLOB STRING
BINARY VARBINARY BLOB RAW(s) BLOB 由于平台暂不支持 BYTES 字段类型,解析时将置为空,需用户自行调整字段类型

特殊字段规则

数据源 特殊字段类型
MySql、Oracle 不支持map、row、array、varbinary字段类型;不支持metadata字段

Oracle 数据源限制说明

若在实时数仓注册流表方式使用,库名、表名含小写、特殊字符都可用,但列名不可小写。

若在SQL中直接以 catalog.db.table 三元组方式使用,特殊字符加号、点号、单引号无法使用,其他情况下,库名、表名含小写、特殊字符(加号、点号、单引号之外)的,需要在名字外加上反引号、双引号,列名也不可小写,参考如下:select * from catalog.`"autotest_%_test"`.`"autotest_%_test2"`