Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム システム構築・運用ガイド

[目次][用語][索引][前へ][次へ]

付録D.2 SQLスクリプトファイルの設定方法

SQLスクリプトファイルを設定する場合,テーブル名,およびRDエリア名または表領域名を変更します。

<この項の構成>
(1) テーブル名の変更
(2) RDエリア名または表領域名の変更

(1) テーブル名の変更

SQLスクリプトファイル内にある各テーブルの,次の個所を変更します。

テーブルごとの変更規則を次の表に示します。

表D-2 テーブル名の変更規則

置換前のテーブル名またはインデクス名 置換方法
CSCMSG_<individualname>_CSC_CONNECT
CSCMSG_<individualname>_EXECHISTORY
CSCMSG_<individualname>_EXECHISTORY_I
CSCMSG_<individualname>_CLUSTER
CSCMSG_<individualname>_HA_ASYNC_ADP
C<クラスタ名>
  • クラスタ名が「Cluster」の場合
    CSCMSG_CCluster_CSC_CONNECT
CSCMSG_<individualname>_CSC_PERSIST
CSCMSG_<individualname>_LC_DIRECTORY
CSCMSG_<individualname>_LC_BPFORMAT
CSCMSG_<individualname>_RT_RULE
CSCMSG_<individualname>_CV_MAPPING
CSCMSG_<individualname>_CV_FORMAT
S<HCSCサーバ名>
  • HCSCサーバ名が「HCSC」の場合
    CSCMSG_SHCSC_CSC_PERSIST
CSCBP_<individualname>_PROCESS
CSCBP_<individualname>_ACTIVITY
CSCBP_<individualname>_LINK
CSCBP_<individualname>_CORRELATIONSET
CSCBP_<individualname>_STR_VARIABLE
CSCBP_<individualname>_NUM_VARIABLE
CSCBP_<individualname>_BOOL_VARIABLE
CSCBP_<individualname>_MSG_VARIABLE
CSCBP_<individualname>_MSG_RELATION
CSCBP_<individualname>_PROCESS_IDX1
CSCBP_<individualname>_PROCESS_IDX2
CSCBP_<individualname>_PROCESS_IDX3
CSCBP_<individualname>_PROCESS_IDX4
CSCBP_<individualname>_ACTIVITY_IDX
CSCBP_<individualname>_LINK_IDX
CSCBP_<individualname>_CORREL_IDX1
CSCBP_<individualname>_CORREL_IDX2
CSCBP_<individualname>_STR_VAR_IDX
CSCBP_<individualname>_NUM_VAR_IDX
CSCBP_<individualname>_BOOL_VAR_IDX
CSCBP_<individualname>_MSG_VAR_IDX
CSCBP_<individualname>_MSG_REL_IDX1
CSCBP_<individualname>_MSG_REL_IDX2
CSCBP_<individualname>_MSG_REL_IDX3
CSCBP_<individualname>_V_ACTIVITY
CSCBP_<individualname>_V_LINK
CSCBP_<individualname>_V_STR_VARIABLE
CSCBP_<individualname>_V_NUM_VARIABLE
CSCBP_<individualname>_V_BOOL_VARIABLE
CSCBP_<individualname>_V_MSG_VARIABLE
<クラスタ名>
  • クラスタ名が「Cluster」の場合
    CSCBP_Cluster_PROCESS

(2) RDエリア名または表領域名の変更

データベースごとに次に示すように変更します。

(a) HiRDBの場合

SQLスクリプトファイル内の各テーブルの次の個所を書き換えます。RDエリアを指定しない場合は,「IN <RDDATA>」または「IN <RDINDX>」を削除します。

また,SQLスクリプトファイル「CreateTables_HiRDB_for_Range.sql」または「CreateTables_HiRDB_for_Matrix.sql」を使用する場合は,次に示す個所も書き換えてください。

RDエリアの指定を1〜12月に分けることで,1年(12か月)単位でRDエリアを循環的に割り当てられます。また,同じRDエリアを複数の月で指定することで,必要となるRDエリアを節約できます。

(例1)
SQLスクリプトファイル「CreateTables_HiRDB_for_Range.sql」で次の内容を定義する例を示します。
 扱うデータの単位:1か月
 循環割り当て期間:3か月単位
  • テーブルの定義例
    IN
      ((RDDATA1)'01', /* 1月のデータを格納するRDエリア */
       (RDDATA2)'02', /* 2月のデータを格納するRDエリア */
       (RDDATA3)'03', /* 3月のデータを格納するRDエリア */
       (RDDATA1)'04', /* 4月のデータを格納するRDエリア */
       (RDDATA2)'05', /* 5月のデータを格納するRDエリア */
       (RDDATA3)'06', /* 6月のデータを格納するRDエリア */
       (RDDATA1)'07', /* 7月のデータを格納するRDエリア */
       (RDDATA2)'08', /* 8月のデータを格納するRDエリア */
       (RDDATA3)'09', /* 9月のデータを格納するRDエリア */
       (RDDATA1)'10', /* 10月のデータを格納するRDエリア */
       (RDDATA2)'11', /* 11月のデータを格納するRDエリア */
       (RDDATA3));    /* 12月のデータを格納するRDエリア */
  • インデクスの定義例
    IN
      ((RDINDEX1), /* 1月のインデクスを格納するRDエリア */
       (RDINDEX2), /* 2月のインデクスを格納するRDエリア */
       (RDINDEX3), /* 3月のインデクスを格納するRDエリア */
       (RDINDEX1), /* 4月のインデクスを格納するRDエリア */
       (RDINDEX2), /* 5月のインデクスを格納するRDエリア */
       (RDINDEX3), /* 6月のインデクスを格納するRDエリア */
       (RDINDEX1), /* 7月のインデクスを格納するRDエリア */
       (RDINDEX2), /* 8月のインデクスを格納するRDエリア */
       (RDINDEX3), /* 9月のインデクスを格納するRDエリア */
       (RDINDEX1), /* 10月のインデクスを格納するRDエリア */
       (RDINDEX2), /* 11月のインデクスを格納するRDエリア */
       (RDINDEX3));/* 12月のインデクスを格納するRDエリア */

(例2)
SQLスクリプトファイル「CreateTables_HiRDB_for_Matrix.sql」で次の内容を定義する例を示します。
 扱うデータの単位:1か月
 循環割り当て期間:3か月単位
 バックエンドサーバ:3台
  • テーブルの定義例
    IN
      ((BES1RDDATA1,BES2RDDATA1,BES3RDDATA1), /* 1月のデータを格納するRDエリア */
       (BES1RDDATA2,BES2RDDATA2,BES3RDDATA2), /* 2月のデータを格納するRDエリア */
       (BES1RDDATA3,BES2RDDATA3,BES3RDDATA3), /* 3月のデータを格納するRDエリア */
       (BES1RDDATA1,BES2RDDATA1,BES3RDDATA1), /* 4月のデータを格納するRDエリア */
       (BES1RDDATA2,BES2RDDATA2,BES3RDDATA2), /* 5月のデータを格納するRDエリア */
       (BES1RDDATA3,BES2RDDATA3,BES3RDDATA3), /* 6月のデータを格納するRDエリア */
       (BES1RDDATA1,BES2RDDATA1,BES3RDDATA1), /* 7月のデータを格納するRDエリア */
       (BES1RDDATA2,BES2RDDATA2,BES3RDDATA2), /* 8月のデータを格納するRDエリア */
       (BES1RDDATA3,BES2RDDATA3,BES3RDDATA3), /* 9月のデータを格納するRDエリア */
       (BES1RDDATA1,BES2RDDATA1,BES3RDDATA1), /* 10月のデータを格納するRDエリア */
       (BES1RDDATA2,BES2RDDATA2,BES3RDDATA2), /* 11月のデータを格納するRDエリア */
       (BES1RDDATA3,BES2RDDATA3,BES3RDDATA3));/* 12月のデータを格納するRDエリア */
  • インデクスの定義例
    IN
      ((BES1RDINDEX1,BES2RDINDEX1,BES3RDINDEX1), /* 1月のインデクスを格納するRDエリア */
       (BES1RDINDEX2,BES2RDINDEX2,BES3RDINDEX2), /* 2月のインデクスを格納するRDエリア */
       (BES1RDINDEX3,BES2RDINDEX3,BES3RDINDEX3), /* 3月のインデクスを格納するRDエリア */
       (BES1RDINDEX1,BES2RDINDEX1,BES3RDINDEX1), /* 4月のインデクスを格納するRDエリア */
       (BES1RDINDEX2,BES2RDINDEX2,BES3RDINDEX2), /* 5月のインデクスを格納するRDエリア */
       (BES1RDINDEX3,BES2RDINDEX3,BES3RDINDEX3), /* 6月のインデクスを格納するRDエリア */
       (BES1RDINDEX1,BES2RDINDEX1,BES3RDINDEX1), /* 7月のインデクスを格納するRDエリア */
       (BES1RDINDEX2,BES2RDINDEX2,BES3RDINDEX2), /* 8月のインデクスを格納するRDエリア */
       (BES1RDINDEX3,BES2RDINDEX3,BES3RDINDEX3), /* 9月のインデクスを格納するRDエリア */
       (BES1RDINDEX1,BES2RDINDEX1,BES3RDINDEX1), /* 10月のインデクスを格納するRDエリア */
       (BES1RDINDEX2,BES2RDINDEX2,BES3RDINDEX2), /* 11月のインデクスを格納するRDエリア */
       (BES1RDINDEX3,BES2RDINDEX3,BES3RDINDEX3));/* 12月のインデクスを格納するRDエリア */

なお,テーブル分割機能(レンジ分割またはマトリクス分割)を使用し,さらにcscpiselectコマンドの-whereオプションまたは-wherefileオプションでSplitKeyを探索条件として指定する場合,SQLスクリプトファイルのCREATE VIEWを変更する必要があります。コマンドとビュー表の関係については,マニュアル「サービスプラットフォーム リファレンス」の「cscpiselect(プロセスインスタンスの検索)」を参照してください。cscpiselectコマンドの探索条件にSplitKeyを指定しない場合は,処理性能に影響を及ぼさないよう,CREATE VIEWを変更しないことをお勧めします。

(例3)
CSCBP_<individualname>_V_ACTIVITYビュー表の定義例を次に示します。
CREATE VIEW CSCBP_<individualname>_V_ACTIVITY
(
    ProcessID,
    ActivityNumber,
    ProcessDefinitionName,
    ProcessDefinitionVersion,
    ActivityDefinitionName,
    ActivityKind,
    ParentNumber,
    ScopeNumber,
    RepeatNumber,
    State,
    FirstChildNumber,
    LastChildNumber,
    StartTime,
    EndTime,
    WaitTime,
    CSCServerName,
    SplitKey                                      …… ※1
) AS SELECT a.ProcessID,
            a.ActivityNumber,
            p.ProcessDefinitionName,
            p.ProcessDefinitionVersion,
            a.ActivityDefinitionName,
            a.ActivityKind,
            a.ParentNumber,
            a.ScopeNumber,
            a.RepeatNumber,
            a.State,
            a.FirstChildNumber,
            a.LastChildNumber,
            a.StartTime,
            a.EndTime,
            a.WaitTime,
            p.CSCServerName,
            p.SplitKey                             …… ※2
     FROM CSCBP_<individualname>_ACTIVITY a, CSCBP_<individualname>_PROCESS p
     WHERE a.ProcessID = p.ProcessID;

注※1
付録C.1(4) ビュー表の情報」の内容に従って,構成列の最後にSplitKey列を追加してください。

注※2
付録C.1(4) ビュー表の情報」の内容に従って,参照先テーブルのカラム名を設定してください。

(b) Oracleの場合

SQLスクリプトファイル内にある,各テーブル,またはインデクスの次の個所を書き換えます。表領域を指定しない場合は,「TABLESPACE <EXAMPLE>」を削除します。