`
gaojingsong
  • 浏览: 1182575 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Apache之Tez 介绍

阅读更多

Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。Hadoop传统上是一个大量数据批处理平台。但是,有很多用例需要近乎实时的查询处理性能。还有一些工作则不太适合MapReduce,例如机器学习。Tez的目的就是帮助Hadoop处理这些用例场景。

 



 

 

Tez 2 main design themes for Tez are:

Empowering end users by:

Expressive dataflow definition APIs

Flexible Input-Processor-Output runtime model

Data type agnostic

Simplifying deployment

 

 

Execution Performance

Performance gains over Map Reduce

Optimal resource management

Plan reconfiguration at runtime

Dynamic physical data flow decisions

 

 

 

Tez项目的目标是支持高度定制化,这样它就能够满足各种用例的需要,让人们不必借助其他的外部方式就能完成自己的工作,如果 Hive和 Pig 这样的项目使用Tez而不是MapReduce作为其数据处理的骨干,那么将会显著提升它们的响应时间。Tez构建在YARN之上,后者是Hadoop所使用的新资源管理框架。

 

 

Tez产生的主要原因是绕开MapReduce所施加的限制。除了必须要编写Mapper和Reducer的限制之外,强制让所有类型的计算都满足这一范例还有效率低下的问题——例如使用HDFS存储多个MR作业之间的临时数据,这是一个负载。在Hive中,查询需要对不相关的key进行多次shuffle操作的场景非常普遍,例如join - grp by - window function - order by。

 

Tez设计哲学里面的关键元素包括:

 

允许开发人员(也包括最终用户)以最有效的方式做他们想做的事情

更好的执行性能

Tez之所以能够实现这些目标依赖于以下内容:

 

具有表现力的数据流API——Tez团队希望通过一套富有表现力的数据流定义API让用户能够描述他们所要运行计算的有向无环图 (DAG)。为了达到这个目的,Tez实现了一个结构化类型的API,你可以在其中添加所有的处理器和边,并可视化实际构建的图形。

灵活的输入—处理器—输出(Input-Processor-Output)运行时模型——可以通过连接不同的输入、处理器和输出动态地构建运行时执行器。

数据类型无关性——仅关心数据的移动,不关心数据格式(键值对、面向元组的格式等)。

动态图重新配置

简单地部署——Tez完全是一个客户端应用程序,它利用了YARN的本地资源和分布式缓存。就Tez的使用而言,你不需要在自己的集群上部署任何内容,仅需要将相关的Tez类库上传到HDFS上,然后使用Tez客户端提交这些类库即可。

你甚至可以在你的集群上放置两份类库。一份用于产品环境,它使用稳定版本供所有的生产任务使用;另一份使用最新版本,供用户体验。这两份类库相互独立,互不影响。

 

Tez能够运行任意MR任务,不需要做任何改动。这样能够让那些现在依赖于MR的工具实现分布迁移。

  • 大小: 103 KB
0
0
分享到:
评论

相关推荐

    apache-tez-0.9.2-bin.tar.gz

    Tez 建立在Hadoop MapReduce之上,旨在优化大规模数据处理作业的性能,特别是在复杂的计算任务和交互式查询场景下。在“apache-tez-0.9.2-bin.tar.gz”这个压缩包中,包含了运行和配置Tez所需的所有二进制文件和相关...

    apache-tez-0.8.5-bin.tar.gz

    6. **资源管理**:由于Tez运行在YARN之上,因此需要了解如何配置YARN以最佳地利用集群资源,如内存和CPU分配。 7. **容错机制**:Tez具备内置的容错机制,能够自动恢复失败的任务,保证作业的顺利完成。 8. **安全...

    源码apache-tez-0.8.3编译后的hadoop2.7.3版本hive-tez包tez-0.8.3.tar.gz

    源码使用的是apache-tez-0.8.3,对应的hadoop版本2.7.3,源码包中的nodejs的版本是v0.12.3,很难编译通过,最后把nodejs改成了v4.0.0才编译通过tez-ui2模块。

    Apache TEZ部署手册

    Apache TEZ 部署手册 Apache TEZ 是一个基于 Hadoop 的数据处理引擎,它提供了高性能、可扩展的数据处理能力。Apache TEZ 部署手册是一份详细的指导手册,涵盖了 Apache TEZ 的部署、配置和使用。 一、准备 在...

    apache-tez源码

    Apache Tez 是一个高度可扩展和灵活的数据处理框架,它构建在 Apache Hadoop 上,用于执行复杂的、有向无环图(DAG)任务。这个框架优化了 MapReduce 模型,提供了更高效的并行计算能力,适用于大规模数据处理工作。...

    apache-tez-0.9.0-bin.tar.gz

    Tez是Apache开源的支持DAG作业的计算框架,它直接源于MapReduce框架,核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output, Reduce被拆分成Input、Shuffle、Sort、...

    apache-tez-0.8.3-src.tar.gz

    Tez是Apache开源的支持DAG作业的计算框架,它直接源于MapReduce框架,核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output, Reduce被拆分成Input、Shuffle、Sort、...

    apache-tez-0.9.1-bin.tar.gz

    用Hive直接编写MR程序,假设有四个有依赖关系的MR作业,上图中,绿色是Reduce Task,云状表示写屏蔽,...Tez可以将多个有依赖的作业转换为一个作业,这样只需写一次HDFS,且中间节点较少,从而大大提升作业的计算性能

    源码apache-tez-0.8.3编译后的hadoop2.8.3版本hive-tez包tez-0.8.3.tar.gz

    源码使用的是apache-tez-0.8.3,对应的hadoop版本2.8.3,源码包中的nodejs的版本是v0.12.3,很难编译通过,最后把nodejs改成了v4.0.0才编译通过tez-ui2模块。

    tez:Apache Tez

    阿帕奇·特兹(Apache Tez) Apache Tez是一个通用的数据处理管道引擎,被设想为用于更高抽象的低级引擎,例如Apache Hadoop Map-Reduce,Apache Pig,Apache Hive等。 从本质上讲,tez非常简单,只有两个组成部分...

    apache-tez-0.10.2-src.tar.gz

    Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。...

    apache-tez-0.10.2-bin.tar.gz

    Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。...

    apache-tez-0.9.1-bin.tar的安装包和安装配置

    apache-tez-0.9.1-bin.tar的安装包和安装配置.zip 1、关于版本: hive-1.2.1+tez-0.9.1+hadoop-2.7.7 hive-2.3.6+tez-0.9.1+hadoop-2.7.1 两种搭配均试过可行,之前配置的时候觉得与版本有很大关系,试过之后发现...

    apache-tez-0.9.2-src.tar.gz

    Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。...

    apache-tez-0.10.1-src.tar.gz

    Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。...

    Apache Tez

    Apache Tez 是一个开源框架,主要作用是构建和执行数据处理应用程序,特别强调了数据流驱动的处理运行时。Tez 旨在优化基于YARN(Yet Another Resource Negotiator)的Hadoop环境中的数据处理,通过对数据执行过程的...

    tez-0.9.1-minimal.tar.gz

    Tez 是 Apache 软件基金会的一个项目,设计用于处理大规模数据处理任务,提供了一个灵活和高效的执行引擎,可以用于替代传统的 MapReduce。 【描述】提到,这个 Tez 0.9.1 版本是基于 CDH6.2(Cloudera Data Hub ...

    apache-tez-0.9.1.zip编译后的CDH5.12.1

    CDH5.12.1 hadoop版本2.6.0 可用,hive-1.1.0 tez-0.9.1,同版本的小伙伴可以直接使用,复制文件里面的tez-dist/target下的tez-0.9.1.tar.gz即可

    hive&tez.zip

    Apache Hive和Tez是大数据处理领域中的两个重要组件,它们在Hadoop生态系统中扮演着关键角色。本篇文章将深入探讨这两个工具以及它们如何协同工作。 Hive是基于Hadoop的数据仓库工具,它允许用户通过SQL(称为HQL,...

Global site tag (gtag.js) - Google Analytics