我正在使用Sqoop在MySQL和HDFS之间导入文件。当我工作时,我的主目录中自动生成了两个java文件。当我打开文件时,它包含的代码与Sqoop命令的工作方式相同。以下是我的sqoop代码,
sqoop import --connect "jdbc:mysql://quickstart.cloudera:3306/database" --username root --password cloudera --query 'select * from table1 WHERE $CONDITIONS' --where "col1 != NULL OR col2 != NULL OR col3 != NULL OR col4 != NULL" --direct --target-dir '/user/cloudera/input/table1' --fields-terminated-by '|' --lines-terminated-by '\n' -m 1
我不知道它是如何产生的。删除java文件后,我重新运行了代码,这次没有生成它们。任何人都可以告诉我它是如何生成的,以及如何生成等效的java代码文件,以及这个过程是关于什么的? 提前谢谢。
答案 0 :(得分:0)
为什么要生成它们?
Sqoop调用用Java编写的map reduce程序。默认它的路径在您的主目录中
你可以改变它的路径
通过将参数传递给Sqoop命令。即。 :--outdir
将生成Java类文件以导入数据。如果删除它,将生成类文件,并且它是tablename之后的名称。
您可以参考此链接