广告
返回顶部
首页 > 资讯 > 数据库 >Impala Shell命令
  • 916
分享到

Impala Shell命令

ImpalaShell命令 2017-05-10 07:05:43 916人浏览 才女
摘要

整理自尚硅谷Impala笔记,并动手尝试。   一、Impala 的外部Shell 选项 描述 -h, --help 显示帮助信息 -v or

Impala Shell命令

整理自尚硅谷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 或者 --output_file filename

保存所有查询结果到指定的文件。通常用于保存在命令行
使用 -q 选项执行单个查询时的查询结果。
【-c】 查询执行失败时继续执行
-d default_db 或者 --database=default_db 指定启动后使用的数据库,与建立连接后使用 use 语句
选择数据库作用相同,如果没有指定,那么使用 default
数据库

【-r】或者 --refresh_after_connect

建立连接后刷新 Impala 元数据

【-p】 或者 --show_profiles

对 shell 中执行的每一个查询,显示其查询执行计划
-B--delimited 去格式化输出??
--output_delimiter=character 指定分隔符
--print_header 打印列名



【1】从命令行中传递一个 shell 命令。执行完这一语句后shell 会立即退出。

[root@CM-Agent-202 ~]# impala-shell -q "select * from wx.wx_test2";

 

【2】传递一个文件中的 SQL 查询。文件内容必须以分号分隔 -f

查询执行失败时继续执行 -c

【注意】在HDFS用户创建文件(select * from wx.wx_test3; 会报错
[hdfs@hadoop103 ~]$ vim impala.sql【默认创建到本地/var/lib/hadoop-hdfs/impala.sql】
select * from wx.wx_test2;
select * from wx.wx_test3; 
select * from wx.wx_test2;
[hdfs@hadoop103 ~]$ impala-shell -f impala.sql;【报错】
[hdfs@hadoop103 ~]$ impala-shell -c -f impala.sql;
 【报错继续】

【3】建立连接后刷新 Impala 元数据

[hdfs@hadoop103 ~]$ impala-shell -r

【4】对 shell 中执行的每一个查询,显示其查询执行计划

[hdfs@hadoop103 ~]$ impala-shell -p
[hadoop103:21000] > select * from wx.wx_test2;

输出相当多内容

【5】保存所有查询结果到指定的文件。通常用于保存在命令行使用 -q 选项执行单个查询时的查询结果。

[root@CM-Agent-202 ~]# impala-shell -q "select * from wx.wx_test2" -o output.txt

在root下执行,文件保存在服务器本地/root/output.txt 有格式

在hdfs下执行,文件保存在服务器本地/var/lib/hadoop-hdfs/output.txt 有格式

[root@CM-Agent-202 hadoop-hdfs]# vi /var/lib/hadoop-hdfs/output.txt

+----+------+
| id | name |
+----+------+
| 1 | jack |
| 2 | tom |
+----+------+

[root@CM-Agent-202 ~]# impala-shell -B -q "select * from wx.wx_test2" -o output1.txt 
[root@CM-Agent-202 ~]# vi /root/output1.txt

1 jack
2 tom
10 10
 

[root@CM-Agent-202 ~]# impala-shell -B -q "select * from wx.wx_test2" -o output2.txt --output_delimiter=#
[root@CM-Agent-202 ~]# vi /root/output2.txt

1#jack
2#tom
10#10

 

 

二、Impala的内部Shell

选项 描述
help 显示帮助信息
explain 显示执行计划
profile (查询完成后执行) 查询最近一次查询的底层信息
shell 不退出 impala-shell 执行 shell 命令
version 显示版本信息(同于 impala-shell -v)
connect 连接 impalad 主机,默认端口 21000(同于 impala-shell -i)
refresh 增量刷新元数据库
invalidate metadata 全量刷新元数据库(慎用)(同于 impala-shell -r)
history 历史命令

impala-shell

【1】查看执行计划

[CM-Agent-202:21000] > explain select * from wx.wx_test2;
Query: explain select * from wx.wx_test2
+------------------------------------------------------------------------------------+
| Explain String                                                                     |
+------------------------------------------------------------------------------------+
| Max Per-Host Resource Reservation: Memory=0B                                       |
| Per-Host Resource Estimates: Memory=32.00MB                                        |
| WARNING: The following tables are missing relevant table and/or column statistics. |
| wx.wx_test2                                                                        |
|                                                                                    |
| PLAN-ROOT SINK                                                                     |
| |                                                                                  |
| 01:EXCHANGE [UNPARTITIONED]                                                        |
| |                                                                                  |
| 00:SCAN HDFS [wx.wx_test2]                                                         |
|    partitions=1/1 files=4 size=47B                                                 |
+------------------------------------------------------------------------------------+
Fetched 11 row(s) in 0.02s
[CM-Agent-202:21000] > 

【2】 查询最近一次查询的底层信息
[CM-Agent-202:21000] > select count(*) from wx.wx_test2;
Query: select count(*) from wx.wx_test2
Query submitted at: 2020-03-26 11:16:51 (Coordinator: Http://CM-Agent-202:25000)
Query progress can be monitored at: http://CM-Agent-202:25000/query_plan?query_id=234ba07a5c6d9c63:b815c42300000000
+----------+
| count(*) |
+----------+
| 10       |
+----------+
Fetched 1 row(s) in 0.12s
[CM-Agent-202:21000] > profile;
Query Runtime Profile:
Query (id=234ba07a5c6d9c63:b815c42300000000):
  Summary:
    Session ID: f42f30a75af19b5:d8b7e8c86c3eeb8
    Session Type: BEESWAX

此处省略10000字不止。。。

        CodeGen:(Total: 32.017ms, non-child: 32.017ms, % non-child: 100.00%)
           - CodegenTime: 1.003ms
           - CompileTime: 4.948ms
           - LoadTime: 0.000ns
           - ModuleBitcodeSize: 1.95 MB (2039944)
           - NumFunctions: 22 (22)
           - NumInstructions: 267 (267)
           - OptimizationTime: 8.977ms
           - PeakMemoryUsage: 133.50 KB (136704)
           - PrepareTime: 17.536ms

【3】不退出 impala-shell 执行 shell 命令

 查看 hdfs linux 文件系统
[CM-Agent-202:21000] >  shell hadoop fs -ls /;
Found 6 items
drwxr-xr-x   - HBase hbase               0 2020-03-23 11:18 /hbase
drwxrwxr-x   - solr  solr                0 2020-03-12 13:03 /solr
drwxrwxrwt   - hdfs  supergroup          0 2020-03-23 14:26 /tmp
drwxrwxrwx   - hdfs  supergroup          0 2020-03-20 20:17 /user
drwxrwxrwx   - hdfs  supergroup          0 2020-03-19 17:07 /wx
drwxr-xr-x   - hdfs  supergroup          0 2020-03-12 16:35 /yxh
--------
Executed in 3.53s

[CM-Agent-202:21000] > shell ls -al ./;
总用量 412
dr-xr-x---. 11 root root   4096 3月  26 11:12 .
dr-xr-xr-x. 22 root root   4096 3月  26 11:18 ..
-rw-------.  1 root root   1624 4月  10 2018 anaconda-ks.cfg
-rw-------.  1 root root  24387 3月  25 18:48 .bash_history
-rw-r--r--.  1 root root     18 12月 29 2013 .bash_loGout

 

【4】 刷新指定表的元数据,Hive中新增数据。
hive> load data local inpath "/opt/module/datas/student.txt" into table
student;
[hadoop103:21000] > select * from student;
[hadoop103:21000] > refresh student;
[hadoop103:21000] > select * from student;

 

【5】 查看历史命令

[CM-Agent-202:21000] > history;
[1]: show databases;
[2]: quit;
[3]: select * from wx.wx_test2; 
[4]: select * from wx.wx_test2; 
[5]: quit;
[6]:  select * from wx.wx_test2; 
[7]: quit;
[8]: explain select * from wx.wx_test2;
[9]: select count(*) from wx.wx_test2;
[10]: select count(*) from wx.wx_test2;
[11]: profile;
[12]:  shell hadoop fs -ls /;
[13]: shell ls -al ./;
[14]: shell ls -al ./user;
[15]: history;
[16]: history;
[CM-Agent-202:21000] > history;
[1]: show databases;
[2]: quit;
[3]: SELECT F_GNMC,COUNT(1) AS count FROM  SYS_OPLOG
where F_USER="9999"
GROUP BY F_GNMC
order by count desc
limit 5;
[4]: SELECT F_GNMC,COUNT(1) AS count FROM  wx.SYS_OPLOG
where F_USER="9999"
GROUP BY F_GNMC
order by count desc
limit 5;
[5]: quit;
[6]:  select * from wx.wx_test2; 
[7]: quit;
[8]: explain select * from wx.wx_test2;
[9]: select count(*) from wx.wx_test2;
[10]: select count(*) from wx.wx_test2;
[11]: profile;
[12]:  shell hadoop fs -ls /;
[13]: shell ls -al ./;
[14]: shell ls -al ./user;
[15]: history;
[16]: history;

您可能感兴趣的文档:

--结束END--

本文标题: Impala Shell命令

本文链接: https://www.lsjlt.com/news/5154.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Impala Shell命令
    整理自尚硅谷Impala笔记,并动手尝试。   一、Impala 的外部Shell 选项 描述 -h, --help 显示帮助信息 -v or...
    99+
    2017-05-10
    Impala Shell命令
  • Impala-shell命令参数的实现
    不多说,直接上干货! 1. impala-shell外部命令 所谓的外部命令指的是不需要进入到impala-shell交互命令行当中即可执行的命令参数。impala-shell后面执行的时候可以带很多参数。你可以在启动...
    99+
    2022-06-04
    Impala-shell 参数 Impala-shell命令
  • 如何实现Impala-shell命令参数
    小编给大家分享一下如何实现Impala-shell命令参数,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1. impala-shell外部命令所谓的外部命令指的是不需要进入到impala-shell交互命令行当中即可执行的...
    99+
    2023-06-09
  • Hive shell 命令
     连接 hive shell  直接输入 hive  1、显示表  hive> show tables;   OK   test   Time taken: 0.17 seconds, Fetched: ...
    99+
    2023-06-02
  • Linux命令行循环执行shell命令
    目录linux命令行,循环执行shell命令死循环命令格式效果普通计数循环循环10次效果LLinux命令行,循环执行shell命令 死循环 命令格式 while true ;do <command>; don...
    99+
    2023-01-03
    linuxshell循环执行命令 循环执行shell命令 linux命令行 Linuxshell循环命令 while死循环
  • Shell学习【test命令】
    Shell test 命令        test命令主要用于检查条件是否成立,可用于数字判断、字符判断、文件判断;也可以用自己常用的检查命令。test数字演示...
    99+
    2023-06-05
  • 什么是Shell命令
    本篇内容介绍了“什么是Shell命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Shell也叫做命令行界面,它是*nix操作系统下用户和计...
    99+
    2023-06-09
  • Java执行shell命令
    Java执行shell命令 前言一、案例场景原因解决方案 二、拓展创建临时脚本,执行shell命令 三、总结 前言 java执行shell命令的方式有很多种,但是在应...
    99+
    2023-09-05
    java 开发语言 linux
  • 如何在Shell中命令别名、命令历史
    这篇文章将为大家详细讲解有关如何在Shell中命令别名、命令历史,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。命令别名可以使用 alias 命令查看和修改命令别名。下面是一个查看系统中命令别...
    99+
    2023-06-09
  • Mac终端Shell命令Open
    在Mac终端中,`open`命令用于打开文件、文件夹、应用程序等。其基本语法为:```open [选项] [项目]```以下是一些常...
    99+
    2023-09-20
    Mac
  • shell 循环命令详解
    目录1. for 命令1.1 for 命令的使用1.2 for 命令面临的问题1.3 更改字段分隔符1.4 用通配符读取目录2. c 风格 for 命令3. while 命令4. u...
    99+
    2022-11-13
    shell 循环命令 shell 命令 shell for 命令 shell break 命令 shell while 命令
  • Shell echo命令怎么用
    本文小编为大家详细介绍“Shell echo命令怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Shell echo命令怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。echo命令是linux中最基础的...
    99+
    2023-06-27
  • shell命令之 IFS详解
    IFS是Shell中的一个环境变量,用于指定字段分隔符。字段分隔符用于指定如何将一行文本拆分成多个字段。在Shell中,默认的字段分...
    99+
    2023-09-15
    shell
  • shell 循环命令详解
    目录1. for 命令1.1 for 命令的使用1.2 for 命令面临的问题1.3 更改字段分隔符1.4 用通配符读取目录2. c 风格 for 命令3. while 命令4. until 命令5. 控制循环5.1. ...
    99+
    2022-10-13
  • python之执行shell命令
    [root@s141 ~]# python Python 2.7.5 (default, Sep 15 2016, 22:37:39)  [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2 Ty...
    99+
    2023-01-31
    命令 python shell
  • python 之 shell命令执行
    python中有几种常用的执行shell命令的模块1,os.system()2, os.popen()3,pexpect.run()下面介绍3个模块的差别1,os.system() 直接执行>>> os.system('l...
    99+
    2023-01-31
    命令 python shell
  • shell read命令怎么用
    本篇内容介绍了“shell read命令怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!shell作为一门语言,自然也具有读数据的功能,...
    99+
    2023-06-27
  • Linux Shell常用的命令
    本篇内容介绍了“Linux Shell常用的命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!很早就想根据自己的学习规律和遗忘规律,自己总结...
    99+
    2023-06-12
  • Shell中的命令别名、命令历史和命令替换的方法
    命令别名 可以使用jBVntwfRLj alias 命令查看和修改命令别名。 下面是一个查看系统中命令别名的示例: $ alias alias alert='notify-send --urgency=low -i...
    99+
    2022-06-04
    Shell 命令别名 Shell 命令历史 Shell 命令替换
  • shell命令行模式中如何执行mongo命令
    小编给大家分享一下shell命令行模式中如何执行mongo命令,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作