問題タブ [pymongo-3.x]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - pymongo - TypeError:ドキュメントはdict、bson.son.SON、またはcollections.MutableMappingから継承する他のタイプのインスタンスでなければなりません
MongoDB
を使用してデータを書き込んでいますpymongo
。
書き込み操作を実行すると、このエラーが発生します。
データを印刷し、insert_one()
呼び出しでコピーすると、シェルで情報が書き込まれます。変数を str に変換しようとしましたが、印刷行をコピーして操作を実行したかのように、どのようにフォーマットされているのかわかりません。追加されます。これにより、JSON オブジェクトの形式に問題はなく、エンコーディングまたはその変形、または返された JSON オブジェクトの小さな構文に問題があると思われます。
python - pymongo==3.0.3: ImportError: 接続という名前のモジュールがありません
pymongo==3.0.3
viaにアップグレードしたところ、次のものpip install --upgrade pymongo
が殺到しましたImportError
。
performance - Pymongo 3.0 で insert_many の既存の _id をスキップする方法はありますか?
_id 衝突が 10 未満の数百万のドキュメントがある DB を更新しています。
現在、PyMongo モジュールを使用して、insert_many を使用してバッチ挿入を行っています。
- _id が存在するかどうかを確認するためにデータベースを照会する
- 次に、_id が存在しない場合は、ドキュメントを配列に追加します
- 一度に 1000 個のドキュメントを insert_many を使用してデータベースに挿入します。
数百万のドキュメントのうち約 10 件の衝突しかありません。現在、各 _id についてデータベースにクエリを実行しています。クエリ プロセスを省略できれば、全体の挿入時間を 1 日か 2 日短縮できると思います。
おそらく、ドキュメントが存在しない場合にのみドキュメントを挿入する upsert に似たものはありますか?
python - インデックスによる配列の個別の集計要素の取得
私は出力として得ました:
配列の 2 番目の要素のみでこの操作を行うにはどうすればよいですか? 次のようなものが必要です:
sockets - PyMongo ソケット recv を改善する
cProfile を使用して (PyMongo 3.0.3 を大量の操作で使用して) コードでプロファイリングを行ったところ、ソケットに多くの時間が費やされていることがわかりました。
14006 68.823 0.005 68.823 0.005 {method 'recv' of '_socket.socket' objects}
このやや関連する回答を見つけましたが、解決策は簡単です。ライブラリコードを変更せずにTCP_NOWAIT
オプションを渡す方法はありますか?PyMongo