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

Python+MongoDB-カーソルの反復が遅すぎる

    付属のC拡張機能 ?

    >>> import pymongo
    >>> pymongo.has_c()
    True
    

    私は先週のほとんどを、実行に20秒かかった中規模のクエリとそれに対応する処理のデバッグに費やしました。 C拡張機能をインストールすると、同じプロセス全体に約1秒かかりました。

    DebianにC拡張機能をインストールするには、easyinstallを実行する前にPython開発ヘッダーをインストールします。私の場合、古いバージョンのpymongoも削除する必要がありました。これによりCからバイナリがコンパイルされるため、通常のツールがすべて必要になることに注意してください。 (GCCなど)

    # on ubuntu with pip
    $ sudo pip uninstall pymongo
    $ sudo apt-get install python-dev build-essential
    $ sudo pip install pymongo
    


    1. 実行されたクエリを確認するためのMongoDBデータベースのプロファイリング

    2. MongoDB $ toString

    3. $lookup集約演算子でシャーディングを使用するMongoDB

    4. MongoDB $ atan