在这里,我使用java进行增量导入。但我不知道如何使用现有的工作。
我是说
sqoop job --create moviesJob1 -- import --connect jdbc:mysql://localhost/mydb --username root -P --table movies --m 1 --target-dir /movies --incremental append --check-column movieId --last-val 0
SqoopOptions options = new SqoopOptions();
options.setJobName(tableDTO.getTableName()+"Job");
options.setDriverClassName(driver);
options.setHadoopHome(HADOOP_HOME);
options.setConnectString(MYSQL_CONNECTION_STRING);
options.setUsername(USERNAME);
options.setPassword(PASSWORD);
options.setTableName(tableDTO.getTableName());
options.setNumMappers(Integer.parseInt(tableDTO.getNoOfMappers()));
options.setTargetDir(HDFS_DIRECTORY_PATH+"/"+tableDTO.getTableName());
options.setFieldsTerminatedBy('|');
options.setAppendMode(true);
options.setIncrementalMode(IncrementalMode.AppendRows);
options.setIncrementalLastValue("0");
我已经为此编写了代码,现在我必须执行:
sqoop job --exec moviesJob1
要执行此操作:
options.getJobName(); // getting JobName but not finding method to run job
有人能提个建议吗?提前谢谢。
1条答案
按热度按时间djmepvbi1#
尝试以下操作:
或: