この機能は Adaptive Server 15.0 以降でのみ使用できます。
パーティションの分割を行うと、大規模なテーブルとインデックスを、小さな部分ごとに分けて、管理しやすくなります。また、データへのアクセスが高速化され、アクセスしやすくなります。
各パーティションは独立したセグメントに配置できます。パーティションは、ユニークな ID を持つデータベース・オブジェクトで、それぞれ独立して管理できます。たとえば、データのロードとインデックスの作成をパーティション・レベルで行うことができます。パーティションはエンド・ユーザからは透過的です。
Adaptive Server はパーティションの水平分割をサポートしています。これは、テーブル・ロー全体のうちの一部を複数の記憶デバイス間に分散できる機能です。個々のテーブルやインデックス・ローは、パーティション方式に基づいて、パーティションに割り当てられます。デフォルトでは、各テーブルおよびインデックスは単一のラウンドロビン・パーティションで作成されます。また、セマンティックに基づいた方式を選択することもできます。その場合、ローは以下の方法でパーティションに割り当てられます。
システムが生成したハッシュ関数を使用する分割 (ハッシュ分割)
ローの中の 1 つまたは複数の値が、パーティションに対して事前に定義された特定の範囲に属するかどうかに応じた分割 (範囲分割)
事前に定義された、パーティションごとにユニークな一連の値のいずれか 1 つに、ローの中の 1 つの値が一致するかどうかに応じた分割 (リスト分割)
セマンティックベースの分割機能は、別途ライセンスされます。ライセンスのあるサイトでセマンティック分割を有効にするには、enable
semantic partitioning 設定パラメータの値を 1 に設定します。Adaptive Server
のパラメータを設定するには、サーバ・プロパティ・シートを使用するか、サーバのアイコンを右クリックして、ドロップダウン・メニューの [設定] を選択します。
データ・パーティションはテーブルのサブセットであり、カラム定義と参照整合性の制約はベース・テーブルと共通です。
分割されたテーブルには、それぞれ 1 つまたは複数の分割カラムがあります。これらのカラムの値は、分割キーと呼ばれ、各ローの分割の割り当てはこれに応じて決まります。
分割カラムには、以下の型のカラムは指定できません。
text および image
bit
Java クラス
計算カラム
インデックス・パーティションは、ユニークなパーティション ID を持つ独立したデータベース・オブジェクトです。インデックスのサブセットであり、セグメントまたは他の記憶デバイスに配置されます。
複数パーティションのテーブルで、複数パーティションと単一パーティション (デフォルト) のインデックスを、次のように混在させることができます。
複数パーティションのテーブルは、複数パーティションのインデックスと単一パーティションのインデックスを持つことができる。
単一パーティションのテーブルは、単一パーティションのインデックスのみを持つことができる。
Adaptive Server では、複数パーティションのローカル・インデックスと単一パーティションのグローバル・インデックスがサポートされています。ローカル・インデックスは、ベース・テーブルに対して常に等分割されます。つまり、テーブルとインデックスで、同じ分割キーと分割基準が共有されます。ローカル・インデックス・パーティションの範囲は、単一のデータ・パーティションのみです。