私はSQL Server 2008を使用していますが、同じスキーマの2つのテーブルがあり、2つのテーブルの内容を結合して外部アクセスに「テーブル」の単一ビューを提供するビューを作成します。データベースビューのパフォーマンスの問題
テーブルの1つは読み込み専用で、他のテーブルにはバルクの挿入/削除操作が含まれています(他のテーブルでは、数千の行を挿入して別のSQLジョブを実行して、毎日の行)。
私の質問は、他のテーブルが一括挿入/削除操作の下にある場合、外部ユーザーから2つのテーブルのユニオンビューへのアクセスもブロックされるように物理テーブルがロックされるかどうかです。 (私はロックのエスカレーションがこのシナリオで適用されるかどうか考えていますが、行ロックによって最終的にテーブルがロックされ、最終的にビューのアクセスがロックされます)
申し訳ありませんが私の言葉は混乱しています。私は2つの操作を別のテーブル(1)一括挿入(2)毎日何百万行を削除する(一括削除と一括挿入ではない)ことを意味します。私は(1)バルク挿入クエリオプティマイザは、(2)操作を削除するための最適化する方法を見つけることができる場合でも、テーブルがロックされる(ロックエスカレーションが発生する?)とビューへのクエリはロックされますか? – George2
@ sambo99、さらに質問すると、あなたが慎重に参照したドキュメントを読んで、ヒープテーブルとクラスタードインデックスのテーブルの違いは何ですか? – George2
はい、私は常にオンラインでビューが必要です。 "スナップショットアイソレーション"とは、汚いデータを読み取るノーロックソリューションを意味しますか? – George2