离线同步任务支持HDFS数据源,支持该数据源的抽取(Reader)导入(Writer)。此外,HDFS不需要进行数据源登记。

HDFS作为数据来源


HDFS作为数据来源时,数据去向的数据源类型会因为读取方式不同而有所差异,具体配置项如下:

HDFS - 图1

  • 数据源:选择HDFS
  • 数据目录:输入目录路径
  • 读取方式:支持非结构化结构化两种读取方式。当选择非结构化时,数据去向端只支持FTPHDFS两种数据源类型
  • 文件格式:当读取方式为结构化时,支持配置文件格式。文件格式支持text、json、csv、excel、dbf、orc、seq、parquet
  • 特殊字符替换
    1. 不可见字符请使用Unicode编码表示
    2. 使用下列字符:|、^、$、.、*、\、?、+、{ 、}、[、 ]、( 、)时,请在字符前添加"\"来表示。示例:"|"字符表示为"\|"
    3. 需要替换多个特殊字符时,字符间请使用","分隔。不支持替换","字符

HDFS作为数据去向


HDFS作为数据去向时,支持配置如下:

HDFS - 图2

  • 数据源:选择HDFS
  • 数据目录:输入目录路径
  • 目标文件名:支持系统生成指定文件名。选择系统生成,则系统生成随机文件名称;选择指定文件名,支持填写常量、azkaban参数以及常量和azkaban参数,示例:aaa、${azkaban.flow.1.days.ago}、aaa${azkaban.flow.1.days.ago}
  • 文件格式:支持text、orc、parquet
  • 压缩格式
    • 当文件格式为text时,压缩格式支持NoneGZIPBZIP2
    • 当文件格式为orc时,压缩格式支持NoneSNAPPYZLIBLZO
    • 当文件格式为parquet时,压缩格式支持NoneSNAPPYGZIPLZO
  • 同名文件:针对同名文件支持覆盖或者跳过处理策略
  • 生成校验文件:任务运行成功后会在目录下生成校验文件,文件名为“数据文件名称.ok”,如果已经存在则覆盖相关文件。校验文件默认包含:写入行数、写入数据量。支持通过高级设置自定义属性target.flagFileSuffix、target.flagFileItems、target.flagFileSeparator,用来分别配置文件名后缀、检验文件包含内容和检验文件内容分隔符