本文为您介绍表格存储Tablestore结果表的DDL定义、WITH参数和映射关系。
什么是表格存储Tablestore
表格存储Tablestore是基于阿里云飞天分布式系统的分布式NoSQL数据存储服务。表格存储通过数据分片和负载均衡技术,实现数据规模与访问并发的无缝扩展,提供海量结构化数据的存储和实时访问服务。Flink支持将Tablestore作为流式数据的输出。
DDL定义
CREATE TABLE ots_sink (
name VARCHAR,
age BIGINT,
birthday BIGINT,
primary key(name,age) not enforced
) WITH (
'connector'='ots',
'instanceName'='<yourInstanceName>',
'tableName'='<yourTableName>',
'accessId'='<yourAccessId>',
'accessKey'='<yourAccessSecret>',
'endPoint'='<yourEndpoint>',
'valueColumns'='birthday'
);
说明 Tablestore结果表必须定义有
Primary Key
,输出数据以Update方式追加Tablestore表。Update方式说明请参见Update类型。
WITH参数
参数 | 说明 | 是否必填 | 备注 |
---|---|---|---|
connector | 结果表类型 | 是 | 固定值为ots 。
|
instanceName | 实例名 | 是 | 无 |
tableName | 表名 | 是 | 无 |
endPoint | 实例访问地址 | 是 | 参见服务地址。 |
accessId | AccessKey ID | 是 | 无 |
accessKey | AccessKey Secret | 是 | 无 |
valueColumns | 指定插入的字段列名 | 是 | 多个字段以英文逗号(,)分割,例如ID,NAME 。
|
bufferSize | 流入多少条数据后开始输出 | 否 | 默认值为5000,表示输入的数据达到5000条就开始输出。 |
batchWriteTimeoutMs | 写入超时的时间 | 否 | 单位为毫秒,默认值为5000。表示如果缓存中的数据在等待5秒后,依然没有达到输出条件,系统会自动输出缓存中的所有数据。 |
batchSize | 一次批量写入的条数 | 否 | 默认值为100。 |
retryIntervalMs | 重试间隔时间 | 否 | 单位为毫秒,默认值为1000。 |
maxRetryTimes | 最大重试次数 | 否 | 默认值为10。 |
ignoreDelete | 是否忽略DELETE操作 | 否 | 默认值为False。 |
connectTimeout | Connector连接Tablestore的超时时间 | 否 | 单位毫秒,默认值为30000(30秒)。 |
socketTimeout | Connector连接Tablestore的Socket超时时间 | 否 | 单位毫秒,默认值为30000(30秒)。 |
类型映射
Tablestore字段类型 | Flink字段类型 |
---|---|
INTEGER | BIGINT |
STRING | STRING |
BOOLEAN | BOOLEAN |
DOUBLE | DOUBLE |
在文档使用中是否遇到以下问题
更多建议
匿名提交