HIVE笔记整理
beeline常用数据类型:
TINYINT 1byte有符号整数 20
SMALLINT 2byte有符号整数 20
INT ** 有符号整数 20
BIGINT** 8byte有符号整数 20
BOOLEAN 布尔类型,true或者false TRUE FALSE
FLOAT 单精度浮点数 3.14159
DOUBLE ** 双精度浮点数 3.14159
STRING ** 字符系列。可以指定字符集。可以使用单引号或者双引号。 ‘now is the time’ “for all good men”
TIMESTAMP **
BINARY
beeline客户端的基操整理:
create database [if not exists] db_hive; 创建数据库(避免要创建的数据库已存在,可增加判断)
create database db_hive2 location '/db_hive2.db'; 创建数据库,并指定数据库在HDFS上的存放位置
show databases [like 'db_hive*']; 显示数据库(过滤显示查询)
desc database default ; 显示数据库详细信息
use db_hive; 切换当前数据库
drop database [if exists ] db_hive2; 删除空数据库(判断数据库是否存在)
drop database db_hive cascade ; 使用cascade命令可以强制删除不为空的数据库
建表操作:
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name
[(col_name data_type [COMMENT col_comment], ...)]
[COMMENT table_comment]
[PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] 分区
[CLUSTERED BY (col_name, col_name, ...) 分桶
[SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]
[ROW FORMAT row_format] row format delimited fields terminated by “分隔符”
[STORED AS file_format]
[LOCATION hdfs_path]
create table 建表
external 创建外部表
comment : 为表和列添加注释
partitioned by 创建分区表
clustered by 创建分桶表
row format delimited fields terminated by '分隔符'
stored as 指定存储的文件类型
location 指定表在HDFS上的存储位置。
desc formatted tab_name; 查看表的详细信息
使用load语法
load data local inpath "/data/test.csv" into table tb_log; 加载本地数据文件到表中 ,底层是put
load data inpath "/data/test.csv" into table tb_log; 底层是move,从hdfs中的文件导入到表中
load data inpath "/data/test.csv" overwrite into table tb_log; 覆盖目标文件夹的所有文件
数据库操作:
show databases ;***** 展示数据库
use db_name ; ***** 使用数据库
drop database db_name ; 删除数据库
drop database db_name cascade; -- 强制删除数据库
select current_database() ; ***** 显示当前数据库
show functions ; -- 查看系统支持的函数
current_date() ; 显示当前日期
current_timestamp() ; 显示当前时间戳
create database db_name ; 新建一个全新的数据库
alter database db_hive set dbproperties('author'='jugelizi');
desc database db_name ; 查看该数据库属性
desc database extended db_name ; -- 查看数据库详细属性