- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试通过利用一些分区策略来优化一段 PySpark 代码,特别是对两个 RDDS 进行共同分区,联合它们,并对它们调用reduce 操作(它比这更复杂,但这是一个很好的方法)初始模型)。
查看图中的图表:
(来源:reactivesoftware.pl)
共同分区连接非常高效且精简。我的问题是,我如何知道我的 join/reduce 是否正确地共同分区?我应该在 Spark 应用程序 UI 上看到哪些统计信息?我应该看到哪些性能改进?
最佳答案
当 Spark 中数据未正确共同分区时,系统必须执行洗牌(即将数据移动到新的临时分区以创建执行转换所需的联接。)
因此,两者之间的关键区别在于随机读取和写入时间量,即对于窄依赖关系,您应该看到最少的读取和零写入,而对于广泛的依赖关系,您会看到显着的随机写入。您可以在Spark UI的阶段详细信息中查看shuffle读写统计信息。
通过消除广泛的依赖关系,您确实会看到两个性能提升:
澄清一点:reduce 操作总是会打乱顺序以聚合数据,因此分区策略仅适用于连接。
关于apache-spark - 我如何知道 Spark 连接是高效的共同分区输入连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37266151/
所以,我有一个类似于 this one 的用例,但我觉得有一些额外的细节值得提出一个新问题。 ( related questions ,供引用) 我正在编写一个实现 a cycle 的数据结构.基本设
我正在使用 Django 编写一个社交网络应用程序,需要实现类似于 Facebook“Mutual Friends”概念的功能。我有一个像这样的简单模型: class Friend(models.Mo
我有一个 iOS 应用程序,用户可以在其中使用 Facebook 登录并授予 user_friends 权限。从 Graph API 2.0 开始,Facebook 声称你无法获取两个人之间所有的共同
我想知道将来对我来说最简单的方法是什么,可以使查询既有效又不那么复杂。 我应该像这样保存双向关系吗 from_id=1, to_id=2from_id=2, to_id=1 或者只创建一个唯一的行 f
我是一名优秀的程序员,十分优秀!