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

クエリ内のすべてのドキュメントのサイズを取得します

    これが私が見つけた答えです:

    var cursor = db.collection.find(...); //Add your query here.
    var size = 0;
    cursor.forEach(
        function(doc){
            size += Object.bsonsize(doc)
        }
    );
    print(size);
    

    ドキュメントのサイズをバイト単位でかなり正確に出力する必要があります。

    コマンドを2回実行しました。初めて、141 215のドキュメントがあり、一度ダンプすると、合計で約108mbになりました。コマンドの出力とディスク上のサイズの違いは787バイトでした。

    2回目にコマンドを実行したとき、35 914 179のドキュメントがあり、一度ダンプすると、合計で約57.8GBになりました。今回は、コマンドとディスク上の実際のサイズの間でまったく同じサイズでした。



    1. CMakeExternalProject_Addを使用してmongo-cxx-driverをビルドする

    2. マングースでフィールドのサブセットを更新する

    3. MongoDB $ examples

    4. mgoでタイプマッピングを実施する