我想使用SQOOP将大表从Oracle数据库导入HDF。由于表尺寸很大,并且具有主键SQoop可以平行运行多个映射器。
我在
中有一些问题1(由于Oracle数据库中的不良记录,一台映射器得到了例外,而其他映射器运行良好。因此,所有工作都会失败或除了一个映射数据以外,所有其他映射者都将在HDFS中写入数据?
2(SQOOP足够智能,如果我们hive -m选项,可以运行并行映射器。如果我们给出-M 4,那么SQoop可以根据表大小增加映射器,或者仅使用4个?
运行?任何身体是否遇到这种情况?
基于我的知识。
-
如果一个映射器失败,则SQOOP进程将尝试杀死其他映射器。该过程不会从HDFS中删除数据。您可以在HDFS位置看到一些数据。
-
当我们指定映射器数(使用-m x选项(时,程序将在X Mapper中使用。