問題タブ [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 remove/update コマンドが返す
mongodb で何かを削除または更新すると、結果として返されます
pymongo のこれらのフィールドにアクセスして、更新/削除が成功したか失敗したかを確認する方法を知りたいです。
mongodb - Mongod ロックの防止
mongodb のドキュメントと pymongo API をしばらく見ても、どのルートを進むべきかについてはまだ明確ではありません (開始したときよりも混乱しています)。私の問題はロックに関するものです...私がテストした結果、同時実行性に大きな問題があることがわかったほどではありませんが、事後にそれらに遭遇したくはありません。
私はいくつかの機能を持つ tkinter スクリプトを持っています。それらはすべて同じドキュメント コレクションにアクセスする必要があり、それらのほとんどはそのコレクション内の同じ単一のドキュメントにアクセスします。
そして、呼び出されたサブプロセス (別々のスクリプトで)、複数のインスタンスが可能です:
では、この場合、すべての関数で client.close() を使用するだけで十分でしょうか?
while ループでも同様です。
それで十分でしょうか、それともこの場合はシャードを検討する必要がありますか? または、SQL に戻る必要があります。
Mongodb 3.0.6 32 ビット、pymongo 3.03、python 2.7。
python - Pymongo : レプリカ セット内の必要なホスト (特に SECONDARY) のみからの接続と読み取りを確保する方法
バックグラウンド
mongoDB 本番クラスター (シャーディングされていない) 3 つのホスト。それらはレプリカ セット rs0 に属します
- H1 - プライマリ
- H2 - セカンダリ
- H3 - セカンダリ
pymongoを使用してpythonスクリプトを作成しようとしています。これは運用クラスターであるため、プライマリに負担をかけず、通常のアクティビティのために解放しておくために、スクリプトでH3 セカンダリ レプリカ セットからのみ読み取りを行う必要があります。データは、2000 ドキュメントのバッチで「デバイス」と呼ばれるコレクションから取得されます。これにより、読み取り操作のオーバーヘッドがさらに削減されます。
関連コード
また、以下のようにクラスター内のすべてのホストに言及することにより、少し異なる方法でクライアントを作成しようとしました
問題
私の理解によると、上記のクライアントはセカンダリ レプリカ セットからのみ読み取ります。しかし、スクリプトを実行してクラウド マネージャーを見ると、プライマリである H1 は、ページ フォールトが ~15-20 から ~600 に急激に増加していることを示しています。
環境
- Mongo DB 3.0.3 (MMAPv1 ストレージ エンジン)
- パイソン 2.7.9
- ピモンゴ 3.0.3
- OS アマゾン Linux
python - ImportError: 名前 MongoClient をインポートできません
初めてpymongoをインストールしたばかりで、すぐに問題が発生しました。MongoDB Web サイトの基本的なpython チュートリアルの例を実行すると、すぐに次の応答が返されます。
コードは次のようになります。
私はpython 2.7とpymongo 3.0.3を実行しています
python - pymongo で Explain("executionStats") を使用したクエリ
説明を含むリクエストに問題があります。例として、次のリクエストはうまく機能します:
Explain メソッドの項目のリストがよく印刷されています。
ただし、次のリクエストで Explain() メソッドから executionStats アイテムのみが必要な場合:
次のエラーがあります。
それが何であるか、この問題を解決する方法を知っている人はいますか?
タイ
mongodb - カーソルがタイムアウトしたかどうかを確認する
データベースで開いているカーソルがまだタイムアウトしているかどうかを確認することはできますか? プロパティは、.alive
実際に を呼び出さないと更新されないように見えますがnext()
、それによってカーソル位置が進むことにもなり、これは望ましくありません。
背景: Web クライアントにデータを遅延読み込みしています。クライアントがカーソルからさらにデータを要求できるように、サーバー側でカーソルを開いたままにしています。Mongo でカーソルをタイムアウトさせます。これは、ユース ケースには十分であり、カーソルの保証されたガベージ コレクションを簡素化するためです。ただし、開いているカーソル参照を Python 側で管理する必要があります。これは、時折のガベージ コレクション サイクルで行っています。このサイクル中に、Mongo 側で既にタイムアウトになっているカーソルを破棄したいと思います。