获取:导入 Spark 模块时出错:没有名为 'pyspark.streaming.kafka' 的模块

Getting : Error importing Spark Modules : No module named 'pyspark.streaming.kafka'

我需要将从 pyspark 脚本创建的日志推送到 kafka。我正在做 POC,所以在 windows 机器上使用 Kafka 二进制文件。我的版本是 - kafka - 2.4.0,spark - 3.0 和 python - 3.8.1。我正在使用 pycharm 编辑器。

import sys
import logging
from datetime import datetime

try:
    from pyspark import SparkContext
    from pyspark.streaming import StreamingContext
    from pyspark.streaming.kafka import KafkaUtils

except ImportError as e:
    print("Error importing Spark Modules :", e)
    sys.exit(1)

获取错误

Error importing Spark Modules : No module named 'pyspark.streaming.kafka'

我在这里缺少什么?缺少任何库? pyspark 和 spark streaming 工作正常。如果有人可以在这里提供一些指导,我将不胜感激。

从 Spark 2.4 开始不推荐使用 Spark Streaming。

您应该通过 pyspark.sql 模块使用结构化流媒体

问题出在我用于 python 和 spark 的版本上。 我使用的是 python 3.8,它不完全支持 pyspark。我将版本更改为3.7。另外 spark 3 仍在预览中,将其更改为 2.4.5.,它起作用了。