【发布时间】:2016-01-21 10:59:26
【问题描述】:
我们在谷歌云平台上使用 Bitnami Kafka 0.8.2 + spark 1.5.2。我们的火花流作业(消费者)没有收到发送到特定主题的所有消息。它接收约 50 条消息中的 1 条(在作业流中添加日志并识别)。我们在 kafka 日志中没有看到任何错误。无法从 kafka 层进一步调试。控制台使用者显示在控制台中接收到 INPUT 主题。它没有达到 spark-kafka 集成流。任何想法如何调试此问题。另一个主题在相同的设置中运行良好。 再次尝试使用 spark 1.3.0、kafka 0.8.1.1 也有同样的问题。所有这些工作都在我们的本地实验室服务器上运行良好
【问题讨论】:
-
您是否使用 KafkaUtils.createDirectStream() 从 Kafka 读取消息?在您向 Kafka 发布任何消息之前,火花流作业是否开始工作?
-
是的,我们已经发现了问题。它与google cpu中的线程行为差异有关。我们在使用 groupByKey([numTasks]) 的作业中有一个转换映射/缩减行。 NumTasks 定义为 10 - 在本地服务器上运行良好。删除了 Numtasks 以使用默认值,并在谷歌平台上开始工作。但是我们仍然有一些性能问题。计划将 groupbykey 更改为 reducebykey。
标签: apache-spark apache-kafka google-cloud-platform spark-streaming