来自oracle的sqoop导入行为

时间:2018-02-27 19:59:22

标签: sqoop

我想使用Sqoop从oracle数据库导入大表到HDFS。 由于表大小很大并且它具有主键,因此sqoop可以并行运行多个映射器。

我在

中有一些问题

1)由于oracle数据库中记录错误,一个映射器出现异常,其他映射器运行正常。因此,所有作业都会失败,或者除了一个映射器数据外,所有其他映射器都会在HDFS中写入数据?

2)如果我们hive -m选项,sqoop是否足够智能以运行并行映射器。 如果我们给-m 4那么sqoop可以根据表大小增加映射器,或者只运行4?

有没有人遇到过这种情况?

1 个答案:

答案 0 :(得分:0)

根据我的知识。

  1. 如果一个映射器失败,sqoop进程将尝试终止其他映射器。该过程不会从HDFS中删除数据。您可以看到在HDFS位置创建了一些数据。

  2. 当我们指定mapper的数量时(使用-m x选项),程序最多只能使用x mapper。