ページの先頭行へ戻る
Symfoware Analytics ServerV12.2.0 利用ガイド
FUJITSU Software

C.3.2 カラムナテーブルの作成・編集

新規作成したデータベーススペースにカラムナテーブルを分割して格納するために、カラムナテーブルの作成および編集を行います。

これらの操作例を以下に示します。

カラムナテーブルの新規作成

以下の手順で行います。

  1. カラムナテーブルを作成します。

    例)
    postgres=# CREATE FOREIGN TABLE tbl1 (col1 int NOT NULL,salesdate date,col3 char(1) NOT NULL) SERVER dwh_server OPTIONS (database 'symfoas', schema 'symfoasuser', table 'db01_public_tbl1')
    CREATE FOREGIN
    
    postgres=# SELECT pgxa_create_table('tbl1');
    pgxa_create_table
    -------------------
    t
    (1 row)
  2. arax_create_partitionコマンドを実行します。

    分割条件の各項目は、昇順となるように指定してください。昇順になっていない場合、arax_create_partitionコマンドは異常終了します。

    最終の分割条件は、分割条件となり得る値の最大値を指定するか、“MAX”を指定してください。

    “MAX”以外を指定した場合は、指定値以上の値を格納すると、arax_create_partitionコマンドは異常終了します。たとえば、最終条件の上限値を'2015-07-31'とした場合、対象のカラムに対して'2015-08-01'をインポートすると異常終了します。

    例)
    # /opt/FJSVsymas/bin/arax_create_partirion.sh -d postgres -t tbl1 -r saledate -p "p1,'2015-04-30',DSP1;p2,'2015-05-31',DBS2;p3,MAX,SYMFOAS_DBS"

参考

データベーススペースを再利用する場合は、最終の分割条件を“MAX”とすることを推奨します。

参照

arax_create_partitionコマンドの詳細は、“J.1.20 arax_create_partition”を参照してください。

定義済の分割条件の変更

すでに定義されているカラムナテーブルの分割条件を変更します。

pgxa_add_partitionコマンドを実行して、カラムナテーブルの分割条件を再設定します。以下は、定義済の分割条件を分割する例です。

分割対象の分割条件)
p3,MAX,SYMFOAS_DBS
例) 
# /opt/FJSVsymas/bin/arax_add_partirion.sh -d postgres -t tbl1 -p "p3,MAX,SYMFOAS_DBS;p4, '2015-06-30',DBS6"

注意

分割条件が設定されているカラムナテーブルにデータをインポートしている場合、分割対象のパーティションの分割条件の値は、対象のパーティションで格納したデータの最大値を指定してください。

たとえば、分割する値に“MAX”としていたパーティション“~2015-07-31”までのデータが存在する場合は、以下のように指定してください。

例)
-p "OLD_PAR,MAX,OLD_DBS;NEW_PAR,'2015-07-31',NEW_DBS1"

参考

pgxa_add_partitionコマンドは、現状の分割条件の1つを2つに分割します。

たとえば、分割条件として以下を定義していた場合、P3に格納されるデータは、2015-06-01~2015-07-31が対象になります。

定義例)
"p1,'2015-04-30', DSP1;p2,'2015-05-31', DBS2;p3,'2015-07-31', SYMFOAS_DBS"

この場合、2か月分のデータを1か月ごとに格納するデータベーススペースに分割するために、p3の分割条件“2015-07-31”を“2015-06-30”および“2015-07-31”とするように2つに分割することが可能です。

参照

pgxa_add_partitionコマンドの詳細は、“J.1.21 pgxa_add_partition”を参照してください。

定義済の分割条件の削除

pgxa_drop_partitionコマンドを実行して、カラムナテーブルの分割条件を削除します。

例)
# /opt/FJSVsymas/bin/arax_drop_partirion.sh -d postgres -t tbl1 -p "p1"

注意

分割条件を削除すると、削除対象のデータベーススペースに格納されたデータも削除されます。したがって、不要になったデータベーススペースに対して実行してください。
また、最終の分割条件については、削除できません。

参照

pgxa_drop_partitionコマンドの詳細は、“J.1.22 pgxa_drop_partition”を参照してください。

分割条件の確認

カラムナテーブルの分割条件を表示します。
pgxa_show_partitionコマンドを実行して、分割条件を表示します。

例)
# /opt/FJSVsymas/bin/arax_show_partirion.sh -d postgres -t tbl1

p6,2015-06-30,DBS6
p7,2015-07-31,DBS7

参照

pgxa_show_partitionコマンドの詳細は、“J.1.23 pgxa_show_partition”を参照してください。