欢迎来到代码驿站!

Shell

当前位置:首页 > 脚本语言 > Shell

Impala-shell命令参数的实现

时间:2021-03-29 09:41:49|栏目:Shell|点击:

不多说,直接上干货!

1. impala-shell外部命令

所谓的外部命令指的是不需要进入到impala-shell交互命令行当中即可执行的命令参数。impala-shell后面执行的时候可以带很多参数。你可以在启动 impala-shell 时设置,用于修改命令执行环境。

impala-shell ?Ch可以帮助我们查看帮助手册。

比如几个常见的:

  • impala-shell ?Cr刷新impala元数据,与建立连接后执行 REFRESH 语句效果相同
  • impala-shell ?Cf文件路径 执行指的的sql查询文件。
  • impala-shell ?Ci指定连接运行 impalad 守护进程的主机。默认端口是 21000。你可以连接到集群中运行 impalad 的任意主机。
  • impala-shell ?Co保存执行结果到文件当中去。

在这里插入图片描述

2. impala-shell内部命令

所谓内部命令是指,进入impala-shell命令行之后可以执行的语法。

在这里插入图片描述

connect hostname 连接到指定的机器impalad上去执行。

在这里插入图片描述

refresh dbname.tablename增量刷新,刷新某一张表的元数据,主要用于刷新hive当中数据表里面的数据改变的情况。

在这里插入图片描述

invalidate metadata全量刷新,性能消耗较大,主要用于hive当中新建数据库或者数据库表的时候来进行刷新。

quit/exit命令 从Impala shell中弹出

explain 命令 用于查看sql语句的执行计划。

在这里插入图片描述

explain的值可以设置成0,1,2,3等几个值,其中3级别是最高的,可以打印出最全的信息
set explain_level=3;

profile命令执行sql语句之后执行,可以打印出更加详细的执行步骤,主要用于查询结果的查看,集群的调优等。

在这里插入图片描述

注意:如果在hive窗口中插入数据或者新建的数据库或者数据库表,那么在impala当中是不可直接查询,需要执行invalidate metadata以通知元数据的更新;

在impala-shell当中插入的数据,在impala当中是可以直接查询到的,不需要刷新数据库,其中使用的就是catalog这个服务的功能实现的,catalog是impala1.2版本之后增加的模块功能,主要作用就是同步impala之间的元数据。

更新操作通知Catalog,Catalog通过广播的方式通知其它的Impalad进程。默认情况下Catalog是异步加载元数据的,因此查询可能需要等待元数据加载完成之后才能进行(第一次加载)。

上一篇:自动化下载并检测ftp文件备份的shell脚本

栏    目:Shell

下一篇:Linux 下vim使用教程

本文标题:Impala-shell命令参数的实现

本文地址:http://www.codeinn.net/misctech/90255.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有