我们要求处理来自kafka的火花流消息。我们从中提取消息的kafka主题有大约100种类型的多种类型的消息。但我们只对大约15种消息感兴趣。
目前需要在RDD或Dataframe上提取所有消息并应用过滤器选项。
由于很多消息在初始阶段被浪费了,他们是否会阻止kafka向我们发送这些消息以引发流媒体?如果有可能,我们可以使用较少的节点容量来运行火花流。
我们每分钟可获得大约100 K条消息,其中我们只处理15k条消息。
单独的主题对我们不起作用,因为kafka和制作人由第三方供应商管理。
答案 0 :(得分:0)
我看到有这种特殊要求的问题的解决方案:
询问第三方供应商是否可以将messageType设置为密钥。这可能会让您只能按"键"在你的Spark应用程序中,甚至没有解析"值" Kafka消息中的字段。
此外,这种方法还可以让您有机会最小化您需要读取的分区,因为相同的密钥将转到相同的分区。这在以下前提下工作: