本页目录




创建DataHub源表

数据总线(DATAHUB)

DataHub作为一个流式数据总线,为阿里云数加平台提供了大数据的入口服务。结合阿里云众多云产品,可以构建一站式的数据处理平台。流计算通常使用DataHub作为流式数据存储头和输出目的端。同时,上游众多流式数据,包括DTS、IOT等均选择DataHub作为大数据平台的数据入口。

DataHub本身是流数据存储,Flink可将其作为批处理的输入。示例如下:




1. create table(
2.  name varchar,
3.  age BIGINT,
4.  birthday BIGINT
5. ) with (
6.  type='datahub',
7.  endPoint='http://dh-et2.aliyun-inc.com',
8.  project='blink_datahub_test',
9.  topic='test_topic_1',
10.  accessId='0i70RRFJXXXX',
11.  accessKey='yF60EwURseo1UAn4NiXXXXXhCfHU',
12.  startTime='2017-07-21 00:00:00',
13.  endTime='2017-07-21 01:00:00',
14.  blinkEnvironmentTypeKey='batchExec'
15. );


注意:

属性字段

目前默认支持的属性字段如下,也支持其他自定义写入的字段:

字段名

注释说明

timestamp

每条记录入datahub的systemtime

属性字段的定义和获取详见获取源表属性字段

WITH参数

目前只支持tuple模式的topic。

参数

注释说明

备注

endPoint

消费端点信息

accessId

读取的accessId


accessKey

读取的密钥


project

读取的项目


topic

project下的具体的topic


startTime

日志开始时间

格式为yyyy-MM-dd hh:mm:ss

maxRetryTimes

读取最大尝试次数

可选,默认为20。

retryIntervalMs

重试间隔

可选,默认为1000。

batchReadSize

单次读取条数

可选,默认为10。

lengthCheck

单行字段条数检查策略

可选,默认为SKIP。其它可选值为EXCEPTIONPADSKIP表示字段数目不符合时跳过 。 EXCEPTION表示字段数目不符合时抛出异常。 PAD表示按顺序填充,不存在的置为null。

columnErrorDebug

是否打开调试开关,如果打开,会把解析异常的log打印出来。

可选,默认为false

isBlob

datahub是否为blob类型

可选,默认为false。2.0.x版本开始支持

endTime

datahub日志数据结束时间

批处理方式读取datahub数据时,必须声明该参数。

注意:使用blob类型时,字段需要声明成varbinary类型,与metaq类似。

类型映射



DataHub和流计算字段类型对应关系,建议您使用该对应关系进行DDL声明。

DataHub字段类型

流计算字段类型

BIGINT

BIGINT

DOUBLE

DOUBLE

TIMESTAMP

BIGINT

BOOLEAN

BOOLEAN

DECIMAL

DECIMAL



实时计算—— 创建DataHub源表