Impala 使用Impala Shell


您可以使用Impalashell工具(impala-shell)来设置数据库和表、插入数据和发出查询。对于即席查询和探索,您可以在交互式会话中提交SQL语句。为了自动化您的工作,您可以指定命令行选项来处理单个语句或脚本文件。该Impala shell解释接受所有列出的相同的SQL语句,Impala SQL语句,再加上一些只有shell的命令,你可以使用优化性能和诊断问题。

impala-shell命令适合熟悉的Unix工具链:

  • -q选项允许您从命令行发出单个查询,而无需启动交互式解释器。您可以使用此选项impala-shell从shell脚本内部运行,或者使用Python、Perl或其他类型脚本的命令调用语法运行。
  • -f选项允许您处理包含多个SQL语句(例如一组报告或DDL语句)的文件,以创建一组表和视图。
  • --var选项允许您将替换变量传递给由该impala-shell会话执行的语句,例如由该-f选项处理的脚本文件中的语句。您可以使用符号在命令行上对替换变量进行编码。在SQL语句中,您可以使用表示法替换该值。此功能在Impala2.5及更高版本中可用。--var=variable_name=value${var:variable_name}
  • -o选项允许您将查询输出保存到文件中。
  • -B选项关闭漂亮打印,以便您可以生成逗号分隔、制表符分隔或其他分隔文本文件作为输出。(使用该--output_delimiter选项来选择分隔符;默认为制表符。)
  • 在非交互模式下,查询输出打印到stdout-o选项指定的文件,而附带输出打印到stderr,以便您可以将查询输出作为Unix管道的一部分进行处理。
  • 在交互模式下,impala-shell使用该readline工具调用和编辑以前的命令。