セグメントは、特定のデータベースに格納されているデータベース・デバイスの名前付きサブセットです。セグメントとは、1 つまたは複数のデータベース・デバイスを指すラベルです。特定のデータベース内で、そのデータベースにすでに割り付けられているデータベース・デバイスのセグメントを定義できます。
各データベース内の最大セグメント数は 32 です。すべてのデータベースには、system、logsegment、default と呼ばれるセグメントがあります。必要な場合は、セグメントをさらに定義できます。
データベースのセグメントを定義することにより、記憶領域の大部分を占めるオブジェクト、つまりテーブルとインデックスの配置を制御できます。これにより、以下に示すようにパフォーマンスと制御面でメリットが得られます。
複数の物理デバイスにまたがるセグメントに大規模なテーブルを配置することにより、I/O スループットを増加できる。
テーブルとテーブルのノンクラスタード・インデックスを異なる物理デバイスに分離することにより、同様に I/O スループットを増加できる。
特定のサイズのセグメントにテーブルを配置することにより、領域の使用を制御できる (セグメントの割り付けよりもテーブルが大きくならないため)。
セグメントの領域の使用状況をモニタして、セグメントがいっぱいになる前に処置できるようにするには、スレッショルド値を定義します。スレッショルドを使用すると、スレッショルドのレベルまでセグメントがいっぱいになったときに、通知、トランザクション・ログのダンプなどのトリガ動作を自動的に実行できます。