問題タブ [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.

0 投票する
2 に答える
8044 参照

mongodb - pymongo - TypeError:ドキュメントはdict、bson.son.SON、またはcollections.MutableMappingから継承する他のタイプのインスタンスでなければなりません

MongoDBを使用してデータを書き込んでいますpymongo

書き込み操作を実行すると、このエラーが発生します。

データを印刷し、insert_one()呼び出しでコピーすると、シェルで情報が書き込まれます。変数を str に変換しようとしましたが、印刷行をコピーして操作を実行したかのように、どのようにフォーマットされているのかわかりません。追加されます。これにより、JSON オブジェクトの形式に問題はなく、エンコーディングまたはその変形、または返された JSON オブジェクトの小さな構文に問題があると思われます。

0 投票する
3 に答える
4694 参照

python - pymongo==3.0.3: ImportError: 接続という名前のモジュールがありません

pymongo==3.0.3viaにアップグレードしたところ、次のものpip install --upgrade pymongoが殺到しましたImportError

0 投票する
2 に答える
4473 参照

performance - Pymongo 3.0 で insert_many の既存の _id をスキップする方法はありますか?

_id 衝突が 10 未満の数百万のドキュメントがある DB を更新しています。

現在、PyMongo モジュールを使用して、insert_many を使用してバッチ挿入を行っています。

  1. _id が存在するかどうかを確認するためにデータベースを照会する
  2. 次に、_id が存在しない場合は、ドキュメントを配列に追加します
  3. 一度に 1000 個のドキュメントを insert_many を使用してデータベースに挿入します。

数百万のドキュメントのうち約 10 件の衝突しかありません。現在、各 _id についてデータベースにクエリを実行しています。クエリ プロセスを省略できれば、全体の挿入時間を 1 日か 2 日短縮できると思います。

おそらく、ドキュメントが存在しない場合にのみドキュメントを挿入する upsert に似たものはありますか?

0 投票する
1 に答える
72 参照

python - インデックスによる配列の個別の集計要素の取得

私は出力として得ました:

配列の 2 番目の要素のみでこの操作を行うにはどうすればよいですか? 次のようなものが必要です:

0 投票する
1 に答える
276 参照

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