火花调优使用执行器优化运行时间

pipis返回

当我运行 Spark 流应用程序时,4 个执行程序的运行时间是否可能比 1、2、6、10 个执行程序的运行时间更长?

命运

如果您使用 4 个执行程序(4 个不同的 Java 进程)运行 Spark 作业,并且每个执行程序都配置为具有 1 GB 内存和只有 1 个内核(--executor-memory 1g --executor-cores 1),那么意味着您一次只能运行一个工作任务。使用您拥有的相同配置增加执行程序的数量将产生更好的结果。

如果您只想使用 4 个执行器来提高性能,那么增加内核数量将提高并行度(同时运行更多的工作任务)。但是,随着内核数量的增加,您很可能需要更多内存,并且随着内存使用量的增加,您需要确保不会遇到 Java 性能问题(垃圾收集)。

因此,为了在没有任何其他细节的情况下非常简短地回答您的问题,理论上您可以使用 4 个具有 3 或 4 个核心(并行运行 12 或 16 个任务)的执行器获得更好的结果,而不是只有 1 个核心的 6 或 10 个执行器每个(一次运行 6 或 10 个任务)。

编辑:

我忽略了你在这里关于“Spark Streaming”的声明。除了执行程序的数量之外,还有更多的考虑因素会影响您的 Spark 流应用程序的性能。在某些情况下,例如使用直接 API 从单个 Kafka 主题分区读取数据,增加执行程序和内核的数量根本不会产生任何影响。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

算法的运行时间优化

来自分类Dev

优化模式匹配的运行时间

来自分类Dev

纱线上的火花工作| 性能调优和优化

来自分类Dev

程序执行时间极短的运行时间

来自分类Dev

文本搜索的运行时间非常慢[优化]

来自分类Dev

优化C ++代码以匹配参考运行时间

来自分类Dev

使用QueryPerformanceCounter()向后运行时间

来自分类Dev

在MPI下运行时使用非线性求解器时优化挂起

来自分类Dev

为什么使用EMR上的自定义设置减少火花执行器的数量

来自分类Dev

使用 sparklyr 和 R 获取活动火花执行器的数量

来自分类Dev

在测量代码的运行时间时,我将如何使用执行代码来求解矩阵?

来自分类Dev

在多个执行程序中运行时,火花作业被卡住

来自分类Dev

在多个执行程序中运行时,火花作业被卡住

来自分类Dev

如果运行时间太长,则中止函数执行

来自分类Dev

火花执行器的内存减少到1/2

来自分类Dev

火花执行器的内存减少到1/2

来自分类Dev

如果使用反射,则会丢失哪种运行时优化

来自分类Dev

使用numpy或scipy优化sympy代码的运行时

来自分类Dev

我应该使用执行器只运行1个Runnable吗?什么时候使用执行器?

来自分类Dev

子外壳中的时间执行器

来自分类Dev

可执行文件的运行时间是否会显着增加运行时间

来自分类Dev

PLSQL 脚本优化/调优

来自分类Dev

运行时间控制

来自分类Dev

运行时间太长

来自分类Dev

算法的运行时间

来自分类Dev

确定运行时间

来自分类Dev

无限运行时间

来自分类Dev

执行器服务和可运行

来自分类Dev

执行器映射未运行功能