Hive - 创建数据库


Hive是一种数据库技术,可以定义数据库和表来分析结构化数据。结构化数据分析的主题是以表格形式存储数据,并传递查询来分析数据。本章介绍如何创建Hive数据库。Hive包含一个名为 default 的默认数据库。

创建数据库语句

创建数据库是用于在Hive中创建数据库的语句。Hive中的数据库是一个 名称空间 或一组表。此语句的 语法 如下所示:

CREATE DATABASE|SCHEMA [IF NOT EXISTS] <database name>

这里,IF NOT EXISTS是一个可选的子句,它通知用户已经存在一个同名的数据库。在这个命令中我们可以使用SCHEMA代替DATABASE。执行以下查询来创建名为 userdb 的数据库:

hive> CREATE DATABASE [IF NOT EXISTS] userdb;

要么

hive> CREATE SCHEMA userdb;

以下查询用于验证数据库列表:

hive> SHOW DATABASES;
default
userdb

JDBC程序

下面给出了创建数据库的JDBC程序。

import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;

public class HiveCreateDb {
   private static String driverName = "org.apache.hadoop.hive.jdbc.HiveDriver";

   public static void main(String[] args) throws SQLException {
      // Register driver and create driver instance

      Class.forName(driverName);
      // get connection

      Connection con = DriverManager.getConnection("jdbc:hive://localhost:10000/default", "", "");
      Statement stmt = con.createStatement();

      stmt.executeQuery("CREATE DATABASE userdb");
      System.out.println(Database userdb created successfully.);

      con.close();
   }
}

将程序保存在名为HiveCreateDb.java的文件中。以下命令用于编译和执行该程序。

$ javac HiveCreateDb.java
$ java HiveCreateDb

输出:

Database userdb created successfully.