配置HDFS输出组件

HDFS输出组件用于向HDFS数据源写入数据。同步其他数据源的数据至HDFS数据源的场景中,完成源数据的信息配置后,需要配置HDFS输出组件的目标数据源。本文为您介绍如何配置HDFS输出组件。

前提条件

  • 已创建HDFS数据源,如何创建,请参见创建HDFS数据源

  • 进行HDFS输入组件属性配置的账号,需具备该数据源的同步写权限。如果没有权限,则需要申请数据源权限,详情请参见申请数据源权限

操作步骤

  1. 请参见离线管道组件开发入口,进入离线单条管道脚本的开发页面。

  2. 按照以下操作指引,进入HDFS输出配置对话框。

    单击组件库->单击输出->拖动HDFS输出组件至画布->连接image图标->单击配置image图标。

    image

  3. HDFS输出配置对话框,配置参数。

    参数

    描述

    步骤名称

    即HDFS输出组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:

    • 只能包含汉字、字母、下划线(_)、数字。

    • 不能超过64个字符。

    数据源

    选择HDFS类型的数据源。

    如果您还没有HDFS类型的数据源,如需创建,单击新建创建数据源。具体操作,请参见创建HDFS数据源

    文件路径

    填写文件所在路径。因数据源已经配置NameNode,无需填写hdfs://<namenode>:<port>前缀,只需填写绝对路径。例如,/hadoop/input/file.txt。系统访问的实际路径为:hdfs://<数据源已经配置的NameNode>:<数据源已经配置的IPC Port><填写的文件路径>

    文件类型

    选择将数据转换成存储的文件类型。文件类型包括TextORCParquet

    文件编码

    选择文件编码。文件编码包括UTF-8GBK

    加载策略

    向目标数据源(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)、分号(;)、点(.)。

        • 列分隔符用于分隔字段名与字段类型,默认英文逗号(,)。

    • 新建输出字段。

      单击+新建输出字段,根据页面提示填写字段及选择类型

    • 复制上游字段。

      单击复制上游字段,系统将根据上游的字段名自动生成输出字段。

    • 管理输出字段。

      同时您也可以对已添加的字段执行如下操作:

      • 单击操作列下的agag图标,编辑已有的字段。

      • 单击操作列下的agfag图标,删除已有的字段。

    映射关系

    映射关系用于将源表的输入字段和目标表的输出字段映射起来,便于后续进行数据同步。映射关系包括同名映射和同行映射。适用场景说明如下:

    • 同名映射:对字段名称相同的字段进行映射。

    • 同行映射:源表和目标表的字段名称不一致,但字段对应行的数据需要映射。只映射同行的字段。

  4. 单击确认,完成HDFS输出组件的配置。