我不明白这个示例代码中的jar和class-name是什么

时间:2018-01-15 10:02:00

标签: hadoop merge hdfs sqoop

我正在尝试使用sqoop合并hdfs上的增量数据,这是我在Google https://developer.ibm.com/hadoop/2017/02/28/typical-scenario-sqoop-incremental-import-merge/上找到的示例代码 我不明白那里的那个jar文件和class-name,我应该提供哪个jar文件的路径以及什么类名? 有人可以帮我理解吗?谢谢。

sqoop merge --new-data /apps/hive/warehouse/student/part-m-00000
--onto /apps/hive/warehouse/student/part-m-00000_copy_1
--target-dir /tmp/sqoop_merge
--jar-file /tmp/sqoop-ambari-qa/compile/9062c87c959e4090dcec5995a439b514/TIME.jar
--class-name TIME
--merge-key TIME

1 个答案:

答案 0 :(得分:1)

我使用Codegen创建jar文件以后也可以看到类名。这是我发现创建jar文件的代码,

sqoop codegen \
--connect jdbc:sqlserver://localhost/<db> \
--username <username> --password <password> \ 
--table <tablename from database>

在执行结束时,您将获得类似

的输出
18/01/16 11:44:10 INFO orm.CompilationManager: Writing jar file: /tmp/sqoop-user1/compile/6430d9e2fe24cec8b2cb13f684806ca6/student.jar

之后检查了类名,我做了

$ cd /tmp/sqoop-user1/compile/6430d9e2fe24cec8b2cb13f684806ca6/
:/tmp/sqoop-user1/compile/6430d9e2fe24cec8b2cb13f684806ca6$ ls

这会给你类名,jar等,

student.class  student.jar  student.java

谢谢。