sql >> データベース >  >> NoSQL >> MongoDB

pysparkを使用してmongodbにデータフレームを保存する方法は?

    pysparkからmongodbに書き込む効率的な方法は、MongoDBを使用することです。 Sparkコネクタ 。 ConnectorはデータをBSON形式に変換し、mongodbに保存します。 mongodbに保存したいdfという名前のsparkデータフレームがあるとしましょう。試すことができます:

    from pyspark.sql import SparkSession, SQLContext
    from pyspark import SparkConf, SparkContext
    sc = SparkContext()
    spark = SparkSession(sc)   
    
    
    df.write.format("com.mongodb.spark.sql.DefaultSource").mode("append").option("spark.mongodb.output.uri","mongodb://username:[email protected]_details:27017/db_name.collection_name?authSource=admin").save()
    

    ノートブックを使用している場合は、これを上部に記入してください-

    %%configure
    {"conf": {"spark.jars.packages": "org.mongodb.spark:mongo-spark-connector_2.11:2.3.2"}}
    

    spark-submitコマンドを使用している場合:

    spark-submit --conf spark.pyspark.python=/usr/bin/anaconda/envs/py35/bin/python3.5 --packages org.mongodb.spark:mongo-spark-connector_2.11:2.3.1 file_name.py
    


    1. MongoRepositoryの実装/オーバーライドはHATEOASフォーマットを維持します

    2. SpringDatamongo-Distinctコレクションの問題

    3. MongoDBは、コレクション内のリスト内の各dictを検索します

    4. 修正方法:'MongoError:認証に失敗しました' @MongoDB Atlas