2016-11-29 8 views
0

私の同僚と私は、時間のないプロジェクトの途中です。既存のコードで、キャッシュ、データベース、ネットワークトラフィックのパフォーマンスについて議論していました。パフォーマンスキャッシュとDB対ネットワークトラフィック

これは、キャッシュが唯一の答えであることが明らかなので、vsdbキャッシュからロードすることは排他的ではありません。

Sql Server 2008では、合計で2つのテーブルから3000の行と12の非インデックスの列を返すテーブル値関数について説明しています。

これらの2つのテーブルの1つはすでにキャッシュにあります。キャッシュされていないテーブルからデータを取得するには、データベースを使用する必要があります。

DBから排他的に返されたすべてのデータを反復処理してオブジェクトをマップする方が良いでしょう(その場合、すべてがDBから返されたためキャッシュされたデータを読み込む必要はありません)。キャッシュされたオブジェクトのDBからのID(ネットワークトラフィックを削減するため)、3000回の繰り返しでキャッシュから情報をロードしますか?

ありがとうございます。

答えて

0

両方の解決策を1つの決定またはベンチマークに決めてください。

0

あなたの質問を正しく理解していれば、レコードを繰り返し処理する際にテーブル2のデータをロードする必要があるかどうか尋ねていますか?それがあなたが求めているのであれば、ネットワークの待ち時間の点では非常に遅くなる可能性が高いと思います。データベースを呼び出すたびに、DBサーバーへのラウンドトリップ時間だけで大きなコストがかかります。その多くは待ち時間が何であるかに依存します...

関連する問題