シャード環境で RavenDB を使用している場合、ドキュメント ID にはeurope/companies/21
. RavenDB サイトにも記載されています。
ModifyDocumentId : ドキュメントのシャード ID をドキュメント自体に保存できます。デフォルトの実装は次のとおりです: (convention, shardId, documentId) => shardId + Convention.IdentityPartsSeparator + documentId
そうすることで、RavenDB はスマートなクエリ手法を理解し、適切なシャードを明確にターゲットにできるようになると思います。これは素晴らしいことです。ただし、お答えできない質問がいくつかあります。
ドキュメントを新しいシャードに移動する必要がある場合はどうですか? これにより、キーが変更され、ここで質問されているキーを使用した URL が壊れます。
1 台のサーバーから始めて、後でシャーディングを実装することを決定する場合があります。したがって、その場合、キーが変更されるか (?)、スマート クエリが機能しなくなります (?)。
これらの懸念に対する一般的なアドバイスは何ですか?また、これらの問題はどのように解決されますか?