我正在使用Sqoop 1.4.4及其java api来运行导入作业而我正在使用 一旦导入有问题,找出如何访问作业计数器的麻烦 完成。我在ConfigurationHelper类中看到了合适的方法,比如 getNumMapOutputRecords,但我不确定如何将作业传递给他们。
有没有办法从SqoopTool或Sqoop对象获得工作?
我的代码看起来像这样:
SqoopTool sqoopTool = new ImportTool();
SqoopOptions options = new SqoopOptions();
options.setConnectString(connectString);
options.setUsername(username);
options.setPassword(password);
options.setTableName(table);
options.setColumns(columns);
options.setWhereClause(whereClause);
options.setTargetDir(targetDir);
options.setNumMappers(1);
options.setFileLayout(FileLayout.TextFile);
options.setFieldsTerminatedBy(delimiter);
Configuration config = new Configuration();
config.set("oracle.sessionTimeZone", timezone.getID());
System.setProperty(Sqoop.SQOOP_RETHROW_PROPERTY, "1");
Sqoop sqoop = new Sqoop(sqoopTool, config, options);
String[] nullArgs = new String[0];
Sqoop.runSqoop(sqoop, nullArgs);