TEMPORARY
3. ストレージ管理タイプによる表スペースの種別
ストレージ管理のタイプにより、以下のいずれかのタイプを指定する
自動ストレージ(AMS)
データベース・マネージャーが必要に応じてコンテナーの作成を制御 (V10.1以降、推奨)
コンテナー
– ストレージ・パス
DMS
データベース・マネージャーによるファイル管理(V10.1FP1以降、ユー ザー表スペースとしては、非推奨)
コンテナー
– ファイル
– ロー・デバイス
SMS
オペレーティング・システムのファイル・マネージャーによるファイル管 理(V10.1以降、ユーザー表スペースとしては、非推奨)
コンテナー
– ディレクトリー
解説
ストレージ管理のタイプにより、以下のいずれかのタイプを指定します。
自動ストレージ(AMS: AutoMatic Storage)
データベース・マネージャーがストレージを管理します。
コンテナーとしてストレージパスを指定。指定しない場合、自動的にデータベースに関連付けられたパスに作成される。
V10.1以降、自動ストレージが推奨されており、デフォルトの表スペースのタイプとなります。
DMS(Database Managed Storage)
データベース・マネージャーがファイルを管理します。
コンテナーとしては、ファイル、またはデバイスを設定します。
V10.1FP1以降、ユーザー表スペースとして、DMSを使用するのは非推奨となっています。カタログ表スペースや一時表スペースでの使用を検討します。
SMS(System Managed Storage)
各オペレーティング・システムのファイル・システムがファイルを管理します。
コンテナーとしては、ディレクトリーを設定します。
V10.1以降、ユーザー表スペースとして、SMSを使用するのは非推奨となっています。カタログ表スペースや一時表スペースでの使用を検討します。
自動ストレージ(AMS)は、コンテナーを定義する必要はありません。AMSで作成した、REGULARあるいはLARGE表 スペースは、DMS、一時表スペースは、SMSとして作成されます。
DMS・AMSは、SMSに比べて、表用、索引用、長形式のデータ用の表スペースを別々に作成できるため、それぞれ
のディスクI/Oを分散させることが可能です。これによってディスクI/Oを効率化し、パフォーマンスを向上することが 可能です。
DMSでは、データ挿入時にエクステント単位でデータが書き込まれます。また、そのエクステントは、既に容量を確保
して作成されたDMSファイルまたはローデバイスの中に書き込みます。この時、DMSファイルやローデバイス自身の 大きさは変わりません。
ローデバイスとファイルDMSの差はそれほど大きくありませんが、DMSとSMSではパフォーマンスに大きな差が出る 場合があります。
管理の容易さでは、SMSは、同じファイルシステムに複数表スペースを作成でき、表スペースごとに空きスペースの 監視を行う必要がありません。
SMSでは、表のスペースは要求時に割り振られますので、DMSに比べて特に大量データの挿入に関してパフォーマ
ンスが劣ります。一度に割り振られるスペースの量は、multipage_alloc データベース構成パラメーターの設定によっ て左右されます。この構成パラメーターが YES に設定されている場合、スペースが必要なときにはエクステント全体 (通常は複数のページで構成される) が割り振られます(マルチページ・ファイル割り振り)。それ以外の場合は、一度 に 1 ページのスペースが割り振られます。 V8.2以降では、マルチページ・ファイル割り振りはデフォルトで使用可能 です。
©日本IBMシステムズ・エンジニアリング(株) データ・プラットフォーム部 135
参考:自動ストレージ(AMS)表スペース
V8.2.2以降、自動ストレージ・データベース、自動ストレージ表スペースが使用可能
V9以降、データベースを作成すると、デフォルトで自動ストレージ・データベースとして作成
される。
自動ストレージ・データベースには、自動ストレージ表スペースを作成可能(通常の自動ストレージでない表ス ペースを作成することも可能)
自動ストレージ表スペース
表スペースのコンテナーおよびスペース管理の特性(SMS/DMS)はDB2によって自動的に(以下のように)決 定されるため、指定しなくてもよい。
REGULARまたはLARGE表スペースの場合、DMS(ファイル・コンテナー)
TEMPORARY表スペースの場合、SMS
データベース作成時に定義された(1つ以上の)ストレージ・パスを使用してDB2がコンテナーを自動的に割り 振るため、表スペース作成時にコンテナーの明示的なリストを指定する必要が無い。
各ストレージ・パスに作成されるコンテナはひとつのみ
自動ストレージ表スペースを作成するための指定(CREATE TABLESPACE実行時)
MANAGED BY AUTOMATIC STORAGE 文節を指定する、または、MANAGED BY 文節を指定しない
自動ストレージ・データベース データベース
表スペースA 表スペースB 表スペースC
ストレージ・パス(複数のディレクトリー)
自動ストレージ表スペース
解説
AMSの特徴
AMSでは、コンテナーを指定する必要はありません。DB2がコンテナーの作成と拡張を自
動的に行います。
表スペース作成時に指定するストレージ・グループに紐づくストレージ・パスに、コンテ ナーが作成されます。
各ストレージ・パスに作成されるコンテナーは1つです。
ストレージ・パスを追加したり、削除したりすることができます。また、ALTER
TABLESPACEステートメントのREBALANCEオプションで、AMS表スペースのリバランスが 可能です。
ストレージ・パスに指定したファイルシステムのサイズが、AMS表スペースのサイズの上 限となります。
コンテナーあたりの最大サイズを設定するDB2_SET_MAX_CONTAINER_SIZE レジストリー 変数があります。
自動ストレージ表スペース用のコンテナー 1つあたりの最大サイズを制限するレジ ストリー変数となります。オペレーティング・システム: すべて
デフォルトは、-1(設定しない)。コンテナーのサイズに対する制限はなく、従来と同一の動作を行う。
値を設定する場合は、64 MB より大きい正の整数とする。
注意事項
–表スペースの最大サイズを指定するレジストリー変数ではない。
レジストリー変数の設定値まで、コンテナー・サイズが達した場合には、新規にコンテナーが追加され、表スペースは拡張される。
–このレジストリー変数を使用した場合には、1つの自動ストレージ・パスに、1表スペースあたり複数のコンテ ナーが作成される場合がある。
©日本IBMシステムズ・エンジニアリング(株) データ・プラットフォーム部 137
参考: DMS表スペース
DMS(Database Managed Storage)表スペース
データベース・マネージャーが記憶スペースを管理
作成時にスペースを割り当て
コンテナーはファイル、デバイス
ファイルの操作に対してはファイル・システムI/Oを使用
ロー・デバイスの操作に対しては直接I/Oを使用
柔軟なデータ配置
表用、索引用、および長形式のデータ用の表スペースを別々に作成する ことが可能
ディスクのIOを複数の物理ディスクに分散させることが可能
コンテナの追加/削除/拡張/縮小が可能
データは自動的に再バランス(オプションにより再バランスさせないことも 可)
高パフォーマンス
解説
DMSの特徴
DMSでは、表スペースは大きな1つのファイルまたはローデバイスに相当します。中をど
のように使われているのかはOSからは確認できません。表スペースを作成する際に、あら かじめ必要な大きさを定義する必要があります。DMSではさらに2つのタイプがあり、1つは DMSファイルともう一つはローデバイスです。
DMSファイルの場合は、ファイルシステム上に1つの大きなファイルが作成されますが、
ローデバイスの場合はファイルシステムを経由せずにDB2が直接IOを行います。
DMSでは、表用、索引用、および長形式のデータ用の表スペースを別々に作成すること
が可能です。それによって、ディスクのIOを複数の物理ディスクに分散させることが可能に なります。
DMSでも複数のコンテナーを1つの表スペースに対して定義でき、さらに動的に追加する
ことが可能です。表スペースを作成後にコンテナーの大きさを変更することもでき、DB2 UDB V8以降では小さくすることも可能です。
複数コンテナーからDMS表スペースを構成する場合、どれかのコンテナーが一杯になっ ても空いているコンテナーを探して書き込もうとします。全てのコンテナーが一杯になった場 合、それ以上データの追加はできません。
V8.2.2からは、ファイルDMS表スペースの自動サイズ変更が可能です。
©日本IBMシステムズ・エンジニアリング(株) データ・プラットフォーム部 139
参考: SMS表スペース
SMS(System Managed Storage)表スペース
オペレーティング・システムのファイル・システム・マネージャーが管理
表データと索引、Longデータは全て同じ表スペースを共有
管理が容易
コンテナーはディレクトリー
ファイルは動的に拡張し、サイズの上限は以下によって決まる
コンテナーの数
ファイル・システム/ドライブ/ファイルのOSの限界サイズ
コンテナーは動的に追加不可
ファイル・システム/ドライブのサイズは増加可能
再定義は表スペース復元時に可能(表スペースのリダイレクション)
各コンテナーサイズは同じ大きさに
一時表スペースに推奨
解説
SMSの特徴
SMSでは、表スペースはファイルシステムのディレクトリに相当し、表や索引はそれぞ
れ別々のファイルになります。SMS表スペース(ディレクトリ)を作成したファイルシステ ムが許す限り、表に対してデータを追加することができます。つまり、表スペースの大 きさはファイルシステムの大きさに依存します。
SMSでは表や索引およびLOBやLONG VARCHARなどの長形式のデータを含むロン グ形式のデータを全て同じ表スペースに格納する必要があります。
複数のディスクにIOを分散させる為に、1つの表スペースに対してコンテナーを複数 定義することがSMSでも可能ですが、コンテナーの追加や削除を行うことはできませ ん。表スペースを作成するときのコンテナー定義を変更する為には、一度削除して再 作成する必要があります。