文档详情

hive实现原理-weibo-大数据文档资料.docx

发布:2025-02-19约2.95万字共129页下载文档
文本预览下载声明

1Hivc实现原理

1

新人培训课程|从入门到精通

作者:周忱|淘宝综合产品微博:@MinZhou

邮箱:zhouchen.zm@

1Hivc实现原理

1

??????

???

花名:周忱(chén)真名:周敏

微博:@MinZhou

Twitter:@minzhou2010年6月加入淘宝

曾经淘宝HadoopHive研发组Leader

目前专注分布式实时计算HiveContributor

自由、开源软件热爱者

关于我

TaobaoJavaTeam|zhou

TaobaoJavaTeam|zhouchen.zm

TaobaoJavaTeam|zhou

TaobaoJavaTeam|zhouchen.zm

1Hivc实现原理

1

??????

???

花名:周忱(chén)真名:周敏

微博:@MinZhou

Twitter:@minzhou2010年6月加入淘宝

曾经淘宝HadoopHive研发组Leader

目前专注分布式实时计算HiveContributor

自由、开源软件热爱者

关于我

Hivc

Hivc实现原理

1

如何用MR实现下面语句?

pv_users

pageidagecount

pageid

age

count

1

25

1

2

25

2

1

32

1

pageid

age

1

25

2

25

1

32

2

25

SELECTpageid,age,count(1)

FROMpvusers

GROUPBYpageid,age;

Hivc

Hivc实现原理

1

就是这么简单

pv_users

pageid

age

1

25

2

25

pageid

age

1

32

2

25

Map

key

key

value

1,25

1

2,25

1

key

key

value

1,32

1

2,25

1

Shuffle

Shuffle

Sort

key

key

value

1,25

1

1,32

1

key

key

value

2,25

1

2,25

1

p

p

Reduce

p

p

Hivc

Hivc实现原理

1

就是这么简单

Map

key

key

value

1,25

1

2,25

1

key

key

value

1,32

1

2,25

1

Shuffle

Shuffle

Sort

key

key

value

1,25

1

1,32

1

key

key

value

2,25

1

2,25

1

Reduce

pageid

age

count

1

25

1

1

32

1

pageid

pageid

age

count

2

25

2

Hivc

Hivc实现原理

1

为什么要学习Hive的实现?

?Hive学习曲线平缓,适合非专业人员,集团内部普遍使用

?一道HiveSQL将转换为多少道M/R作业?

?我们怎么加快HiveSQL的执行速度?

?编写HiveSQL的时候我们可以做些什么?

?Hive怎么将HiveQL转换成M/R作业?

?Hive将会采用什么样的优化方式?

Hivc

Hivc实现原理

1

组件分析

Hivc

Hivc实现原理

1

Hive架构执行流程

Client

Client

MetastoreHadoop

Metastore

Hadoop

Driver

Driver

Compiler

Compiler

TaobaoJavaTeam|zhou

TaobaoJavaTeam|zhouchen.zm

TaobaoJavaTeam|zhou

TaobaoJavaTeam|zhouchen.zm

Hivc

Hivc实现原理

1

Hive执行流程

?编译器将HiveSQL转换成一组操作符(Operator)

?操作符是Hive的最小处理单元

?每个操作符处理代表一道HDFS操作或MapReduce作业

Client

Client

HadoopDriverMetastore

Hadoop

Driver

Metastore

Compiler

Compiler

Hivc

Hivc实现原理

1

Hive执行流程

?操作符

操作符

描述

TableScanOperator

扫描hive表数据

ReduceSinkOperator

创建将发送到Reducer端的Key,Value对

JoinOperator

Join两份数据

SelectOperator

选择输出列

FileSinkOperator

建立结果数据,输出至文件

FilterOperator

过滤输

显示全部
相似文档