21

既知の情報: MongoDB は BSON ( Binary JSON ) に格納され、 BSON ドキュメントの最大サイズは 16MB であることが知られています。

質問:なぜ 16MB 自体なのか、32MB や 64MB、またはそれ以上ではないのか、また 16MB の制限が正確にどこに設定されているのか、正確に 16MB に依存する理由は何ですか?

送信中に過剰な帯域幅が消費されることはなく、サーバーで過剰な量の RAM を必要としないことが言及されています。しかし、ネットワーク帯域幅と RAM メモリ消費量に余裕があるとしたらどうでしょう。また、 GridFS以外のオプションはありません。なんで?

ばかげているように聞こえるかもしれません。しかし、誰かがこれに明るい光を当てることができますか?


更新: 4MB でしたが、現在は 16MB です。

mongodb BSON サイズ

次のコマンドを発行して、Mongo Shell で確認できます。

db.isMaster().maxBsonObjectSize/(1024*1024)

DBAによる設定が許可されていないのはなぜですか?

4

1 に答える 1

21

値を 4MB から 16MB に増やした JIRA チケットのスレッドを確認してください。チケットについてはかなりの議論があります: https://jira.mongodb.org/browse/SERVER-431

彼らが 16MB を選んだ理由は恣意的なようで、32MB とは言いません。多くの人が 4MB を超えるドキュメントを保存する必要があったため (16MB 未満だと思います)、このサイズが増加しました。一部の人々は、そのスレッドで構成可能にするように要求しました (あなたが尋ねたように)。これは私には理にかなっています。彼らがこれを行うことに決めなかった理由がわかりません。

于 2013-03-09T09:36:56.640 に答える