Hive应用的句子是Hql,和sql百分之九十全是相仿的,因而,只需对SQL较为了解的,Hql基本上无需怎么学。
- show databases;
- USE database_name;
英语的语法:
- CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name --DATABASE|SCHEMA 是等额的的
- [COMMENT database_comment] --数据库查询注解
- [LOCATION hdfs_path] --储存在 HDFS 上的部位
- [WITH DBPROPERTIES (property_name=property_value, ...)]; --特定附加特性
实例:
- CREATE DATABASE IF NOT EXISTS hive_test
- COMMENT 'hive database for test'
- WITH DBPROPERTIES ('create'='heibaiying');
建立一个数据库查询,数据库查询在HDFS 上的默认设置储存途径是/user/hive/warehouse/\*.db。
建立一个数据库查询,能够特定数据库查询在 HDFS 上储放的部位
- hive > CREATE DATABASE hive_test location '/db_hive.db';
英语的语法:
- DESC DATABASE [EXTENDED] db_name; --EXTENDED 表明是不是表明附加特性
实例:
- DESC DATABASE EXTENDED hive_test;
英语的语法:
- DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE];
默认设置个人行为是 RESTRICT,假如数据库查询中存有表则删掉不成功。要想删掉库以及中的表,能够应用 CASCADE 联级删掉。
实例:
- DROP DATABASE IF EXISTS hive_test CASCADE;
本地文件导进Hive
- [hadoop@node02 ~]$ vim student.txt
- student.id student.name
- 1 Runsen
- 2 Zhangsan
- 3 Lisi
- hive> CREATE DATABASE db_hive;
- hive> use db_hive;
- hive> create table student(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
- hive> load data local inpath 'student.txt' into table student;
- hive> select * from student;
- OK
- student.id student.name
- 1 Runsen
- 2 Zhangsan
- 3 Lisi
除开能够将本地文件导到HIve中,大家先把上传文件到HDFS,随后应用HDFS将数据信息导到Hive中。