- 表特定语句
- Impala - 创建表语句
- Impala - 插入语句
- Impala - 选择语句
- Impala - 描述语句
- Impala - 修改表
- Impala - 删除表
- Impala - 截断表
- Impala - 显示表
- Impala - 创建视图
- Impala - 修改视图
- Impala - 删除视图
- Impala - 子句
- Impala - ORDER BY 子句
- Impala - GROUP BY 子句
- Impala - HAVING 子句
- Impala - LIMIT 子句
- Impala - OFFSET 子句
- Impala - UNION 子句
- Impala - WITH 子句
- Impala - DISTINCT 运算符
- Impala 有用资源
- Impala - 快速指南
- Impala - 有用资源
- Impala - 讨论
Impala - Shell
在前面的章节中,我们已经看到了使用 Cloudera 安装 Impala 及其架构。
- Impala Shell(命令提示符)
- Hue(用户界面)
- ODBC 和 JDBC(第三方库)
本章解释如何启动 Impala Shell 以及 Shell 的各种选项。
Impala Shell 命令参考
Impala Shell 的命令分为通用命令、查询特定选项和表和数据库特定选项,如下所述。
通用命令
- help
- version
- history
- shell (或) !
- connect
- exit | quit
查询特定选项
- Set/unset
- Profile
- Explain
表和数据库特定选项
- Alter
- describe
- drop
- insert
- select
- show
- use
启动 Impala Shell
打开 Cloudera 终端,以超级用户身份登录,并输入cloudera作为密码,如下所示。
[cloudera@quickstart ~]$ su Password: cloudera [root@quickstart cloudera]#
通过输入以下命令启动 Impala Shell:
[root@quickstart cloudera] # impala-shell Starting Impala Shell without Kerberos authentication Connected to quickstart.cloudera:21000 Server version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 0c891d79aa38f297d244855a32f1e17280e2129b) ********************************************************************* Welcome to the Impala shell. Copyright (c) 2015 Cloudera, Inc. All rights reserved. (Impala Shell v2.3.0-cdh5.5.0 (0c891d7) built on Mon Nov 9 12:18:12 PST 2015) Want to know what version of Impala you're connected to? Run the VERSION command to find out! ********************************************************************* [quickstart.cloudera:21000] >
Impala - 通用命令
下面解释 Impala 的通用命令:
help 命令
Impala Shell 的help命令会列出 Impala 中可用的命令:
[quickstart.cloudera:21000] > help; Documented commands (type help <topic>): ======================================================== compute describe insert set unset with version connect explain quit show values use exit history profile select shell tip Undocumented commands: ========================================= alter create desc drop help load summary
version 命令
version命令显示当前的 Impala 版本,如下所示。
[quickstart.cloudera:21000] > version; Shell version: Impala Shell v2.3.0-cdh5.5.0 (0c891d7) built on Mon Nov 9 12:18:12 PST 2015 Server version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 0c891d79aa38f297d244855a32f1e17280e2129b)
history 命令
Impala 的history命令显示 Shell 中执行的最后 10 个命令。以下是history命令的示例。在这里,我们执行了 5 个命令,即 version、help、show、use 和 history。
[quickstart.cloudera:21000] > history; [1]:version; [2]:help; [3]:show databases; [4]:use my_db; [5]:history;
quit/exit 命令
可以使用quit或exit命令退出 Impala Shell,如下所示。
[quickstart.cloudera:21000] > exit; Goodbye cloudera
connect 命令
connect命令用于连接到给定的 Impala 实例。如果您没有指定任何实例,则它将连接到默认端口21000,如下所示。
[quickstart.cloudera:21000] > connect; Connected to quickstart.cloudera:21000 Server version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 0c891d79aa38f297d244855a32f1e17280e2129b)
Impala 查询特定选项
Impala 的查询特定命令接受查询。它们解释如下:
Explain
explain命令返回给定查询的执行计划。
[quickstart.cloudera:21000] > explain select * from sample; Query: explain select * from sample +------------------------------------------------------------------------------------+ | Explain String | +------------------------------------------------------------------------------------+ | Estimated Per-Host Requirements: Memory = 48.00MB VCores = 1 | | WARNING: The following tables are missing relevant table and/or column statistics. | | my_db.customers | | 01:EXCHANGE [UNPARTITIONED] | | 00:SCAN HDFS [my_db.customers] | | partitions = 1/1 files = 6 size = 148B | +------------------------------------------------------------------------------------+ Fetched 7 row(s) in 0.17s
Profile
profile命令显示有关最近查询的低级信息。此命令用于诊断和性能调整查询。以下是profile命令的示例。在这种情况下,profile命令返回explain查询的低级信息。
[quickstart.cloudera:21000] > profile; Query Runtime Profile: Query (id=164b1294a1049189:a67598a6699e3ab6): Summary: Session ID: e74927207cd752b5:65ca61e630ad3ad Session Type: BEESWAX Start Time: 2016-04-17 23:49:26.08148000 End Time: 2016-04-17 23:49:26.2404000 Query Type: EXPLAIN Query State: FINISHED Query Status: OK Impala Version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 0c891d77280e2129b) User: cloudera Connected User: cloudera Delegated User: Network Address:10.0.2.15:43870 Default Db: my_db Sql Statement: explain select * from sample Coordinator: quickstart.cloudera:22000 : 0ns Query Timeline: 167.304ms - Start execution: 41.292us (41.292us) - Planning finished: 56.42ms (56.386ms) - Rows available: 58.247ms (1.819ms) - First row fetched: 160.72ms (101.824ms) - Unregister query: 166.325ms (6.253ms) ImpalaServer: - ClientFetchWaitTimer: 107.969ms - RowMaterializationTimer: 0ns
表和数据库特定选项
下表列出了 Impala 中的表和数据特定选项。
序号 | 命令及说明 |
---|---|
1 |
Alter alter命令用于更改 Impala 中表的结构和名称。 |
2 |
Describe Impala 的describe命令提供表的元数据。它包含列及其数据类型的信息。describe命令有desc作为快捷方式。 |
3 |
Drop drop命令用于从 Impala 中删除构造,其中构造可以是表、视图或数据库函数。 |
4 |
insert Impala 的insert命令用于:
|
5 |
select select语句用于对特定数据集执行所需的操作。它指定要完成某些操作的数据集。您可以打印或存储(在文件中)select 语句的结果。 |
6 |
show Impala 的show语句用于显示各种构造(例如表、数据库和表)的元存储。 |
7 |
use Impala 的use语句用于将当前上下文更改为所需的数据库。 |