Apache spark 1000+的火花流式设计;话题
Apache spark 1000+的火花流式设计;话题,apache-spark,spark-streaming,spark-dataframe,Apache Spark,Spark Streaming,Spark Dataframe,我必须用下面的用例设计一个spark流媒体应用程序。我正在寻找最好的方法
我有一个应用程序,它将数据推送到1000多个不同的主题中,每个主题都有不同的目的。Spark streaming将从每个主题接收数据,并在处理后将其写回相应的另一个主题
Ex.
Input Type 1 Topic --> Spark Streaming --> Output Type 1 Topic
Input Type 2 Topic --> Spark Streaming --> O
我必须用下面的用例设计一个spark流媒体应用程序。我正在寻找最好的方法
我有一个应用程序,它将数据推送到1000多个不同的主题中,每个主题都有不同的目的。Spark streaming将从每个主题接收数据,并在处理后将其写回相应的另一个主题
Ex.
Input Type 1 Topic --> Spark Streaming --> Output Type 1 Topic
Input Type 2 Topic --> Spark Streaming --> Output Type 2 Topic
Input Type 3 Topic --> Spark Streaming --> Output Type 3 Topic
.
.
.
Input Type N Topic --> Spark Streaming --> Output Type N Topic and so on.
我需要回答以下问题
每个主题启动1000多个spark流媒体应用程序是一个好主意吗?或者我应该为所有主题提供一个流媒体应用程序,因为处理逻辑将是相同的
如果是一个流上下文,那么我将如何确定哪个RDD属于哪个卡夫卡主题,以便在处理后可以将其写回相应的输出主题
客户端可以从Kafka添加/删除主题,如何在Spark流媒体中动态处理李>
如何在出现故障时自动重新启动作业
你们这里还有其他问题吗
高度赞赏你的反应
1000个不同的Spark应用程序将不可维护,想象一下部署或升级每个应用程序
您必须使用而不是接收器方法,否则您的应用程序将使用超过1000个内核,如果您没有更多内核,它将能够从您的卡夫卡主题接收数据,但不能处理它们。发件人:
请注意,如果希望在流应用程序中并行接收多个数据流,则可以创建多个输入数据流(在“性能调优”一节中进一步讨论)。这将创建同时接收多个数据流的多个接收器。但是请注意,Spark worker/executor是一个长期运行的任务,因此它占用分配给Spark流应用程序的一个核心
您可以查看(Kafka 0.8和0.10各有一个)doc如何查看消息属于哪个主题
如果客户端添加新主题或分区,则需要更新Spark Streaming的主题配置并重新部署。如果使用Kafka 0.10,还可以使用正则表达式作为主题名称,请参阅。我曾经阅读过卡夫卡0.8中删除的主题,没有问题,仍然验证(“信任,但验证”)
请参阅,在将应用程序提交到集群时也使用模式--supervise
,有关更多信息,请参阅
为了实现一次语义,我建议使用Spark Streaming的主要提交者提供的Github:
奖金,良好的类似StackOverFlow post:
Bonus2:注意即将发布的Spark 2.2和结构化的流媒体组件
1000个不同的Spark应用程序将不可维护,想象一下部署或升级每个应用程序
您必须使用而不是接收器方法,否则您的应用程序将使用超过1000个内核,如果您没有更多内核,它将能够从您的卡夫卡主题接收数据,但不能处理它们。发件人:
请注意,如果希望在流应用程序中并行接收多个数据流,则可以创建多个输入数据流(在“性能调优”一节中进一步讨论)。这将创建同时接收多个数据流的多个接收器。但是请注意,Spark worker/executor是一个长期运行的任务,因此它占用分配给Spark流应用程序的一个核心
您可以查看(Kafka 0.8和0.10各有一个)doc如何查看消息属于哪个主题
如果客户端添加新主题或分区,则需要更新Spark Streaming的主题配置并重新部署。如果使用Kafka 0.10,还可以使用正则表达式作为主题名称,请参阅。我曾经阅读过卡夫卡0.8中删除的主题,没有问题,仍然验证(“信任,但验证”)
请参阅,在将应用程序提交到集群时也使用模式--supervise
,有关更多信息,请参阅
为了实现一次语义,我建议使用Spark Streaming的主要提交者提供的Github:
奖金,良好的类似StackOverFlow post:
Bonus2:请注意即将发布的Spark 2.2和结构化的流媒体组件我认为您应该查看Kafka流以了解此类用例。我认为你应该看看卡夫卡流的这种用例。谢谢关于使用spark阅读平行主题,您是否建议可以配置任何优化?理想情况下,在生产集群中,我们应该发布多少spark streaming应用程序?关于Kafka的消费者,我建议您使用这些幻灯片,并确保在您的办公室打印最后一张幻灯片:)我无法告诉您集群的spark应用程序的数量,这取决于您集群的容量。关于使用spark阅读平行主题,您是否建议可以配置任何优化?理想情况下,在生产集群中,我们应该发布多少spark streaming应用程序?关于Kafka的消费者,我建议您使用这些幻灯片,并确保在您的办公室打印最后一张幻灯片:)我无法告诉您集群的spark应用程序的数量,这取决于您的集群容量