Hadoop&Hive
文章平均质量分 66
lpxuan151009
专注数据模型架构,数据仓库,海量数据处理.
展开
-
ubuntu安装配置hadoop和hive
1、下载jdk并配置环境变量http://www.oracle.com/technetwork/java/javase/downloads/index.htmlls-rwxr--r-- 1 lpxuan lpxuan 85141056 2011-06-21 18:44 jdk-6u26-linux-i586.bin*-rw-r--r-- 1 lpxuan lpxuan 6599796 201原创 2011-06-21 14:58:00 · 6802 阅读 · 0 评论 -
hive源码解析(2)之编译前序
Antlr(ANother Tool for LanguageRecognition)ü 一种语言识别工具 ü Antlr提供了一种语言工具框架 ü 定义标示符,关键字(词法分析) ü 定义表达式(语法分析)ü 可以将文本转换成抽象语法树(AST)ü 树的解析(树分析器) (1)词法分析器Lexerü 词法分析原创 2012-09-07 20:19:22 · 3040 阅读 · 0 评论 -
Hive优化(2)之系统评估reduce数为1的MR Job优化
名词解释:云霄飞车:hive本身对MR Job的 reduce数估算不合理,导致reduce分配过少,任务运行很慢,云霄飞车项目主要对hive本身reduce数的估算进行优化。map_input_bytes:map输入文件大小,单位:bytesmap_output_bytes:map输出文件大小,单位:bytes 优化背景:云霄飞车一期存在如下问题:只能优化reduce原创 2012-09-07 20:27:44 · 9032 阅读 · 1 评论 -
hive优化(4)之mapjoin和union all避免数据倾斜
发生数据倾斜时,通常的现象是:任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成。查看未完成的子任务,可以看到本地读写数据量积累非常大,通常超过10GB可以认定为发生数据倾斜。数据倾斜一般是由于代码中的join或group by或distinct的key分布不均导致的,大量经验表明数据倾斜的原因是人为的建表疏忽原创 2012-09-14 20:08:45 · 7832 阅读 · 1 评论 -
hive cli
Hive Cli = hive启动 = *$ hive –f script.q *$ hive -e 'SELECT *FROM dummy‘ *$ hive -S -e 'SELECT* FROM dummy‘ *$ hive -hiveconfhive.root.logger=DEBUG,console = set = *hive>SET hive.原创 2012-09-14 20:11:42 · 1961 阅读 · 0 评论 -
Hadoop计算文件大小
//Hadoop计算文件大小:public static void main(String[] args) throws IOException{ String tablePath= pathPrefix + args[0].toLowerCase().trim(); Path p = new Path(tablePath); JobConf co原创 2012-09-07 20:32:53 · 2749 阅读 · 0 评论 -
Hive优化(3)之随机数避免数据倾斜
发生数据倾斜时,通常的现象是:任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成。查看未完成的子任务,可以看到本地读写数据量积累非常大,通常超过10GB可以认定为发生数据倾斜。数据倾斜一般是由于代码中的join或group by或distinct的key分布不均导致的,大量经验表明数据倾斜的原因是人为的建表疏忽或业务可以规原创 2012-09-14 20:06:10 · 9665 阅读 · 1 评论 -
Hive优化(5)之选择合适的map数
Hive是基于Hadoop分布式框架下的数据仓库解决方案,可以方便地对数据进行清洗、转化和加载。Hive处理海量数据是数据仓库的基本需求,而如何通过hive充分利用Hadoop集群的分布式并行功能就至关重要。如果不能充分利用分布式并行处理,那么处理大数据量就会变得低效。而一张数据表需要多少个map来处理和一个map处理多少数据记录,都会影响到海量数据处理的效率。原创 2012-09-14 20:31:50 · 1231 阅读 · 0 评论 -
Hadoop MapReduce:详解Shuffle过程
http://langyu.iteye.com/blog/992916讲的很详细转载 2012-09-18 15:20:19 · 1491 阅读 · 0 评论 -
Hadoop如何计算map数和reduce数
Hadoop在运行一个mapreduce job之前,需要估算这个job的maptask数和reducetask数。首先分析一下job的maptask数,当一个job提交时,jobclient首先分析job被拆分的split数量,然后吧job.split文件放置在HDFS中,一个job的MapTask数量就等于split的个数。job.split中包含split的个数由FileInputFor原创 2012-09-03 14:25:20 · 10918 阅读 · 0 评论 -
HIVE-UDF之MD5密钥算法实现
/** * Project: UDFTest * * File Created at 2012-11-28 * $Id$ * * Copyright 1999-2100 Alibaba.com Corporation Limited. * All rights reserved. * * This software is the confidential a原创 2012-11-28 20:17:03 · 5179 阅读 · 0 评论 -
hive优化(1)之mapjoin
hive> create table lpx_mapjoin as > SELECT '2012-04-17' as stat_date > ,b.admin_member_id > ,a.category_level2_id > ,b.keywords > ,sum(shownum) as sum_原创 2012-09-07 20:23:22 · 6874 阅读 · 1 评论 -
hive中间接实现不等值连接
由于hive中不支持不等值连接,给应用带来不便。create tablelpx_test_a as select id,class from (select 1 as id, 2 asclass from dual union allselect 2 as id, 3 asclass from dualunion allselect 3 as id, 4 asc原创 2012-09-07 20:30:13 · 12595 阅读 · 2 评论 -
hive源码解析(1)之hive执行过程
1.入口 /bin/cli.sh 调用CliDriver类进行初始化过程 Ø 处理 -e, -f,-h等信息,如果是-h,打印提示信息,并退出 Ø 读取hive的配置文件,设置HiveConfØ 创建一个控制台,进入交互模式2.在交互方式下,读取每一个输命令行,直到’;’为止,然后提交给processLine(cmd)方法处理,该方法将输入的流以;分割原创 2012-09-07 20:15:08 · 13866 阅读 · 2 评论 -
hadoop wordcount运行实例
hadoop wordcount运行实例原创 2011-07-07 14:41:29 · 1439 阅读 · 0 评论 -
windows下安装配置hadoop
windows下安装配置hadoop原创 2011-07-11 10:09:03 · 6816 阅读 · 0 评论 -
hive安装配置
hive安装配置原创 2011-07-12 14:52:09 · 3158 阅读 · 1 评论 -
eclipse运行hadoop wordcount example
eclipse运行hadoop wordcount example原创 2011-07-11 12:22:29 · 9712 阅读 · 0 评论 -
hive sql执行计划
hive sql执行计划原创 2011-07-29 17:23:48 · 13309 阅读 · 0 评论 -
hive用户自定义函数
hive用户自定义函数原创 2011-08-02 17:01:03 · 2938 阅读 · 0 评论 -
hive sql分区表
hive sql分区表介绍原创 2011-08-02 13:28:26 · 5003 阅读 · 0 评论 -
hive cli
hive cli原创 2011-08-02 14:25:39 · 1113 阅读 · 0 评论 -
hive sql order by 与sort by
hive sql order by 与sort by原创 2011-08-02 15:23:05 · 9475 阅读 · 0 评论 -
hive-udf
--指数化处理热度*(π-1.8),然后四舍五入后分段分段规则:【段),>50&段),>100&段),>1000&段),>5000(1000/段)】向上取段 结果在50以下的,每1为一个段结果在50-100之间的,每10为一个段,结果在100和1000之间的,每30为一个段结果在1000和5000之间,每100为一个段结果在5000以上,每1000为一个段原创 2012-07-05 20:26:38 · 1640 阅读 · 0 评论 -
hadoop生态系统
【转】近些年来Hadoop生态系统发展迅猛,它本身包含的软件越来越多,同时带动了周边系统的繁荣发展。尤其是在分布式计算这一领域,系统繁多纷杂,时不时冒出一个系统,号称自己比MapReduce或者Hive高效几十倍,几百倍。有一些无知的人,总是跟着瞎起哄,说Impala将取代Hive,Spark将取代Hadoop MapReduce等。本文则从问题域触发,解释说明Hadoop中每个系统独特的作用转载 2013-12-19 19:52:24 · 2735 阅读 · 0 评论