分享

sqoop2系统入门之4:用户指南HDFS 连接器

sehriff 2017-8-28 00:19:07 发表于 连载型 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 9827


问题导读

1.HDFS 连接器的用法?
2.如何配置分区器Partitioner?
3.如何配置抽取器Extractor?
4.如何配置加载器Loader?
5.如何配置销毁器Destroyers?





目录
  • 用法
  • 连接配置
  • FROM 作业配置
  • TO 作业配置
  • 分区器Partitioner
  • 抽取器Extractor
  • 加载器Loader
  • 销毁器Destroyers

上一篇:sqoop2系统入门之3:用户指南通用JDBC连接器
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22563


1. 用法
通过创建连接器连接(link)和使用该连接的作业(job)来使用该HDFS连接器。


1.1. 配置连接(link)
配置连接(link)涉及的输入包括:
Input         Type         Description         Example
URI String 可选的。HDFS 文件系统的URI。参考以下注意点。 hdfs://example.com:8020/
Configuration directory String 可选的。集群配置目录的路径。 /etc/conf/hadoop

1.1.1. 注意点
  • 另外指定的URI将会覆盖配置中声明的URI。


1.2. FROM 作业配置
FROM作业涉及的输入包括:
Input         Type         Description         Example
Input directory String 必须的。连接器将会根据该HDFS路径查找文件。参考以下注意点。 /tmp/sqoop2/hdfs
Null value String 可选的。从文件中抽取到的空值用该值代替。参考以下注意点。 N
Override null value Boolean 可选的。连接器根据该值判断是否替换空值。参考以下注意点。 true

1.2.1. 注意点
  • Input directory 内的所有文件都会被抽取。
  • Null value 和override null value是配合使用的。如果override null value没有设置为true,那么在抽取数据时候就不会使用null value。


1.3. TO 作业配置
TO作业涉及的输入包括:

Input                  Type                  Description                  Example
  Output directory String 必须的。连接器将会根据该HDFS路径查找文件。参考以下注意点。 /tmp/sqoop2/hdfs
Output format Enum 可选。将数据输出时采用的数据格式。参考以下注意点。 CSV
Compression Enum 可选。压缩类。参考以下注意点。 GZIP
  Custom compression String  可选。自定义的压缩类。完整类路径。 org.apache.sqoop.SqoopCompression
Null value String 可选的。从文件中抽取到的空值用该值代替。参考以下注意点。 N
  Override null value Boolean 可选的。连接器根据该值判断是否替换空值。参考以下注意点。 true
Append mode Boolean 可选的。追加到已有的文件目录。 true

1.3.1. 注意点

  • Output format 当前只支持CSV。
  • Compression 支持所有Hadoop 压缩类。.
  • Null value 和override null value是配合使用的。如果override null value没有设置为true,那么在抽取数据时候就不会使用null value。

2. 分区器Partitioner
HDFS 连接器的分区器根据指定的输入目录中所有文件的文件块总数将数据分区。文件块将会根据所在的节点和机架划分到不同的分片。

3. 抽取器(Extractor)
在抽取阶段,文件系统API被用于查询HDFS中的文件。使用的HDFS 集群通过以下来定义:
  • 连接配置中的HDFS URI。
  • 连接配置中的Hadoop 配置。
  • 抽取框架所使用的Hadoop配置。


文件格式必须为CSV。CSV文件中的空值可以通过null value设置。例如:
[mw_shl_code=applescript,true]1,\N
2,null
3,NULL[/mw_shl_code]
在上面例子中,如果null value 设置为N ,那么第一行的NULL值就会被转译。

4.加载器(Loader)
在数据加载阶段,使用文件系统API写入HDFS 。新建的文件数等于运行的加载器数目。CSV文件中的空值可以通过null value设置。例如:

Id         Value
1 NULL
2 value
如果null value 设置为N , 那在HDFS中的数据就会像:
[mw_shl_code=applescript,true]1,\N
2,value[/mw_shl_code]

5. 销毁器(Destroyers)
HDFS TO作业的销毁器将所有新建的文件移动到适当的输出路径。




相关篇章


sqoop2系统入门之1:用户指南5分钟入门Demo
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22549


sqoop2系统入门之2汇总:用户指南shell命令【可收藏备查】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22602



sqoop2系统入门之3:用户指南通用JDBC连接器
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22563


sqoop2系统入门之4:用户指南HDFS 连接器
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22564


sqoop2系统入门之5:用户指南Kafka 连接器
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22565


sqoop2系统入门之6之开发指南篇:Sqoop Java 客户端API指南
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22619


sqoop2系统入门之7之开发指南篇:编译Sqoop2源码
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22647


sqoop2系统入门之8之开发指南篇:Sqoop 2开发环境配置
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22659


sqoop2系统入门之9之管理员指南篇:Spoop Tool使用介绍
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22698


sqoop2系统入门之10之管理员指南篇:Spoop2升级
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22705


sqoop2系统入门之11之管理员指南篇:Sqoop安装
http://www.aboutyun.com/forum.php?mod=viewthread&tid=22709



本帖被以下淘专辑推荐:

已有(1)人评论

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条