【问题标题】:Spark limit number of executors per serviceSpark 限制每个服务的执行者数量
【发布时间】:2019-10-18 10:51:02
【问题描述】:

我们正在使用 Spark 流 (java) 进行实时计算。部署有 6 个节点的 spark 集群(配置设置适用于跨节点的 200 个执行器)。

目前有一项服务正在 Rabbitmq 队列中发布事件。现在我们计划再添加两个服务。如果我为每个队列创建火花接收器,是否可以限制在负载情况下可以为一项服务提供服务的最大执行程序数量(比如最大限制 50%。因此在上述情况下,最多 100 个执行程序可以服务从服务接收的流/接收者)?

谢谢 希希尔

【问题讨论】:

    标签: apache-spark spark-streaming


    【解决方案1】:

    Explore 在 spark 作业属性下,它将解决您的问题。

    对于最小资源(spark.dynamicAllocation.minExecutors)

    最大资源(spark.dynamicAllocation.maxExecutors)

    【讨论】:

    • 抱歉回复晚了。这里的背压配置在消费者处,因此如果接收器从 2 个不同的队列消费,而不是相同的背压适用于两者。我们希望接收者使用来自每个队列的具有不同背压/速率的事件(即来自队列 A 的 150 条消息和来自队列 B 的 50 条消息)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-11
    相关资源
    最近更新 更多