2018年6月3日こんにちは!シミダイ(@shimidai2100)です。Databaseの表領域の作成SQLと作成時のポイントを紹介します。単純な作成SQLは各種メディアやブログで紹介されていますが、この記事では表領域を操作する時の重要なポイントも合わせて紹介します。何も考えなくて表領域は作成できますがこの記事を読んで最適な表領域を作成してください。tablespaceまずは表領域の作成のSQLを紹介したいと思います。tablespace文は、表領域を作成するコマンドになります。表領域作成後に変更ができないパラメータが多く存在するため作成SQLを間違えないようにしましょう。<データファイルのサイズ>;下がサンプルSQLになります。10m;表領域作成時には接尾語に番号を振ることをオススメします。これはデータファイルを追加する時にファイル番号を振って管理しやすくするためです。ALLOCATE」を指定します。エクステント管理方式は2つ選択することができますが、スタンダードの「ローカル管理方式」を指定しましょう。「ディクショナリ管理方式」も指定することができますが古い管理方式であるため特に選択する必要がありません。ALLOCATE」で均一に指定することをオススメします。」で自動サイズ指定もできますが、エクステントが断片化してしまいパフォーマンスが低下化する原因となります。<UNIFORMのサイズ>;下がサンプルSQLになります。managementセグメント領域の管理方式も表領域作成時に指定します。セグメント領域の管理方式は必ず「AUTO」を設定しましょう。「MANUAL」も指定できますが、セグメント内の空きリストを使用してセグメントを管理するため非常に非効率になります。auto;下がサンプルSQLになります。XXXデータファイルの自動拡張を指定することでファイルサイズが急に大きくなった時でもエラーを回避できます。拡張させるサイズは、小さすぎると何度もデータファイルが拡張されますし、サイズが大きすぎると拡張時に待機が発生します。余裕値を十分に持ってデータファイルを作成しておくことをオススメします。<最大データファイルサイズ>;下がサンプルSQLになります。1G;BIGFILEのデータファイルを指定:bigfile昨今のデータの大容量化に伴い、従来のSMALLFILE(最大32GB)よりも大きいBIGFILEを指定できるようになりました。BIGFILEはブロックサイズが8KBの時は128TBまでデータファイルを使用することができます。何も指定しないとデフォルトでSMALLFILEが作成されます。<データファイルのサイズ>;下がサンプルSQLになります。