2017-08-12 24 views
0

現在、私はmongoDBを使用してかなり大きなデータベースのインデックスを作成しようとしています。それには、さまざまな長さの「コンテンツ」と呼ばれるすべてのドキュメントのフィールドがあります。一度インデックスを作成しようとしましたが、2時間実行してインデックス作成を完了しましたが、1024バイトを超えるものがあるため、作成しませんでした。私は限界マニュアルを読んでみましたが、私は100%がこれらの限界が何を意味しているのか分かりません。それは最大の1024バイトにすることができます "コンテンツ"フィールドですか?これと同じように:mongoDBインデックスの制限

{ "Content" : "Can this be max 1024 bytes?" }

または私は完全にこれを誤解していますか?

https://docs.mongodb.com/manual/reference/limits/

答えて

0

ドキュメントは言う:

BSONタイプに応じ構造オーバーヘッドを含むことができるインデックスエントリの合計サイズは、1024バイト未満でなければなりません。

フィールド"Content"の値を索引付けしているので、正しく理解できます。フィールド"Content"の各値は、インデックス付きドキュメントあたり1024バイト未満でなければなりません。

一部のバイトは、メタ値を格納するデータ型によって予約されています。たとえば、値がStringの場合、長さとエンコンディングはオーバーヘッド値で、1024バイトに収まる必要があるため、実際のコンテンツのバイト数は残り少なくなります。 1000バイト以下で保存してみてください。

{ "Content" : "this value must stay below 1024 bytes!" } 
関連する問題