Impala 操作命令
Impala的外部shell
选项  | 描述  | 
-h, --help  | 显示帮助信息  | 
-v or --version  | 显示版本信息  | 
-i hostname, --impalad=hostname  | 指定连接运行 impalad 守护进程的主机。默认端口是 21000。  | 
-q query, --query=query  | 从命令行中传递一个shell 命令。执行完这一语句后 shell 会立即退出。  | 
-f query_file, --query_file= query_file  | 传递一个文件中的 SQL 查询。文件内容必须以分号分隔  | 
-o filename or --output_file filename  | 保存所有查询结果到指定的文件。通常用于保存在命令行使用 -q 选项执行单个查询时的查询结果。  | 
-c  | 查询执行失败时继续执行  | 
-d default_db or --database=default_db  | 指定启动后使用的数据库,与建立连接后使用use语句选择数据库作用相同,如果没有指定,那么使用default数据库  | 
-r or --refresh_after_connect  | 建立连接后刷新 Impala 元数据  | 
-p, --show_profiles  | 对 shell 中执行的每一个查询,显示其查询执行计划  | 
-B(–delimited)  | 去格式化输出  | 
–output_delimiter=character  | 指定分隔符  | 
–print_header  | 打印列名  | 
1、连接指定hadoop101的impala主机
impala-shell -i cdh02

2、使用-q查询表中数据,并将数据写入文件中
impala-shell -q 'select * from hive_test.student' -o output.txt
3、查询执行失败时继续执行
vim impala.sql select * from hive_test.student; select * from hive_test.stu; select * from hive_test.student; impala-shell -f impala.sql; impala-shell -c -f impala.sql;
4、在Hive中创建表后,使用-r刷新元数据
impala-shell -r
5、显示查询执行计划
impala-shell -p select * from student;
Impala的内部shell
选项  | 选项  | 
help  | 显示帮助信息  | 
explain <sql>  | 显示执行计划  | 
profile  | (查询完成后执行) 查询最近一次查询的底层信息  | 
shell <shell>  | 不退出impala-shell执行shell命令  | 
version  | 显示版本信息(同于impala-shell -v)  | 
connect  | 连接impalad主机,默认端口21000(同于impala-shell -i)  | 
refresh <tablename>  | 增量刷新元数据库  | 
invalidate metadata  | 全量刷新元数据库(慎用)(同于 impala-shell -r)  | 
history  | 历史命令  | 
1、查看执行计划
[cdh02:21000] default> explain select * from student;
2、查询最近一次查询的底层信息
[cdh02:21000] default> select count(*) from student; [cdh02:21000] default> profile;
3、查看HDFS及Linux文件系统
[cdh02:21000] default> shell hadoop fs -ls /; [cdh02:21000] default> shell ls -al ./;
4、刷新指定表的元数据
hive> load data local inpath '/mnt/student.txt' into table student; [cdh02:21000] default> select * from student; [cdh02:21000] default> refresh student; [cdh02:21000] default> select * from student;



