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

操作步骤

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

字段映射类型

KUDU Flink 数据类型
STRING STRING
BOOL BOOLEAN
INT8 TINYINT
INT16 SMALLINT
INT32 INT
INT64 BIGINT
FLOAT FLOAT
DOUBLE DOUBLE
BYTES 由于平台暂不支持 BYTES 字段类型,解析时将置为空,需用户自行调整字段类型
UNIXTIME_MICROS TIMESTAMP(3)
BINARY 由于平台暂不支持 BYTES 字段类型,解析时将置为空,需用户自行调整字段类型
VARBINARY 由于平台暂不支持 BYTES 字段类型,解析时将置为空,需用户自行调整字段类型
CHAR STRING
VARCHAR STRING
DECIMAL 由于 KUDU connector 暂不支持此字段类型,故平台解析时将此字段类型置为空,用户需自行配置

流表配置

配置名称 是否必填 配置生效类型 参数值字段类型 参数默认值 参数说明
primary.keys 必填 目标表 String - kudu表主键,多个使用逗号分隔
update-mode 可选 目标表 String upsert sink 方式,支持的可选项为:append, upsert。
admin.operation.timeout.ms 可选 目标表 Long 30000 设置 creatTable 等操作的 timeout。
operation.timeout.ms 可选 目标表 Long 30000 设置sessions等操作的timeout。
boss.count 可选 目标表 Integer 1 设置最大boss线程数。
worker.count 可选 目标表 Integer - 设置最大worker线程数。默认:jvm中有效线程数的两倍
flush.interval.millis 可选 目标表 Integer 1000 每隔多长时间 flush 数据到 kudu
mutation.buffer.max.ops 可选 目标表 Integer 1000 当 buffer 数据量达到多少时 flush 数据到 kudu
ignore.delete 可选 目标表 Boolean false 是否忽略删除操作
ignore.delete.not.exist.error 可选 目标表 Boolean true 忽略删除不存在数据的异常
flush.mode 可选 目标表 String autoFlushBackground flush 方式,支持到可选项为:autoFlushSync, autoFlushBackground。
create.table.auto 可选 目标表 Boolean true 设置表不存在时自动建表
replicas 可选 目标表 Integer 1 table 副本数

特殊字段规则

数据源 主键 特殊字段类型
Kudu 可设置多个主键且必须设置主键 不支持map、row、array、varbinary、time、date、decimal字段类型;不支持metadata字段