- 列パーティションをCOLUMN形式で指定した場合、Teradata Databaseは1つの物理コンテナに1つ以上の列パーティション値を格納します。
列パーティション値は、列パーティションに含まれる列の値で構成されます。
- 以下のルールが、列パーティション レベルの自動圧縮に適用されます。
自動圧縮オプションまたはデフォルトの列パーティション レベル パーティションの上書き設定 COLUMN AUTO COMPRESS NO AUTO COMPRESS COLUMN NO AUTO COMPRESS AUTO COMPRESS
- 列パーティション レベルにCOLUMNを指定する場合、AUTO COMPRESSまたはNO AUTO COMPRESSも指定されていないと、Teradata Databaseはそのパーティション レベルにAUTO COMPRESSを割り当てます。
- 列パーティションをROW形式で指定した場合、Teradata Databaseは1つの物理的な副行に1つだけの列パーティション値を格納します。
副行はTeradataの行形式の標準ですが、副行という用語はそれが列パーティションの一部であることを強調するために使用します。
- COLUMN形式の列リストで列または制約グループ、あるいはその両方を指定する場合、グループ化によって列パーティションが定義されます。Teradata Databaseは、COLUMN形式を使用して1つの物理コンテナに1つ以上の列パーティション値を格納します。
ROW形式の列リストで列または制約グループ、あるいはその両方を指定する場合、グループ化によって列パーティションが定義され、ROW形式を使用して物理的な副行に1つだけの列パーティション値が格納されます。
列または制約グループに対してCOLUMN形式とROW形式のどちらも指定しない場合、グループ化によって列パーティションが定義され、列パーティションに対してCOLUMN形式とROW形式のどちらを使用するかをTeradata Databaseが決めます。
- パーティションに対して明示的にCOLUMN形式またはROW形式を指定しない場合は、Teradata Databaseが暗黙的に決定します。
COLUMN形式またはROWフ形式をシステムが決定する場合、Teradata Databaseは、列パーティションの列パーティション値のサイズや他の要素(列パーティションの列パーティション値が固定長か可変長か、列パーティションが単一列パーティションか複数列パーティションかなど)に基づいて形式を選択します。
一般に、Teradata Databaseは、幅の狭い列パーティションにはCOLUMN形式、幅の広い列パーティションにはROW形式を割り当てます。この文脈で、サイズがおよそ256バイト未満の場合に、列パーティションは幅が狭いと見なされます。
列パーティションに含まれる可変長の列の幅は、次の数式によって推計されます。
列パーティションに対してどちらの形式をTeradata Databaseが選択したかを調べるには、HELP COLUMN文を実行するか、DBC.ColumnsV(X)ビューからColumnPartitionFormat列を選択します。