有没有办法使用spark-connector本地获取数据库集合名称。
现在我正在使用pymongo来做这件事,但我想知道是否可以用火花连接器做到这一点。
我的实际方法,仅供参考:
from pymongo import MongoClient
db = MongoClient().database
db_names = db.collection_names(False)
for name in db_names:
spark = SparkSession\
.builder\
.config("spark.mongodb.input.uri", "mongodb://localhost:27017/database." + name) \
.config("spark.mongodb.output.uri", "mongodb://localhost:27017/database." + name) \
.getOrCreate()
...
答案 0 :(得分:1)
使用python,Mongo Spark Connector仅使用Spark API,因此没有本地方式来列出集合。
此外,请注意SparkSession
是单身人士,因此在更改集合时,应使用DataFrameReader
方法在option()
上完成配置。