Impala - 创建数据库


在 Impala 中,数据库是一种在其命名空间内保存相关表、视图和函数的构造。在HDFS中表示为目录树;它包含表分区和数据文件。本章介绍如何在 Impala 中创建数据库。

创建数据库语句

CREATE DATABASE 语句用于在 Impala 中创建新数据库。

句法

以下是CREATE DATABASE语句的语法。

CREATE DATABASE IF NOT EXISTS database_name;

这里,IF NOT EXISTS是一个可选子句。如果我们使用此子句,则仅当不存在具有相同名称的现有数据库时,才会创建具有给定名称的数据库。

例子

以下是创建数据库语句的示例。在此示例中,我们创建了一个名为my_database 的数据库。

[quickstart.cloudera:21000] > CREATE DATABASE IF NOT EXISTS my_database;

在cloudera impala-shell中执行上述查询时,您将得到以下输出。

Query: create DATABASE my_database 

Fetched 0 row(s) in 0.21s

确认

SHOW DATABASES查询给出了 Impala 中的数据库列表,因此您可以使用SHOW DATABASES 语句验证数据库是否已创建。在这里您可以在列表中观察到新创建的数据库my_db 。

[quickstart.cloudera:21000] > show databases; 

Query: show databases
+-----------------------------------------------+
| name                                          | 
+-----------------------------------------------+ 
| _impala_builtins                              |
| default                                       | 
|  my_db                                        | 
+-----------------------------------------------+
Fetched 3 row(s) in 0.20s 
[quickstart.cloudera:21000] >

HDFS路径

为了在HDFS文件系统中创建数据库,您需要指定要创建数据库的位置。

CREATE DATABASE IF NOT EXISTS database_name LOCATION hdfs_path;

使用 Hue 浏览器创建数据库

打开 Impala 查询编辑器并在其中键入CREATE DATABASE语句。然后,单击执行按钮,如下图所示。

执行按钮

执行查询后,将光标轻轻移动到下拉菜单的顶部,您将看到一个刷新符号。如果单击刷新符号,数据库列表将被刷新,并且最近的更改将应用​​到其中。

刷新符号

确认

单击编辑器左侧“数据库”标题下的下拉框。在那里您可以看到系统中的数据库列表。在这里您可以观察新创建的数据库my_db,如下所示。

确认

如果仔细观察,可以看到列表中只有一个数据库,即my_db和默认数据库。