gpt4 book ai didi

java - 如何将 jar 附加到正在执行作业的 Spark 集群?

转载 作者:太空宇宙 更新时间:2023-11-04 10:15:27 25 4
gpt4 key购买 nike

Spark 流确实很棒。但是当我使用它时,我遇到了一个问题。

场景:我使用 Spark Streaming 来消费来自 Kafka 的消息。目前有两个主题,我对它们进行了硬编码。但它不利于可扩展性。

例如,如果有一个新主题,我需要为 parquet 模式定义一个 scala 类。然后停止正在运行的 Spark 并再次启动 Spark 。

我期望的是spark仍在运行,我可以添加新的jar库并通知spark在新jar中加载新类。这样spark就可以消费新的主题消息并将相关的parquet写入HDFS。

非常感谢您能就此向我提出一些建议。我搜索了动态加载,但问题是如何将新的 jar 附加到现有正在运行的 Spark 而不停止它。

提前谢谢您。

最佳答案

元数据是适合您情况的理想解决方案。您需要维护一个元数据服务,该服务由 Spark Streaming 应用程序使用,作为其使用者的引用。

类似的东西通过 REST API 公开 -

{
topicName: {},
schema: {},
outputPath:
}

并从自定义 SparkListener 实现中添加触发器。

关于java - 如何将 jar 附加到正在执行作业的 Spark 集群?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51783700/

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