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

2.1.3 カラムナテーブルの作成と削除

カラムナテーブルの作成および削除の方法について説明します。

2.1.3.1 カラムナテーブルの作成

カラムナテーブルの作成方法について説明します。

注意

CREATE FOREIGN TABLE文で外部テーブルを作成するときに指定するスキーマ名、外部テーブル名、カラム名などには、半角英数字だけを使用してください。

また、外部テーブルに対するビュー名、インデックス名などには半角英数字だけを使用してください。

なお、使用可能文字の詳細は、“付録A 定量制限”を参照してください。

ポイント

本操作は、データベースユーザーで実施してください。作成したカラムナテーブルに対する権限をカスタマイズすることもできます。

以下の手順で蓄積テーブルに対応するカラムナテーブルを作成します。

  1. psqlコマンドを使用して、データベースpostgresに接続します。
    “psql postgres”と実行します。

    例)
    > psql postgres
    psql (x.y.z)
    Type "help" for help.

    x.y.z:PostgreSQLのバージョンが表示されます。

  2. 蓄積テーブルに対応するカラムナテーブルを作成します。

    CREATE FOREIGN TABLE文を使用します。

    例) fluentdを利用したデータ連携で格納する蓄積テーブルを作成する場合
    postgres=# CREATE FOREIGN TABLE coltbl (
    postgres(# fluentd_id_time timestamp,
    postgres(# fluentd_time timestamp,
    postgres(# fluentd_tag varchar(1024),
    postgres(# col1 varchar(1024),
    postgres(# col2 varchar(1024),
    postgres(# col3 varchar(1024)
    postgres(# )
    postgres-# SERVER dwh_server OPTIONS (database 'symfoas', schema 'symfoasuser', table 'postgres_public_coltbl');
    CREATE FOREIGN TABLE
  3. カラムナデータベース上にテーブルを作成します。

    pgxa_create_tableシステム関数を使用します。

    例) fluentdを利用したデータ連携で格納する蓄積テーブルを作成する場合
    postgres=# SELECT pgxa_create_table('coltbl');
    pgxa_create_table
    -------------------
     t
    (1 row)

参照

各システム関数の詳細は、“リファレンス”の“システム関数”を参照してください。

2.1.3.2 カラムナテーブルの削除

カラムナテーブルの削除方法について説明します。

カラムナテーブルの削除手順は、以下のとおりです。

  1. psqlコマンドを使用して、データベースpostgresに接続します。
    “psql postgres”と実行します。

    例)
    > psql postgres
    psql (x.y.z)
    Type "help" for help.

    x.y.z:PostgreSQLのバージョンが表示されます。

  2. カラムナデータベース上のテーブルを削除します。
    pgxa_drop_tableシステム関数を使用します。

    例) カラムナデータベース上のカラムナテーブルcoltblを削除する場合
    postgres=# SELECT pgxa_drop_table('coltbl');
    pgxa_drop_table
    -----------------
     t
    (1 row)
  3. カラムナテーブルを削除します。
    DROP FOREIGN TABLE文を使用します。

    例)カラムナテーブルcoltblを削除する場合
    postgres=# DROP FOREIGN TABLE coltbl;
    DROP FOREIGN TABLE

注意

カラムナデータベース上のテーブルを削除する前に、DROP FOREIGN TABLEにより外部テーブルを削除した場合は、カラムナテーブル上のテーブルを削除できません。以下の手順を実行して外部テーブルを削除してください。

  1. カラムナテーブルに対する外部テーブルの再作成

  2. pgxa_drop_tableシステム関数によるカラムナデータベース上のテーブル削除

  3. 外部テーブルの削除