Employees
約11000行のデータを含むテーブルがあります。列の1つは、Location
この列内には、米国、フランス、英国など、さまざまなタイプの場所があります。場所の列にクラスター化インデックスを作成しました。このテーブルのビューも作成しました。
このビューを使用するMVCプロジェクトを作成します。私が知りたいのは、それぞれを場所で区切って異なるビューを作成する必要があるのか、それともクラスター化インデックスがパフォーマンスを向上させるのに十分なのかということです。または私は両方を行う必要がありますか?
私の頭の中では、プロジェクトのようにビューを小さくするとパフォーマンスが向上し、場所で検索できるようになります。巨大なビューを検索する代わりに、ビューを小さくするだけで済みます。
クラスタリングまたはそのようなものは、巨大なテーブル、たとえば数億行用です。11000行の場合、SQL Serverは、通常はインデックスがなくても問題ありません。ここで、パフォーマンスが本当に心配な場合は、場所など、通常検索する列のインデックスを追加します。
また、場所を格納する別のテーブルを用意し、そのテーブルへの外部キーのみを用意することをお勧めします。
この数の行でパフォーマンスが低下する理由の1つは、非常に大きな行、たとえば大きなnvarchar
sがあるか、大きなバイナリデータ(行に格納されないため検索が遅くならない)があるが、他のデータと一緒にフェッチされます。たとえば、データベースから100個のアイテムを引き出し、それぞれに4MBの画像がある場合、400MBを読み取っています。これには時間がかかります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加