SQL Serverの2種類のファイル
SQL Serverには2種類のファイルがあります。データファイルとログファイルです。
- データファイル
- ログファイル
「データファイル」と「ログファイル」について解説します。
「データファイル」はデータを管理するファイル、「ログファイル」は更新履歴を管理するファイルです。
ファイル | 拡張子 | 役割 |
データファイル | mdf | データ本体 |
ログファイル | ldf | 更新履歴 |
SQL ServerとOracleのファイル構成の違い
SQL Serverは「データファイル」と「ログファイル」の2種類のファイルで構成されます。
「データ本体」と「更新履歴」のファイルのことですね。これはOracleでいうと「データファイル」と「REDOログファイル」に相当します。
Oracleの制御ファイルはありません。Oracleの制御ファイルに相当するのはSQL Serverではmasterデータベースなどのシステム系のデーターベースにあたります。
データファイル
データファイルにはさらに2種類あります。「プライマリデータファイル」と「セカンダリデータファイル」です。
ファイル | 拡張子 | 役割 |
プライマリデータファイル | mdf | デフォルトのデータファイル |
セカンダリデータファイル | ndf | 追加用のデータファイル。
負荷分散させたいときに使用 |
「プライマリデータファイル」はデフォルトのデータファイルです。通常、データファイルはプライマリデータファイルのみです。
もう一つの「セカンダリデータファイル」とは何でしょうか?
そこで、データファイルをいくつかのファイルに分散させればパフォーマンスを担保できることがあります。例えば、負荷が高いテーブルを別のファイルにしておけば、システム全体のパフォーマンス低下につながらないかもしれません。
この複数のファイルが「セカンダリデータファイル」です。「プライマリデータファイル」に「セカンダリデータファイル」を追加して、データファイルを分散させます。
SQL Serverはこのようにしてパフォーマンスを担保しています。
ファイルグループ
前述のとおり、パフォーマンスを担保するためにファイルを複数で構成するケースがあります。この複数のファイルをまとめたものを「ファイルグループ」といいます。
例えば、「プライマリデータファイル」1つと「セカンダリデータファイル」2つをセットにして、これを1つの「ファイグループ」とします。
ファイルグループ
- プライマリデータファイル・・・1つ
- セカンダリデータファイル・・・2つ
このファイルグループに対して、テーブルやインデックスを割り当てます。
このファイルグループを使用すれば、異なるディスクにあるファイルを同じファイルグループにすることも可能です。
以上、SQL Serverの2種類のファイル、「データファイル」と「ログファイル」の解説でした。
コメント