初始HIVE(2)——数据类型和数据库操作
原创
©著作权归作者所有:来自51CTO博客作者wx59658a994b151的原创作品,请联系作者获取转载授权,否则将追究法律责任
Data Type——Primitive Type(原始类型)
int
double
varchar
复杂数据类型
ARRAY
MAP
STRUCT
Hive Meta Data Structure(元数据总览)
Database 数据库
Table 表
Partition 分区
Buckets 分发
Row 行
Columns 列
Views 视图
Index 索引
Hive Database操作
数据库是一个为了一个相似的目的或者属于一个相同的团体的表格集合
如果数据库没有被声明,默认使用默认的数据库
hive为每一个数据库创建一个目录在/user/hive/warehouse(默认数据库直接建立在该目录下)
create datavase if not exits myhivebook;
use myhivebook;
show databases;
describe database default;--more details than 'show',such as location
alter database myhivebook set owner user dayongd;
drop database if exits myhivebook cascade;
Hive Tables
外表格
建立一个快捷方式,表的路径设置在另一个地方,表格删除后,数据还在。
适用:需要共享数据的时候
内部表/可管理表
数据完全被hive管理,表被删除,数据也被删除
适用:数据转换、数据清洗
Hive建表基础语句
CREATE EXTERNAL TABLE IF NOT EXITS employee_external(
name string,
work_place ARRAY<string>,
sex_age STRUCT<sex:string,age:int>,
skills_score MAP<string,int>,
depart_title MAP<STRING,ARRAY<STRING>>
)
COMMENT 'This is an external table'
ROW FORMAT DELIMITED
FIFLDS TERMINATED BY '|'
COLLECTION ITEMS TERMINATED BY ','
MAP KEYS TERMINATED BY ':'
STORED AS TEXTFILE
LOCATION '/user/dayongd/employee';