質問: node.jsを使って、商品検索サイトを作っています。 メインDBはmongoDB:v2.6.10です。 サーバー スペック メモリ4GB SSD 100GB 仮想4Core ※シャーディングを利用しない前提で。。。 現状は商品を、 商品コレクションという1コレクションで管理しています。 件数:40万件 サイズ:800MB パフォーマンスやデータの増減を考慮すると、 商品毎にエリア情報をもっているので、 商品コレクション_アメリカ 商品コレクション_日本 商品コレクション_韓国 ・・・・ ・・・・ ・・・・ のように分割したほうがよいのか悩んでいます。 基本的には、エリアをまたがって商品検索する事はないのですが、 稀にエリアをまたがって検索したいユーザもいそうなので、 そのためにコレクションを一つにしていました。 パフォーマンスが大きく異なりそうなら、 その稀なパターンをきってコレクションを分割しようか悩んでいます。
回答: 使い方と、データがどのぐらいのペースで増えていくか次第ですが、同じ「商品」でまだ800MB程度なら、最近のバージョン(3.6など。WiredTiger)ならコレクションを分けなくてよさそうです。