YARN 如何在集群模式下知道 Apache Spark 中的数据局部性

2023-11-25

假设有一个 Spark 作业将从 HDFS 读取一个名为 Records.txt 的文件,并执行一些转换和一个操作(将处理后的输出写入 HDFS)。作业将提交到YARN集群模式

还假设 Records.txt 是一个 128 MB 的文件,并且其 HDFS 复制块之一也在 NODE 1 中

假设 YARN 正在分配的是 NODE 1 内的执行程序。

YARN如何准确地在输入数据所在的节点分配一个执行器呢?

谁告诉 YARN HDFS 复制的records.txt 块之一在 NODE 1 中可用?

Spark 应用程序如何找到数据局部性?它是由在 Application Master 内部运行的 Driver 完成的吗?

YARN 知道数据局部性吗?


这里的基本问题是:

YARN 知道数据局部性吗?

YARN“知道”应用程序告诉它什么,并且它了解集群的结构(拓扑)。当应用程序发出资源请求时,它可以包括特定的局部性限制,在分配资源时可能会或可能不会满足。

如果无法指定约束,YARN(或任何其他集群管理器)将根据其对集群拓扑的了解,尝试提供最佳替代匹配。

那么应用程序如何“知道”?

如果应用程序使用支持某种形式的数据局部性的输入源(文件系统或其他),则它可以查询相应的目录(HDFS 中的名称节点)以获取它想要访问的数据块的位置。

从更广泛的意义上讲,Spark RDD 可以定义preferredLocations,取决于具体的RDD集群管理器(不一定是 YARN)的实现,稍后可以转化为资源约束。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

YARN 如何在集群模式下知道 Apache Spark 中的数据局部性 的相关文章

随机推荐

  • WinForms 数据绑定 - 绑定到列表中的对象

    我需要一些关于 WinForms 数据绑定的帮助 指导 但我似乎无法让 Google 帮助我解决这个问题 这是我的场景 考虑以下与我需要的类似的类 public class Car public string Name get set pu
  • WPF:文本框文本未更新

    我有一个正在使用的用户控件DataTemplate this UserControl包含一个TextBox与Value属性 声明为DependencyProperty of my UserControl 在数据模板中我绑定了这个Value财
  • 像在画布上绘制一样对路径进行动画处理

    我是 WPF 的新手 请指导我解决这个问题的正确方向 我构建了一个 WPF 应用程序 其中包含路线图视图控件的所有功能 IE 路线图可以使用鼠标 键盘和提供的控件进行放大 缩小 向各个方向平移 我已将道路映射为使用 Expression B
  • 哈希表的时间复杂度

    我对哈希表的时间复杂度感到困惑 很多文章都说它们是 摊销 O 1 而不是真正的 O 1 这在实际应用中意味着什么 哈希表中操作的平均时间复杂度是多少 在实际实现中而不是理论上 为什么这些操作不是真正的 O 1 不可能提前知道哈希函数会发生多
  • 实体框架:无法加载指定的元数据资源

    我决定搬家Entity Connection String from app config编码 但是像这样设置之后 public static string GetConnectionString string connection Sql
  • 通过Annotation填充Spring Bean的File字段

    是否可以做这样的事情
  • 一个进程中加载​​的最大应用程序域数量

    由于动态程序集加载需要加载应用程序域才能通过卸载相关的应用程序域来杀死程序集 因此要加载的进程中是否有 最大 数量的应用程序域 我正在考虑一个基于服务器的应用程序 每个用户都可以动态运行他专有的 C 代码 但是 如果有 2000 个用户登录
  • 如何在 OpenCV python 中从图片中删除背景

    因为我是计算机视觉新手 我还想问如何删除该图像的整个背景并仅保留药丸不变 我尝试了不同的方法 例如更改背景颜色 但仍然存在一些小边缘和噪音 或者如果所有白色背景都可以是中性色 而圆圈之间没有线条 这是 Python OpenCV 中的一种方
  • Python:如何从列表中删除空列表? [复制]

    这个问题在这里已经有答案了 我有一个包含空列表的列表 list1 text text2 moreText 如何删除空列表以便我得到 list2 text text2 moreText 我尝试了 list remove 但这不起作用 Try
  • Swagger 2.0:具有不同路径但相同请求和响应的多个 Path 对象

    由于一些向后兼容性的原因 我需要支持这两个路径 ab and a b 两条路径的请求和响应对象将是相同的 我可以在 Swagger 规范中添加类似以下内容 这样我就不必重复两个路径的请求和响应对象定义 paths ab a b post 是
  • ngModel 发生变化,ngModelChange 未被调用

  • 如何在 .net 上运行 Lucene?

    Lucene是一个优秀的搜索引擎 但是 NET版本落后于Java官方版本 最新的稳定 NET版本是2 0 但是最新的Java Lucene版本是2 4 它具有更多功能 你如何解决这个问题 我发现一种令人惊讶的可行方法 从 Java jar
  • UITableView 可以与 UICollectionView 一起滚动吗?

    我有以下结构 我将两个集合视图包装到表视图中 一个位于表视图标题 集合 1 中 另一个位于表视图第一行 集合 2 中 所有功能都很好 两个集合视图 just 当我在 Collection 2 中向上滚动时 Collection 1 不会一起
  • 将 svg 与 angularjs ng-repeat 一起使用

    我正在学习 AngularJS 我正在尝试使用ng repeat创建一个 svg 图表 我有这个html
  • ArgumentError:参数数量错误(1 为 2)

    我对 Rails MVC 和 CRUD 非常陌生 我正在尝试使用更新方法来更改帖子的投票数量 我的帖子控制器更新方法中有以下代码 def update post Post find params id if params vote up p
  • 将服务绑定到广播接收器

    我有一些Service类 注册多个警报 In my 广播接收器类 我想要接收时 方法来调用某些方法Service class 但是 我不知道如何将它们绑定在一起 我试着做广播接收器一个内部类 但后来我遇到了更多错误 根本无法发出警报 Tha
  • Razor 视图看不到 System.Web.Mvc.HtmlHelper

    我正在升级到 MVC4 我已按照以下说明进行操作http www asp net whitepapers mvc4 release notes Toc303253806但在我的 Razor 视图和布局中我有错误 例如 System Web
  • Java 1.5 中是否有相当于 .Net 中 Predicate 方法的方法?

    具体来说 我正在寻找类似的干净符号Collection
  • 使用 Spring Boot 配置 ActiveMQ

    我使用 ActiveMQ 作为 Spring Boot 的嵌入式 看来 Broker 是通过 ActiveMQConnectionFactory 创建的 据我了解 配置代理的方法是在使用代理的查询中设置参数 如此处所述 http activ
  • YARN 如何在集群模式下知道 Apache Spark 中的数据局部性

    假设有一个 Spark 作业将从 HDFS 读取一个名为 Records txt 的文件 并执行一些转换和一个操作 将处理后的输出写入 HDFS 作业将提交到YARN集群模式 还假设 Records txt 是一个 128 MB 的文件 并