首页 > 解决方案 > 无法在 python 3.7 版中设置 KafkaUtills.createdirectstream 偏移量

问题描述

我用 pyspark kafka 制作了直接流。但我无法在其中设置 fromOffset 的值。它给了我一个异常 ClassCastException Long cannot be assigned to int 但问题是我们在 python 版本 3 中没有 long 数据类型。那么如何解决这个问题?如何在 python 3 中设置 fromOffset 值而不将其转换为 long?我这样做是为了消耗那些在消费者死亡时仍未阅读的消息......我使用了这个链接中提到的方法pySpark Kafka Direct Streaming update Zookeeper / Kafka Offset

谢谢

标签: kafka-consumer-api

解决方案


如果您使用的是 0_10 版本的流 jar 文件,请检查您的 spark 提交代码,您将收到上述错误。0_10 版本将不支持 python。您可以使用 0_8 Kafka 版本代替 0_10。

Kafka 0_8 版本将接受整数偏移值。

您能否参考以下文件。

https://spark.apache.org/docs/2.2.0/streaming-kafka-integration.html


推荐阅读