2

質問とコメントのシナリオでは...コメントは単独では存在せず、親の質問ドキュメント内にネストされた要素として保存されます...これらのコメントはもちろん何百ものエントリに構築できます...質問をロードするときにパフォーマンスが低下することはありませんか? その読み込み操作は、何百ものコメントもすべて読み込みませんか? 必要に応じて別の「ページ」のコメントをロードできるようにするには、質問をロードするためにどのクエリを実行できますか (実行する必要がありますか)、最初の 10 個のコメントのみをロードしますか?

または、質問インスタンスの Comments プロパティにアクセスするまで、Comments をまったくロードしないという点で、RavenDB は遅延ロードを適用しますか? それでも...コメントをページ形式で「遅延」ロードするように制御できますか?

また、最初に質問を(すべてのコメントとともに)ロードすることなく、質問に新しいコメントを追加するにはどうすればよいですか?

4

1 に答える 1

2

ドキュメントをロードするときは、通常、すべてをロードする必要があります (つまり、ブログの詳細ページ)。

インデックス ページ (すべてのブログ投稿のリスト) では、 map/reduceを行うインデックスを作成できます。

新しいコメントを保存することに関しては、どのくらいの頻度でそれを行っているか自問してみてください。ほとんどの Web サイトでは、読み取りは書き込みよりもはるかに頻繁に使用されます。したがって、全体像を見ると、ブログ全体をロードすることによるパフォーマンスの低下はそれほど重要ではありません。

ただし、大量のコメントが予想される場合は、後でアプリケーションを再設計して、コメントのルート集計を作成することをお勧めします。ただし、パフォーマンスの問題であることが証明されるまでは、これを行わないでください。(RavenDB のスキーマレスな性質のおかげで、コメントを移動するのも簡単です)。

于 2013-03-05T14:04:42.423 に答える