环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 一.Hive Lateral ViewLateral View用于和UDTF函数(explode.split)结合来使用.首先通过UDTF函数拆分成多行,再将多行结果组合成一个支持别名的虚拟表.主要解决在select使用UDTF做查询过程中,查询只能包含单个UDTF,不能包含其他字段.以及多个UD…
Hive之explode 一. explode, 行转列. 1.1. 用于array类型的数据 table_name 表名 array_col 为数组类型的字段 new_col array_col被explode之后对应的列 select explode(array_col) as new_col from table_name 1.2. 用于map类型数据时的语法如下 由于map是kay-value结构的,所以它在转换的时候会转换成两列,一列是kay转换而成的,一列是value转换而成的. t…
接Hive学习五 http://www.cnblogs.com/invban/p/5331159.html 一.配置环境变量 hive jdbc的开发,在开发环境中,配置Java环境变量 修改/etc/profile vi /etc/profile PATH=$PATH:/usr/java/jdk1..0_31/bin:/opt/litong/bin source /etc/profile 立即起效 二.配置文件开发 Hive_sql Mysql_table=rpt_sale_daily mys…
1.内置运算符 1.1关系运算符 运算符 类型 说明 A = B 所有原始类型 如果A与B相等,返回TRUE,否则返回FALSE A == B 无 失败,因为无效的语法. SQL使用”=”,不使用”==”. A <> B 所有原始类型 如果A不等于B返回TRUE,否则返回FALSE.如果A或B值为”NULL”,结果返回”NULL”. A < B 所有原始类型 如果A小于B返回TRUE,否则返回FALSE.如果A或B值为”NULL”,结果返回”NULL”. A <= B 所有原始类型…
hive   ddl 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL hive  dml 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML   1.创建库 create database test; 2.删除库 drop database test;   3.建表 完整ddl建表语法规则 CREATE…
1.Hive 分区partition 必须在表定义时指定对应的partition字段 a.单分区建表语句: create table day_table (id int, content string) partitioned by (dt string); 单分区表,按天分区,在表结构中存在id,content,dt三列. 以dt为文件夹区分 b. 双分区建表语句: create table day_hour_table (id int, content string) partitioned…
对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记录存放在哪个桶当中. 把表(或者分区)组织成桶(Bucket)有两个理由: (1)获得更高的查询处理效率.桶为表加上了额外的结构,Hive 在处理有些查询时能利用这个结构.具体而言,连接两个在(包含连接列的)相同列上划分了桶的表,可以使用 Map 端连接 (Map-side join)高效的实现.比…
1 准备数据: 1.1 t_1 01 张三 02 李四 03 王五 04 马六 05 小七 06 二狗 1.2 t_2 01 11 03 33 04 44 06 66 07 77 08 88 1.3 t_3 01 男 02 男 03 女 04 男 05 女 06 女 07 男 08 X 2 创建表:t_1,t_2,t_3 create table if not exists t_1(id string,name string)row format delimited fields termina…
ref:https://blog.csdn.net/bitcarmanlee/article/details/51926530 1.explode hive wiki对于expolde的解释如下: explode() takes in an array (or a map) as an input and outputs the elements of the array (map) as separate rows. UDTFs can be used in the SELECT expres…
大数据的仓库Hive学习  10期-崔晓光 2016-06-20  大数据   hadoop   10原文链接 我们接着之前学习的大数据来学习.之前说到了NoSql的HBase数据库以及Hadoop中的HDFS存储系统,可是我们发现这跟我们平时常用的关系型数据库有很大区别,为了使用方便,产生了针对大数据存储的数据仓库Hive. 一.是什么 1.概念 Hive 是一个基于 Hadoop 的开源数据仓库工具,用于存储和处理海量结构化数据. 它把海量数据存储于 hadoop 文件系统,而不是数据库,但…