pyspark 针对mongodb的读写

1.创建pyspark与mongodb的连接,首先加载依赖包,其有三种方式:

1)直接将其放在在安装spark的jars目录下;

2)在spark_submit中,添加依赖包信息;

3)在创建spark的对象的时候添加依赖信息,具体案例如下图所示

spark = SparkSession \
.builder \
.appName('mongo connection') \
.config("spark.mongodb.input.uri", "mongodb://节点:端口号/dev.myCollection?readPreference=primaryPreferred") \
.config("spark.mongodb.output.uri", "mongodb://节点:端口号/dev.myCollection") \
.config('spark.jars.packages', "org.mongodb.spark:mongo-spark-connector_2.11:2.4.2") \
.getOrCreate()

备注:

config的信息,都可以在spark_submit中添加。

2.读取mongodb

df1 = (
spark.read
.format("mongo")
.option("database", 'dev')
.option("collection", 'test_mongo_connect')
.load()
)

3.写入mongodb

df = spark.createDataFrame([(1,), (2,)], ['a'])
(
df.write
.format("mongo")
.mode("overwrite")
.option("database", 'dev')
.option("collection", 'test_mongo_connect')
.save()
)

posted on 2020-10-27 17:20  random_boy  阅读(1404)  评论(0)    收藏  举报

导航