Open棟梁Project - マイクロソフト系技術情報 Wiki
目次 †
概要 †
- 「データ ファイル」は、
- 1つの「プライマリ データ ファイル」と
- 複数の「セカンダリ ファイル」に
分割することができる。
- また、「ファイル グループ」を作成し、
「ファイル グループ」毎にファイルの配置位置を選択することができる。
- デフォルトで「プライマリ ファイル グループ」が存在する。
これに「ユーザ定義ファイル グループ」を追加、複数のパスに「データ ファイル(テーブル、インデックス)」を分割して作成することができるようになる。
「ファイル グループ」による性能の向上 †
「ディスク コントローラ」を分割 †
「ファイル グループ」を使用して、「データ ファイル」、「トランザクション ログ ファイル」を複数のファイルに分割し、これを独自の「ディスク コントローラ」を持つディスクに配置する。
この場合、クエリは複数ディスクにわたって展開されるため、性能が向上する(読み込み、書き込みともに性能が向上する)。
※ RAID0のデバイスに1つのファイルを作成した場合と同じ効果がある。
スレッド分割による並列クエリ †
構成要素 †
「ファイル グループ」の構成要素 †
「ファイル グループ」には、
- 「プライマリ ファイル グループ」
- 「ユーザ定義ファイル グループ」がある。
「プライマリ ファイル グループ」 †
- 「プライマリ ファイル グループ」には、
- 「プライマリ データ ファイル」と、
- 他の「ファイルグループ」に割り当てられていない「プライマリ ファイル グループ」上の全てのファイル
が含まれる。
- システムDBの テーブル用のすべてのファイルは「プライマリ ファイル グループ」に割り当てられている。
「ユーザ定義ファイル グループ」 †
「ユーザ定義ファイル グループ」は、「CREATE DATABASE」または「ALTER DATABASE」ステートメント内で「FILEGROUP」キーワードを使用して作成できる。
「データ ファイル」の構成要素 †
「プライマリ データ ファイル」 †
- 「プライマリ データ ファイル」は「データ ファイル」の開始点で、DB内のほかのファイルを指し示す。
- 1 つのDBに 1 つ「プライマリ データ ファイル」が必要。
「セカンダリ データ ファイル」 †
- 「セカンダリ データ ファイル」は「プライマリ データ ファイル」以外のすべての「データ ファイル」である。
- データベースには、
- 「セカンダリ データ ファイル」がない場合と、
- 複数の「セカンダリ データ ファイル」がある場合がある。
「トランザクション ログ ファイル」 †
「トランザクション ログ ファイル」は「ファイル グループ」に追加できない。
- 「データ ファイル」と同様に複数のファイルを作成できる。
- 「データ ファイル」のような「プライマリ」、「セカンダリ」を区別しない。