首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Tez架构说明

Apache Tez架构说明
EN

Stack Overflow用户
提问于 2014-08-27 15:34:10
回答 5查看 13.4K关注 0票数 8

我想知道是什么让Apache Tez的hive比map reduce的Hive快得多。我不能理解DAG的概念。

任何人都有很好的参考资料来理解Apache TEZ的体系结构。

EN

回答 5

Stack Overflow用户

发布于 2014-11-25 22:25:48

Hadoop Summit的演示文稿(幻灯片35)讨论了DAG方法与MapReduce范式的优劣:

http://www.slideshare.net/Hadoop_Summit/murhty-saha-june26255pmroom212

本质上,它将允许更高级别的工具(如Hive和Pig)在作业开始之前定义它们的整体处理步骤(又称工作流,又称有向循环图)。DAG是完成作业(配置单元查询、Pig作业等)所需的所有步骤的图形。因为整个作业的步骤可以在执行时间之前计算出来,所以系统可以利用在“内存”中缓存中间作业结果的优势。然而,在MapReduce中,MapReduce阶段之间的所有中间数据都需要写入HDFS (磁盘),从而增加了延迟。

YARN还允许容器重用于Tez任务。例如,每个服务器被分成多个“容器”,而不是“映射”或“减少”插槽。对于作业执行中的任何给定点,这允许Tez根据需要将整个集群用于map阶段或reduce阶段。而在YARN之前的Hadoop v1中,map插槽(和reduce插槽)的数量是在平台级别固定/硬编码的。更好地利用所有可用的群集资源通常会带来更快的速度

票数 10
EN

Stack Overflow用户

发布于 2014-12-02 13:35:33

Apache Tez代表了传统MapReduce的替代方案,它允许作业满足快速响应时间和an级极限吞吐量的需求。

像Hive和Pig这样的高级数据处理应用需要一个执行框架,能够以高效的方式表达其复杂的查询逻辑,然后高性能地执行它,该框架由Tez管理。Tez通过将数据处理建模为数据流图而不是单个作业来实现这一目标。

…图中的顶点表示应用逻辑,而边表示数据的移动。丰富的数据流定义API允许用户以直观的方式表达复杂的查询逻辑,它自然适合于由更高级别的声明性应用程序生成的查询计划,如Hive和Pig...数据流管道可以表示为将运行整个计算的单个Tez作业。Tez负责将此逻辑图扩展为任务的物理图并执行它。

Apache Tez博客文章中的Data processing API描述了一个用于表示数据处理的DAG的简单Java API。该API有三个组件

·DAG。这定义了整个工作。用户为每个数据处理作业创建一个DAG对象。

·顶点。它定义了用户逻辑以及执行用户逻辑所需的资源和环境。用户为作业中的每个步骤创建一个Vertex对象,并将其添加到DAG。

·边缘。这定义了生产者和消费者顶点之间的连接。用户创建Edge对象,并使用它连接生产者和消费者顶点。

由Tez定义的边缘属性使其能够实例化用户任务,配置它们的输入和输出,适当地调度它们,并定义如何在任务之间路由数据。Tez还允许通过指定用户指南、数据大小和资源来定义每个顶点执行的并行性。

Data routing :定义任务之间的数据路由◦一对一:来自第i个生产者任务的数据路由到第i个消费者任务。

Broadcast:来自生产者任务的数据路由到所有消费者任务。

Scatter-Gather:生产者任务将数据分散到分片中,消费者任务收集分片。来自所有生产者任务的第i个分片路由到第i个消费者任务。

调度。定义何时调度消费者任务◦顺序:消费者任务可以在生产者任务完成后调度。Concurrent:消费者任务必须与生产者任务协同调度。

持久化数据源:定义任务输出的生命周期/可靠性◦持久化:任务退出后输出可用。输出可能会在以后丢失。Persisted-Reliable:输出被可靠地存储,并且将始终可用Ephemeral:输出仅在生产者任务运行时可用。

Apache Tez Design Doc中提供了有关Tez架构的其他详细信息。

票数 7
EN

Stack Overflow用户

发布于 2014-08-29 08:27:16

我还没有使用Tez,但我已经读到过它。我认为让Hive比Tez运行得更快的主要两个原因是:

  1. Tez将尽可能在内存中的Map Reduce作业之间共享数据,从而避免向HDFS
  2. 写入/读取数据的开销使用Tez您可以在一个Tez会话中运行在配置单元上定义的多个map/ reduce DAG,而无需每次都启动新的应用程序主机。

您可以在此处找到帮助您更好地理解Tez的链接列表:http://hortonworks.com/hadoop/tez/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25521363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档