保存されたデータはページとよばる 8 KB の連続したディスク領域に格納されます。行は複数のページにまたがることはできません。一行の最大データ要領は 8060 バイトです。一行にこれ以上のデータ保存が必要な場合は、データベースの設計に問題があります。また、Text 型や Binary 型は実データが格納されているディスク上のアドレスポインタのみを保存するので問題ありません。
テーブルやインデックスなどはエクステントに格納されます。エクステントは 8 つの連続したページです。
エクステント(64KB)= 8 つの連続した 8KB のページ。
ページ(8KB) | ページ(8KB) | ページ(8KB) | ページ(8KB) | ページ(8KB) | ページ(8KB) | ページ(8KB) | ページ(8KB) |
トランザクションとは一つ以上の SQL ステートメントの集まりで、論理的な作業単位です。トランザクションは、すべてを実行するか、まったく実行しないかのいずれかです。
SQL Server では、明示的に記述しない場合、UPDATE、INSERT、DELETE などの一文が一つのトランザクションとしてみなされます。明示的に指定するときは、以下のように BEGIN ステートメントではじめ、COMMIT または ROLLBACK で終了させます。
ex)
BEGIN TRAN
UPDATE ・・・
INSERT ・・・
COMMIT TRAN
トランザクションログは、実行したトランザクションをシーケンシャル(順次書き込み)で保存しています。したがって、ディスクへのアクセスは高速です。
データがディスクに反映されるまで・・・
システムに障害が起こると、自動復旧プロセスがトランザクションログを使用して、すべてのコミット済みトランザクションをロールフォワードし、ディスクへ書き込みます。
チェックポイント
チェックポイントはメモリ上のデータをディスクに書き込むタイミングのことです。この感覚は SQL Server が管理しています。ただし、定期的な時間ではありません。トランザクションに蓄えたれた情報量によって決まります。障害がおきたときに復旧時間が運用に影響を与えない程度のデータ量がたまったらディスクに書き込みます。
model.mdf 新規にデータベースを作成すると model データベースがコピーされます。 プライマリファイル - *.mdf 作成したデータベースを格納するためのファイルです。ファイル名とパスは自由に変更できます。一つ以上必要です。作成時にあらかじめ使用するサイズを予約(ディスク上に確保)します。 データが予約したサイズになったら、自動的に拡張するか、拡張しないかを設定でき、その際の拡張サイズを指定できます。 セカンダリファイル - *.ndf 複数のファイルにデータ分散するときに使用します。 トランザクションログファイル - *.ldf トランザクションログを格納するファイルです。一つ以上必要です。 |
データベースに格納されている情報
master
msdb
ユーザーが作成したデータベース