我试图理解火花是如何在引擎盖下洗牌依赖的。因此,我有两个问题:
>
在Spark中,执行器如何知道从其他执行器提取数据?
我将分点回答你的问题
1.执行者如何知道从其他执行者那里提取数据?执行器不知道其他执行器做了什么,但是驱动程序知道你可以把这个过程看成是皇后和工人,皇后把任务推给执行器,每个执行器完成任务后返回的结果。
2.每个执行者在完成其地图端任务后,是否将其状态和位置更新到某个中心实体(可能是驱动程序)
4.在具有shuffle依赖关系的作业中,驱动程序是否只有在所有映射端任务完成后才调度连接(或其他关于shuffle依赖关系的任务)?
它是可配置的,您可以更改它。您可以查看此链接以获得更多信息https://0x0fff.com/spark-architecture-shuffle/
5.是否意味着每个任务都会通知驱动程序它的状态,驱动程序会及时编排其他依赖的任务?
每个任务都通知并发送心跳给驱动程序,spark实现推测执行技术。因此,如果任何任务失败/慢火花将运行另一个任务。更多详情请访问http://asyncified.io/2016/08/13/Leveraging-Spark-Spressing-to-Idential-and-re-schedule-slow-running-tasks/
我在databricks中使用spark结构化流媒体。在这里,我使用foreach操作对每个数据记录执行一些操作。但是我传递给foreach的函数使用了SparkSession,但它抛出了一个错误:_pickle。PicklingError:无法序列化对象:异常:似乎您正试图从广播变量、操作或转换引用SparkContext。SparkContext只能在驱动程序上使用,不能在工作程序上运行的代码
问题内容: 我正在与Resque- worker(5名工人)一起工作。现在,当这项工作完成/完成时,我想触发另一个工作程序,该工作程序处理先前存储在db中的数据。什么是最合适的方法? 问题答案: 我不确定这是否有帮助,但是您看过这颗宝石吗?这样,您可以跟踪给定作业的状态,以查看其完成时间。但是我深感没有新的自动触发功能。
本文向大家介绍你知道NodeJs是如何工作的吗?相关面试题,主要包含被问及你知道NodeJs是如何工作的吗?时的应答技巧和注意事项,需要的朋友参考一下 node的工作原理: node使用chrom的V8引擎来解释编译JS语言,将编译后的代码传递给libuv,在libuv中进行区别是调用linux的libev/libio还是window的IOCP实现具体操作 node中事件环工作原理:node执行J
创建部门表 到目前为止,我已经收到了下面的查询,我无法得到该部门工作的员工人数。我怎么能那么做?
我希望通过Workday API检索Workday worker(又名employee)的web配置文件URL。使用案例是,我正在构建一个聊天机器人来检索用户信息,我希望能够深入链接到工人(员工)的web配置文件。 问题是我不能做以下任何一项: 从API获取web配置文件URL 从API中的数据创建web配置文件URL web配置文件URL如下所示。用户ID看起来像就在扩展名,因为这是员工档案之间
我正在使用Amazon AWS构建一个用于教育目的的小型应用程序。Web应用程序有两个部分: < li >用于上传图像的表单。 < li >显示上传图像的所有缩略图的网格。 用户打开网页 用户选择要上载的图像 向web层发送AJAX请求,以生成预先签名的S3 URL 收到URL后,将启动AJAX PUT请求,并将图像直接上载到S3。 上传完成后,S3发送一条带有图像密钥的SQS队列消息 其中一个工