大数据开发之传输组件 Sqoop 的功能介绍
01 Sqoop 介绍
Sqoop 是 Apache 开源的一款工具,主要是针对关系型数据库与 Hadoop 集群之间的数据传输。它可以将关系型数据库中的数据导入至 Hadoop 集群中(即:导入至 Hdfs)。也大数据培训可以将 Hadoop 集群(HDFS)中数据导出至关系型数据库中。Sqoop 就是一款 ETL 工具,它具有高效和大批量数据传输的特性。同时原生 Sqoop 都是采用指令形式提交和触发任务。小伙伴们是不是有淡淡的忧伤,又是指令的方式操作。所以学好指令也很重要哦。
02 Sqoop 功能介绍
sqoop 本身也包含一系列的功能
通过指令查看包含的功能:sqoop help (提示:sqoop help command,用功能指令名称替换 command, 就能查看详细功能说明。例如:sqoop help import,即可了解 import 的详细使用方法)
1、sqoop import 指令
将关系型数据库单表导入 hadoop 集群的 hdfs 中。在导入过程中可自动创建集群接收表,可处理空数据问题等等。
2、sqoop import-all-tables 指令
将关系型数据库中,整库中所有表导入 hadoop 集群。在导入过程中所有表必须有主键,只能导入所有表的所有列,所有表不能有 where 条件。
3、sqoop export 指令
将 hadoop 集群数据导出至关系型数据库中。在导入和导出过程中可设置并发导出,但是不宜太大,有时数据库无法承受。
4、sqoop job 指令
job 指令可以为确认好的导入或导出指令创建一个别名。再次运行时,通过 sqoop job 指令运行别名即可。省略了大段的指令代码。
5、sqoop metastore 指令
可以将本地的 sqoop job 任务,作为共享任务。远程机器可以通过 sqoop job --meat-connect 连接到开启共享的任务并执行,实现远程调用。
6、sqoop list-databases 指令
可查看连接下所有的数据库列表。方便确认连接源。
7、sqoop list-tables 指令
可查看连接下,所有表的列表。
8、sqoop eval 指令
能够通过 eval 进行数据查询或者其它 DML 操作。可进一步确认数据源的正确性。
9、sqoop merge 指令
可对已导入集群的同一表的不同数据块进行合并。确保数据为最新记录。大多情况下数据合并没有使用到 sqoop 的这个功能。基本都是数据开发的小伙伴自己写 Sql 搞定了。
转自数据在此
评论