HDFS输出组件用于向HDFS数据源写入数据。同步其他数据源的数据至HDFS数据源的场景中,完成源数据的信息配置后,需要配置HDFS输出组件的目标数据源。本文为您介绍如何配置HDFS输出组件。
前提条件
操作步骤
请参见离线管道组件开发入口,进入离线单条管道脚本的开发页面。
按照以下操作指引,进入HDFS输出配置对话框。
单击组件库->单击输出->拖动HDFS输出组件至画布->连接图标->单击配置图标。
在HDFS输出配置对话框,配置参数。
参数
描述
步骤名称
即HDFS输出组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:
只能包含汉字、字母、下划线(_)、数字。
不能超过64个字符。
数据源
选择HDFS类型的数据源。
如果您还没有HDFS类型的数据源,如需创建,单击新建创建数据源。具体操作,请参见创建HDFS数据源。
文件路径
填写文件所在路径。因数据源已经配置
NameNode
,无需填写hdfs://<namenode>:<port>
前缀,只需填写绝对路径。例如,/hadoop/input/file.txt
。系统访问的实际路径为:hdfs://<数据源已经配置的NameNode>:<数据源已经配置的IPC Port><填写的文件路径>
。文件类型
选择将数据转换成存储的文件类型。文件类型包括Text、ORC和Parquet。
文件编码
选择文件编码。文件编码包括UTF-8和GBK。
加载策略
向目标数据源(HDFS数据源)写入数据时,数据写入表中的策略。加载策略包括覆盖数据和追加数据,适用场景说明如下:
覆盖数据:覆盖数据策略下,先删除目标目录下的文件,再新增数据文件。
追加数据:追加数据策略下,直接向目标目录新增数据文件。
行分隔符
文件类型为Text可配置字段之间行分隔符。非必填项。如果您没有填写,则系统自动添加\n作为分隔符。
字段分隔符
文件类型为Text可配置字段之间分隔符。非必填项。如果您没有填写,则系统自动添加英文逗号(,)作为分隔符。
标记完成文件
配置完成文件的路径和格式。有任务级和文件级两种标记完成方式。
任务级:如
/ftpuser/test/SUCCESS
,任务完成后只会生成一个SUCCESS空文件。文件级:使用(*)号作为数据文件名占位符,如
/ftpuser/test/.flg
,将会为每一个数据文件生成一个同名的flg空文件。
合并策略
选择输出数据的线程:
合并:则所有数据会合并成一个文件,采用单线程输出,大文件输出速度会受影响。
重要合并不支持追加数据。
不合并:采用多线程输出,会生成多个文件。
导出压缩文件
支持是否将文件以压缩文件格式导入目标库,可选择不压缩,直接以所选文件类型导出、gzip压缩格式、zip压缩格式。
导出列头
选择是否导出列头:
导出:会在每一个文件中的第一行输出字段名。
不导出:则文件的第一行为数据。
输入字段
为您展示上游组件输出字段。
输出字段
为您展示输出字段。 Dataphin支持通过批量添加和新建输出字段的方式配置输出字段:
批量添加:单击批量添加,支持JSON、TEXT格式批量配置。
以JSON格式批量配置,例如:
// 示例: [{"name": "user_id","type": "String"}, {"name": "user_name","type": "String"}]
说明name表示引入的字段名称,type表示引入后的字段类型。 例如:
"name":"user_id","type":"String"
表示把字段名为user_id的字段引入,设置字段类型为String。以TEXT格式批量配置,例如:
// 示例: user_id,String user_name,String
行分隔符用于分隔每个字段的信息,默认为换行符(\n),可支持换行符(\n)、分号(;)、点(.)。
列分隔符用于分隔字段名与字段类型,默认英文逗号(,)。
新建输出字段。
单击+新建输出字段,根据页面提示填写字段及选择类型。
复制上游字段。
单击复制上游字段,系统将根据上游的字段名自动生成输出字段。
管理输出字段。
同时您也可以对已添加的字段执行如下操作:
单击操作列下的图标,编辑已有的字段。
单击操作列下的图标,删除已有的字段。
映射关系
映射关系用于将源表的输入字段和目标表的输出字段映射起来,便于后续进行数据同步。映射关系包括同名映射和同行映射。适用场景说明如下:
同名映射:对字段名称相同的字段进行映射。
同行映射:源表和目标表的字段名称不一致,但字段对应行的数据需要映射。只映射同行的字段。
单击确认,完成HDFS输出组件的配置。