运行 impala shell 和 sql 有参数的脚本有什么办法吗?

Is there any way to run impala shell with sql script with parameters?

有什么方法可以 运行 impala shell 和 SQL 带参数的脚本吗?

例如:

impala-shell -f /home/john/sql/load.sql /dir1/dir2/dir3/data_file

我遇到错误:

Error, could not parse arguments "-f /home/john/sql/load.sql /dir1/dir2/dir3/data_file”

不,您可以用 -f 指定一个包含 sql 个语句的文件,但它不带一个参数文件。有关详细信息,请参阅 impala-shell 文档: http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_impala_shell.html

此功能在 CDH 5.7 / Impala 2.5 及更高版本中可用。

--var 选项允许您将替换变量传递给由 impala-shell 会话执行的语句,例如 -f 选项处理的脚本文件中的语句.您在命令行上使用符号 --var=variable_name=value 对替换变量进行编码。在 SQL 语句中,您可以使用符号 ${var:variable_name}.

替换值

直接在文档中查看更多详细信息:https://www.cloudera.com/documentation/enterprise/latest/topics/impala_set.html