- シャードで2台のmongoサーバーを使用したい
- データベースにはコレクションが1つだけあります(約1億1,000万レコード)。
- 活動は主に書き込み、新しいレコードの追加、古いレコードの更新です
- レコードには2つのフィールドしかありません:_idと配列{:_id => 12345、:pp => [stuff、stuff、...]}
- _idは実際にはユーザーID、整数です
- _idはコレクション内の唯一のインデックスです
- シャーディングキーは次のものに基づいている必要があります:_id%2
つまり、_id = 1はサーバー1に、_id = 2はサーバー2に、_id = 3はサーバー1に、_id=>4はサーバー2に...というように続きます。
(_idsは線形であり、書き込み時に両方のサーバーのバランスを均等にする必要があるため)
このためにmongosをどのように構成しますか?