创建流表
操作场景
通过数据表,定义源表、维表、输出表的基本属性和字段信息。
新建流表
- 访问Flink WebUI,请参考访问Flink WebUI。
- 单击“流表管理”进入流表管理页面。
- 单击“新建流表”,在新建流表页面参考表1填写信息,单击“确定”,完成流表创建。创建完成后,可在对应流表的“操作”列对流表进行编辑、删除等操作。
表1 新建流表信息 参数名称
参数描述
备注
流/表名称
流/表的名称。
例如:flink_sink
描述
流/表的描述信息。
-
映射表类型
Flink SQL本身不带有数据存储功能,所有涉及表创建的操作,实际上均是对于外部数据表、存储的引用映射。
类型包含Kafka、HDFS、Redis。
-
类型
包含数据源表Source,数据结果表Sink,数据维表Table。不同映射表类型包含的表如下所示。
- Kafka:Source、Sink
- HDFS:Source、Sink
- Redis:Sink、Table
-
数据连接
选择数据连接。
-
Topic
读取的Kafka的topic,支持从多个Kakfa topic中读取,topic之间使用英文分隔符进行分隔。
“映射表类型”选择“Kafka”时存在此参数。
-
文件路径
要传输的HDFS目录或单个文件路径。
“映射表类型”选择“HDFS”时存在此参数。
例如:
“/user/sqoop/ ”或“/user/sqoop/example.csv”
编码
选择不同“映射表类型”对应的编码如下:
- Kafka:CSV、JSON
- HDFS:CSV
- Redis:
- “类型”为“Sink”时:String、List、Set、Zset、Hash
- “类型”为“Table”时:String、Zset
-
前缀
“映射表类型”选择“Kafka”,且“类型”选择“Source”,“编码”选择“JSON”时含义为:多层嵌套json的层级前缀,使用英文逗号(,)进行分隔。
例如:data,info表示取嵌套json中data,info下的内容,作为json格式数据输入
“映射表类型”选择“Redis”时含义为:操作数据时会自动在key上补充前缀或手动输入。
例如:key的值是key1,前缀是test,则最终写入redis的key是test:key1
分隔符
选择不同“映射表类型”对应的含义为:
- Kafka:用于指定CSV字段分隔符。当数据“编码”为“CSV”时存在此参数。
- Redis:字段分隔符。
例如:“,”
行分隔符
文件中的换行符,包含“\r”、“\n”、“\r\n”。
“映射表类型”选择“HDFS”时存在此参数。
-
列分隔符
文件中的字段分隔符。
“映射表类型”选择“HDFS”时存在此参数。
例如:“,”
数据有效期
数据的有效期。分为“永久有效”、“有效时长”和“截止日期”三类。
“映射表类型”选择“Redis”,“类型”选择“Sink”时存在此参数。
-
流/表结构
填写流/表结构,包含名称,类型。
-
Proctime
指系统时间,与数据本身的时间戳无关,即在Flink算子内计算完成的时间。
“类型”选择“Source”时存在此参数。
-
Event Time
指事件产生的时间,即数据产生时自带时间戳。
“类型”选择“Source”时存在此参数。
-