gpt4 book ai didi

apache-spark - 如何增加处理Spark Streaming/Kafka中某个阶段的执行者数量?

转载 作者:行者123 更新时间:2023-12-04 04:01:39 25 4
gpt4 key购买 nike

我正在尝试使用 Spark Streaming Direct 方法从 Kafka(1 个主题,5 个分区)读取数据。为了增加处理数据的并行性,我设置了 Dstream.repartition(60)。然而,每批流的每个阶段似乎只有 5 个执行程序在运行?

我设置了这些参数:

--num-executors 20 
--executor-cores 4
--executor-memory 3G
--driver-memory 3G
--spark.default.Parallelism 60

我的困惑是:
我想减少处理时间,所以我尝试增加 Vcores 的数量,但这种方法似乎不起作用。为什么?谢谢。

最佳答案

(1 topic, 5 partitions) using Spark Streaming Direct approach.... It seems that only 5 executors are running

这就是您要得到的全部。每个主题分区不能有多个消费者。

获得 Spark(或任何 Kafka Consumer 组)的唯一方法是扩展更多执行程序,即对主题本身进行重新分区,这是与 Spark 中的重新分区不同的术语

注意:增加一个主题的分区数是可以的,但是对于重新分区之前写入的最后一条消息的主题保留策略,消息的键将不再是一对一的

重新分区主题后,我相信您必须重新启动 Spark 应用程序,因为它不会动态获取新主题数据

关于apache-spark - 如何增加处理Spark Streaming/Kafka中某个阶段的执行者数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52049795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com