Hive on Tez

Tez介绍

  1. `Tez是Apache开源的DAG作业的计算引擎,是为了减少Hive作业的延迟而提出的解决方案`Tez已被Hortonworks用于Hive引擎的优化,经测试,性能提升约100倍。Tez+HIve仍然采用MapReduce计算框架,但是对DAG的依赖关系进行了裁剪,并将多个小作业合并成了一个大作业。这样不仅作业量减少了,而且写HDFS的次数也会大大减少。

Tez的特点

1.丰富的数据流(dataflow,Not Streaming!)编程接口

2.扩展性良好的”Input-Processor-Output“运行模型

3.简化数据部署`(充分利用了Yarn框架,Tez本身仅是一个客户端编程库,无需事先部署相关服务)`

4.`性能优于MapReduce`

5.优化的资源管理(直接运行在资源管理系统Yarn之上)

6.动态生成物理数据流(dataflow)

Tez的两个设计主题

通过以下方式增强用户的能力:

1.表现型数据流定义API

2.灵活的输入-处理-输出运行时模型

3.不可知的数据类型

4.简化部署

执行性能

1.优于MapReduce的性能

2.最优资源管理

3.在运行时计划重新配置

4.动态物理流数据决策

通过允许像ApacheHive和ApachePig这样的项目运行复杂的DAG任务,Tez可用来处理数据,早期的数据需要多个MR作业,现在都在一个Tez作业中