objectIDは12バイトに保存されていますが、シャードキーではうまくいきません。代わりに、_idに完全にランダムなint64(8バイト)を使用する方が良いのではないかと思いますか?MongoDB:_idにint64またはObjectIDを使用する方が良いですか?
私の考えでは、完全にランダムなint64を作成し、コレクションにまだ存在していないかどうかを確認します(擬似ランダムジェネレータはうまく機能しません)。そうでなければ、この_idでドキュメントを作成します。だから我々は8バイトしか使用せず、シャードキーのためにうまく動作する_idを持っています
あなたはどう思いますか?
私の意見では、これは設計上の決定であり、なぜShardにObjectIDを選択するのかはわかりません。シャーディングの概念は負荷に広がっている。だからあなたのデザインに負荷を分散させるためには、どのフィールドが役に立つのかを考えてください。 – Elyasin