3

私は、wiredTiger エンジンを使用して MongoDB 3.0 でデータ圧縮を有効にしようとしています。圧縮はサーバー レベルで正常に機能し、次のように mongo サーバー構成ファイル内のすべてのコレクションにグローバル圧縮アルゴリズムを提供できます。

storage:
  engine: wiredTiger
  wiredTiger:
    collectionConfig:
      blockCompressor: zlib

この圧縮をコレクション レベルで有効にしたいと考えています。これは、mongodb シェルで以下のコードを使用して実行できます。

db.createCollection( "test", {storageEngine:{wiredTiger:{configString:'block_compressor=zlib'}}} );

pymongo ドライバーを使用してこれを行うにはどうすればよいですか?

from pymongo import MongoClient
client = MongoClient("localhost:27017")
db = client.mydb
4

1 に答える 1

9

Mongo シェル経由で動作する場合は、同じパラメーターを pymongo 経由で渡します。

db.create_collection('test',
                     storageEngine={'wiredTiger':{'configString':'block_compressor=zlib'}})

公式ドキュメントから、

create_collection(name, codec_options=なし, read_preference=なし, write_concern=なし, read_concern=なし, **kwargs)

...

**kwargs (オプション): 追加のキーワード引数が create collection コマンドのオプションとして渡されます

于 2015-12-18T14:16:51.193 に答える