Hadoop 有没有一种方法可以从sqoop中的文件执行自由形式查询?

Hadoop 有没有一种方法可以从sqoop中的文件执行自由形式查询?,hadoop,sqoop,hadoop2,sqoop2,Hadoop,Sqoop,Hadoop2,Sqoop2,已经执行了类似的sqoop命令,如下所示。下面提到的自由形式查询,我想将其保存在一个文件中并运行sqoop命令,因为我的实时查询非常复杂和庞大 想知道,有没有办法将查询保存在一个文件中并执行sqoop命令,该命令将引用文件中的自由形式查询并执行? 就像我们对密码文件案例所做的那样。提前谢谢 sqoop import --connect "jdbc:mysql://<localhost>:port" --username "admin" --password-file "<pa

已经执行了类似的sqoop命令,如下所示。下面提到的自由形式查询,我想将其保存在一个文件中并运行sqoop命令,因为我的实时查询非常复杂和庞大

想知道,有没有办法将查询保存在一个文件中并执行sqoop命令,该命令将引用文件中的自由形式查询并执行? 就像我们对密码文件案例所做的那样。提前谢谢

sqoop  import --connect "jdbc:mysql://<localhost>:port" --username "admin" --password-file "<passwordfile>" --query "select * from employee" --split-by employee_id --target-dir "<target directory>" --incremental append --check-column employee_id --last-value 0 --fields-terminated-by "|" 
sqoop导入--连接“jdbc:mysql://:port”--用户名“admin”--密码文件”--查询“select*from employee”--按员工id拆分--目标目录”--增量追加--检查列员工id--最后一个值0--以“|”结尾的字段

为了方便起见,可以使用Sqoop
--options file
参数读取不方便输入命令的命令行选项,因此可以使用选项文件读取查询。使用选项文件时,Sqoop命令应与以下类似:

sqoop导入--connect$connect\u string--username$username--password$pwd--options file/home/user/sqoop\u poc/query.txt--target dir$target\u dir--m1

选项文件中的条目应如下所示:

——查询

从TEST_选项中选择*ID Yes,您可以使用shell脚本来实现它,您将在其中读取查询文件并将其作为变量传递。谢谢@sandepsing,我正在以同样的方式实现我的要求。但是,我只是想知道我们是否有sqoop自己的东西来做。谢谢@sandeep singh这会帮我的。再次感谢您的时间。@CodingOwl-如果解决了您的问题,您能接受答案吗。接受兄弟:)