我使用sqoop使用以下查询以avro格式将数据从oracle导出到hdfs
sqoop import --connection-param-file ora.properties --connect jdbc:oracle:thin:@//host:port/servicename --username <user> --password-file <password-file> --map-column-java TRADE_NUM=Integer,STRATEGY_NUM=Integer,COMMISSION_AMT=Double,TRADE_INPUT_DT=String --query "SELECT * FROM XYZ WHERE \$CONDITIONS " --target-dir <location on hdfs> --delete-target-dir --split-by TRADE_NUM --verbose --compress --as-avrodatafile
我想从文件传递映射(--map-column-java)而不是从命令行提供,是否有选项可以执行,请建议。
答案 0 :(得分:0)
您可以使用选项文件将参数传递给Sqoop。根据{{3}},您可以使用选项--options-file
来指定包含参数的文件。
使用Sqoop时,为方便起见,可以将不从调用更改为调用的命令行选项放在选项文件中。选项文件是一个文本文件,其中每一行按照命令行中显示的顺序标识选项(...) 可以在命令行中的任何位置指定选项文件,只要其中的选项遵循其他规定的选项排序规则。