从命令行使用 Sqoop 时,我可以使用ASF 博客中描述的 Oracle Wallet,例如:
export HADOOP_OPTS= "-Doracle.net.tns_admin=$PWD/wallet -Doracle.net.wallet_location=$PWD/wallet"
sqoop import -D mapred.map.child.java.opts= '-Doracle.net.tns_admin=. -Doracle.net.wallet_location=.'
-files $HOME/wallet/cwallet.sso,\
$HOME/wallet/ewallet.p12,\
$HOME/wallet/sqlnet.ora,\
$HOME/wallet/tnsnames.ora \
-connect ‘jdbc:oracle:thin:@w_orcl’ \
<<rest of sqoop options>>
但是,在使用 Sqoop 的开发 API 时,我如何使用 Oracle Wallet,在执行类似...
import com.cloudera.sqoop.SqoopOptions()
import org.apache.sqoop.tool.ImportTool()
val options = new SqoopOptions()
// set the sqoop options here
val importTool = new ImportTool()
importTool.run(options)
...在旨在以编程方式自动执行多个 Sqoop 作业和 SparkSQL 查询的 Spark 作业中?