hive
Xlucas
做自己,做一个最普通的分享者
展开
-
hive2.3版本编译异常
最近在编译hive2.3.9的时候遇到一个问题。错误信息如下:Could not transfer artifact org.apache.directory.client.ldap:ldap-client-api:pom:0.1-SNAPSHOT from/to central (http://repo1.maven.org/maven2/): transfer failed for http://repo1.maven.org/maven2/org/apache/directory/client/l原创 2021-09-17 23:46:24 · 587 阅读 · 0 评论 -
hive小文件优化
小文件产生的原因直接向表里面插入数据比如我们要往一张表里面写入几行特定的数据,如下,每次运行都会往表里写入一个文件,这种一般生产很少见,因为这种操作一般说在位置的时候采用,如果有也是建议先将所有数据放在一个文件再做batch load的方式,这样就只有一个文件了。insert into table A values('201','2','北京')通过load方式加载数据这种操作一般是将某一个或者一批文件上传到一个表里面,本地的多少个文件映射到hive就有多少个文件,运行语句如下load原创 2021-06-29 09:06:21 · 534 阅读 · 1 评论 -
hive源码调试
之前一直是在hive源码,从今天开始要深入了解hive的整个执行过程,所以今天进行hive的源码debug调试跟踪工作, 现在开始我们今天环境的配置 1、默认大家的hive运行环境都已经安装好,如果不清楚怎么安装这个可以百度一下 2、搭建hive源码环境,这个之前文章里面已经写了怎么搭建,大家可以查看之前的文章接下来重点讲一下 Hive Cli 调试 在运行环境开启Hive Cli命...原创 2018-04-06 23:17:48 · 3296 阅读 · 1 评论 -
HiveSql中一条Sql语句的旅程
今天主要debug一条最简单的sql语句 “select * from test” 。只是跟踪了这条SQL在提交解析器之前做了那些重要的事情 总共有 sessionID、queryID、execID 这个跳转到了SessionState类中的updateThreadName方法public void updateThreadName() { final String ses...原创 2018-04-08 01:01:17 · 827 阅读 · 0 评论 -
Hive一条SQL的旅行(一)
从今天开始我们从hive源码跟踪一下一条sql语句在hive执行引擎到底做了哪些事情。 整个hive程序的入口是在包org.apache.hadoop.hive.cli下面的 CliDriver 类 下面这个就是main 方法public static void main(String[] args) throws Exception { int ret = new CliDriver()原创 2018-01-18 23:21:16 · 791 阅读 · 0 评论 -
MapReduce实现SQL的操作原理
本来想讲一下hive的一条SQL怎么转换成MapReduce的,但是想了一下还是先讲讲一条SQL语句怎么用MapReduce来执行join的实现原理select ply.policy_date,sale.ply_sale_name from ply_base_info ply join ply_sale sale on ply.policy_no=sale.policy_no在map的输出value原创 2018-01-26 00:26:53 · 2148 阅读 · 0 评论 -
hive2.2.0源码编译
编译hive 2.2.0 笔者在window下面编译过很多次一直没有成功,今天修改到Linux下面编译,如果有哪位大神在Windows下面编译成功了请指导一下。 1、环境信息 ideaIC-2017.3.2 Linux版本[root@cdh1 conf]# uname -aLinux cdh1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09原创 2018-01-16 23:20:26 · 1389 阅读 · 0 评论 -
Hive源码分析一
问题: 1、hive的入口程序 2、hive的local化 3、hivesql执行过程 4、hive的解析和鉴权—下节一 :hive的入口程序 1、从 cli.sh文件我们可以看到,调用了类CliDriver进行初始化操作 CLASS=org.apache.hadoop.hive.cli.CliDriver execHiveCmd $CLASS "$@"2、 查看 CliDri原创 2016-12-23 11:25:13 · 3235 阅读 · 0 评论 -
hive UDF函数开发
编写代码 hive的UDF函数只需要继承UDF这个类就可以,如果重写evaluate方向就可以了,里面的具体实现可以用java来实现这里面的逻辑package function_duf;import org.apache.hadoop.hive.ql.exec.UDF;import org.apache.hadoop.io.Text;public class UDFCOMP extends UD原创 2016-10-07 11:03:57 · 2391 阅读 · 0 评论 -
Hive分析函数五
ntile,row_number,rank,dense_rank版本0.13.1准备的数据create table emp_function( deptno string, sal int, hiredate string)row format delimited fields terminated by '|' 10|1300|1982-01-23 00:00:00.原创 2016-10-12 23:57:31 · 502 阅读 · 0 评论 -
Hive分析函数四
版本0.13.1准备的数据create table emp_function( deptno string, sal int, hiredate string)row format delimited fields terminated by '|' 10|1300|1982-01-23 00:00:00.010|5000|1981-11-17 00:00:00.0原创 2016-10-12 23:53:45 · 739 阅读 · 0 评论 -
Hive分析函数三
GROUPING SETS,GROUPING__ID,CUBE,ROLLUP 版本0.13.1准备的数据create table group_test( month string, day string, name string)row format delimited fields terminated by '|' 2015-09|2015-03-10|te原创 2016-10-12 23:50:42 · 765 阅读 · 0 评论 -
Hive分析函数二
版本0.13.1准备的数据create table emp_function( deptno string, sal int, hiredate string)row format delimited fields terminated by '|' 10|1300|1982-01-23 00:00:00.010|5000|1981-11-17 00:00:00.0原创 2016-10-12 23:46:31 · 579 阅读 · 0 评论 -
Hive分析函数一
lag lead first_value last_value版本0.13.1准备的数据 create table emp_function ( deptno string, sal int, hiredate string) row format delimited fields terminated by ‘|’ 10|1300|1982-01-23 00:原创 2016-10-12 23:38:18 · 1002 阅读 · 0 评论