您的位置:首页 > 其它

hive学习笔记

2016-06-14 22:49 253 查看
hql语句的执行过程

解析器
语法分析

编译器
生成hql语句执行计划

优化器
生成最优执行计划

show tables

show functions

desc 表名 查看表的信息

dfs -lsr /tmp 在cli中也可以查看hdfs上的文件

!ls /root 在cli中也可以执行linux的命令

source /root/demo.sql 执行一个sql文件

hive -S 就能进入cli 有个静默模式

hive -e 'desc test1'; 不进入hive cli模式 直接执行一条语句

hive --service hwi //hive 自带的图形界面管理工具

基本数据类型

tinyint/smallint/int/bigint

float/double

boolean

string

timestamp/date

char(20) vachar(20)区别 char固定20个字符长度 vachar而不是

Array // create table student(

sid int,sname string,grade array<float>

);

{1,Tom,[80,90]}

Map// create table student(

sid int,sname strint,grade map<String,float>

);

{1,Tom,<'郁闷',90>}

struct 结构类型

create table sudent(

id int,

sname string,

info struct<name:string,age int>

)

数据库 文件 表 视图

create table sudent(

id int,

sname string,

)location '/tmp/student',row format

create table t4 as select * from student;//子查询创建表

explain select * from sample_table //生成一个执行计划

外部表 只是制定了一个hive 在hdfs数据存储目录的链接 删除表的时候只是删除了链接

桶表

桶表是对数据进行哈希取值,然后放到不同文件中存储

create table bucket_table(

sid int,

sname string

)clustered by (sname) into 5 buckets;

视图 逻辑概念 虚拟的

create vie empinfo

as

select e.empno,e.ename,e.sal*12 analsel ,d.name

from emp e,dept d

where e.deptno=d.deptno

----------------------------------------------------------------------------------------------------------------

hive 进阶
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hive