У меня возникли некоторые проблемы со следующим кодом в моем блокноте Jupyter. >
Код: Выделить всё
import pyspark
from pyspark.sql import SparkSession
import pyspark.sql.functions as f
from pyspark.sql.functions import explode,col
from pyspark.conf import SparkConf
from pymongo.mongo_client import MongoClient
from pymongo.server_api import ServerApi
uri = "mongodb://localhost:27017/connection1"
spark = SparkSession \
.builder \
.master("local") \
.appName("Tesi") \
.config("spark.mongodb.read.connection.uri", uri) \
.config("spark.mongodb.write.connection.uri", uri) \
.config('spark.jars.packages', 'org.mongodb.spark:mongo-spark-connector_2.13:10.3.0') \
.config("spark.driver.bindAddress", "127.0.0.1")\
.getOrCreate()
df = spark.read \
.format("mongodb") \
.option("uri", uri) \
.option("database", "local") \
.option("collection", "electricity_readings") \
.load()
Код: Выделить всё
An error occurred while calling o213.load.
: org.apache.spark.SparkClassNotFoundException: [DATA_SOURCE_NOT_FOUND] Failed to find the data source: mongodb.
Это соответствующие переменные среды.
- < li>PYSPARK_HOME = C:\Users\filos\AppData\Roaming\Python\Python39\site-packages\pyspark
- SPARK_HOME = C:\Spark\spark-3.5.1-bin- Hadoop3
- JAVA_HOME = C:\Progra~1\Java\jdk-18.0.1.1
- Путь содержит указанные выше переменные с соответствующими папками bin< /li>
HADOOP_HOME = C:\Hadoop (он содержит только папку bin с winutils.exe)
Код: Выделить всё
An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext.
: java.io.IOException: Failed to connect to xxx/xxx.xxx.x.x:59587
...
Caused by: java.net.ConnectException: Connection refused: no further information
...
Я считаю, что загруженные мной jar-файлы должны быть куда-то помещены, и, возможно, необходимо установить переменную CLASSPATH, чтобы читать эти jar-файлы, но я не уверен, как это сделать, поскольку простое помещение случайной папки с jar-файлами в качестве значения для CLASSPATH вызывает исключение.
Подробнее здесь: https://stackoverflow.com/questions/786 ... ark-to-mon