You need to enable JavaScript to run this app.
导航
概述
最近更新时间:2025.04.01 20:13:41首次发布时间:2024.11.12 16:54:09
我的收藏
有用
有用
无用
无用

TEZ 的诞生主要是为了解决 MapReduce 效率低下的问题。TEZ 将原有的 Map 和 Reduce 两个操作简化为一个概念-Vertex;并将原有的计算处理节点拆分成多个组成部分:Vertex Input、Vertex Output、Sorting、Shuffing 和 Merging。
计算节点之间的数据通信被称为 Edge,这些分解后的元操作可以任意灵活组合,产生新的操作,这个操作经过组装之后,形成一个大的 DAG 作业。

  • Input:对输入数据源的抽象,它解析输入数据格式,并吐出一个个 Key/value。
  • Output:对输出数据源的抽象,它将用户程序产生的 Key/value 写入文件系统。
  • Paritioner:对数据进行分片,类似于 MR 中的 Partitioner。
  • Processor:对计算的抽象,它从一个 Input 中获取数据,经处理后,通过 Output 输出。
  • Task:对任务的抽象,每个 Task 由一个 Input、Ouput 和 Processor 组成。
  • Maser :管理各个 Task 的依赖关系,并按顺依赖关系执行他们。

除了以上 6 种组件,Tez 还提供了两种算子,分别是 Sort(排序)和 Shuffle(混洗),为了用户使用方便,它还提供了多种 Input、Output、Task 和 Sort 的实现。