Hitachi

ノンストップデータベース HiRDB Version 9 コマンドリファレンス(Windows(R)用)


8.6.1 使用例

データベース再編成ユティリティの使用例の一覧(インデクスの一括作成)を次に示します。

使用例

内容

区分

例1

インデクスの一括作成

  • 表の再編成の例2で出力されたインデクス情報ファイルを基に,インデクスを一括作成します。

S

例2

プラグインインデクスの遅延一括作成

  • 抽象データ型(SGMLTEXT型)がある表に定義されている,プラグインインデクスの遅延一括作成をします。

例3

インデクスの一括作成

  • データベース作成ユティリティ実行時(インデクス情報出力モード)に出力されたインデクス情報ファイルを使用するものとします。

P

(凡例)

S:HiRDB/シングルサーバ

P:HiRDB/パラレルサーバ

〈この項の構成〉

(1) インデクスの一括作成

例1
表の再編成の例2で出力された,インデクス情報を基にしてインデクス(INDEX2)を一括作成します。
出力されているインデクス情報ファイルの名称は,c:\hirdb\pdrorg\index_inf2とします。
また,PDBUSER02のインデクス情報は既にc:\hirdb\pdrorg\index_inf4に取得したものとします。
表(TABLE1),及びインデクスは次のように定義されているものとします。
・表の定義
  CREATE TABLE TABLE1(C1 INT NOT NULL,C2 CHAR(8),C3 INT)
         IN ((PDBUSER01) C1 > 10,(PDBUSER02))
・インデクスの定義(分割キーインデクス)
  CREATE INDEX INDEX1 ON TABLE1(C1) IN ((PDBUSER03),(PDBUSER04))
・インデクスの定義(非分割キーインデクス)
  CREATE INDEX INDEX2 ON TABLE1(C2,C1) IN (PDBUSER05)
[概要]

[図データ]

[入出力ファイルとRDエリアの関連図]

[図データ]

[実行するコマンドの説明]

インデクス情報を基にして,インデクス(INDEX2)の一括作成をします。

-k ixmk:インデクスの一括作成をするときの指定

-t TABLE1:インデクスの一括作成対象の表の名称

-o:インデクス作成完了後,不要となったインデクス情報ファイルを削除する指定

c:¥hirdb¥pdrorg¥control_file:制御情報ファイルの名称

[制御情報ファイル(c:¥hirdb¥pdrorg¥control_file)の内容]
 index INDEX2 PDBUSER05 c:\hirdb\pdrorg\index_inf2       1
 index INDEX2 PDBUSER05 c:\hirdb\pdrorg\index_inf4       1
 sort c:\hirdb\pdrorg\sortwork                           2
[説明]
  1. インデクス情報があるインデクス情報ファイルの指定

    INDEX2:インデクス識別子

    PDBUSER05:インデクスが格納されているRDエリアの名称

    c:¥hirdb¥pdrorg¥index_inf2,c:¥hirdb¥pdrorg¥index_inf4:インデクス情報ファイルの名称

  2. ソート用ワークディレクトリの指定

    c:¥hirdb¥pdrorg¥sortwork:ソート用ワークファイルを作成するディレクトリの名称

(2) プラグインインデクスの遅延一括作成

例2
抽象データ型(SGMLTEXT)の列を持つ表(TABLE1)に定義されたプラグインインデクス(INDEX1)を遅延一括作成します。抽象データ型(SGMLTEXT)はHiRDB Text Search Plug-inで提供されています。
なお,表及びインデクスは次のように定義されているものとします。
・表の定義
  CREATE TABLE TABLE1(C1 INT,C2 SGMLTEXT ALLOCATE (SGMLTEXT IN LOBUSER01)
                      PLUGIN'<DTD>sgml.dtd</DTD>' ) IN PDBUSER01
・プラグインインデクスの定義
  CREATE INDEX INDEX1 USING TYPE NGRAM ON TABLE1(C2) IN LOBUSER02
なお,インデクス情報ファイルは,次に示す定義内容のときに更新系(INSERT文やUPDATE文)のUAPを実行して作成されたものです。
・サーバ定義:set pd_plugin_ixmk_dir="c:\hirdb\pdrorg\ixdir"
・クライアント環境変数:PDPLGIXMK=YES
[概要]

[図データ]

[入出力ファイルとRDエリアの関連図]

[図データ]

[実行するコマンドの説明]

表(TABLE1)に定義されたプラグインインデクス(INDEX1)を,遅延一括作成します。

-k ixmk:インデクスの一括作成をするときの指定

-t TABLE1:インデクスの一括作成対象の表の名称

c:¥hirdb¥pdrorg¥control_file:制御情報ファイルの名称

[制御情報ファイル(c:¥hirdb¥pdrorg¥control_file)の内容]
 index INDEX1 LOBUSER02 c:\hirdb\pdrorg\ixdir\INDEX1.LOBUSER02      1
[説明]
  1. 遅延一括作成するインデクス情報ファイルの指定

    INDEX1:遅延一括作成するプラグインインデクスのインデクス識別子

    LOBUSER02:遅延一括作成するプラグインインデクスのインデクス格納RDエリアの名称

    c:¥hirdb¥pdrorg¥ixdir¥INDEX1.LOBUSER02:インデクス情報ファイルの名称

(3) インデクスの一括作成

例3
インデクス情報ファイルを基にして,インデクスを一括作成します。データベース作成ユティリティ実行時(インデクス情報出力モードでデータロード)に出力したインデクス情報ファイル4個を使用するものとします。
表,及びインデクスは次のように定義されているものとします。
・表の定義
  CREATE TABLE TABLE1(C1 INT NOT NULL,C2 CHAR(8),C3 INT)
               IN ((PDBUSER01) C1 > 10,(PDBUSER02))
・インデクスの定義(分割キーインデクス)
  CREATE INDEX INDEX1 ON TABLE1(C1) IN ((PDBUSER03),(PDBUSER05))
・インデクスの定義(非分割キーインデクス)
  CREATE INDEX INDEX2 ON TABLE1(C2,C1) IN ((PDBUSER04),(PDBUSER06))
[概要]

[図データ]

[入出力ファイルとRDエリアの関連図]

[図データ]

[実行するコマンドの説明]

データロード時に出力されたインデクス情報を基にして,インデクスの一括作成をします。

-k ixmk:インデクスの一括作成をするときの指定

-t TABLE1:インデクスの一括作成対象の表の名称

c:¥hirdb¥pdrorg¥control_file:制御情報ファイルの名称

[制御情報ファイル(c:¥hirdb¥pdrorg¥control_file)の内容]
 index INDEX1 PDBUSER03 c:\hirdb\pdrorg\index_inf1          1
 index INDEX2 PDBUSER04 c:\hirdb\pdrorg\index_inf2          1
 index INDEX1 PDBUSER05 c:\hirdb\pdrorg\index_inf3          1
 index INDEX2 PDBUSER06 c:\hirdb\pdrorg\index_inf4          1
 sort bes1 c:\hirdb\pdrorg\sortwork                         2
 sort bes2 c:\hirdb\pdrorg\sortwork                         2
[説明]
  1. インデクス情報があるインデクス情報ファイルの指定

    INDEX1,INDEX2:インデクス識別子

    PDBUSER03,PDBUSER04,PDBUSER05,PDBUSER06:インデクスが格納されているRDエリアの名称

    c:¥hirdb¥pdrorg¥index_inf1,c:¥hirdb¥pdrorg¥index_inf2,c:¥hirdb¥pdrorg¥index_inf3,c:¥hirdb¥pdrorg¥index_inf4:インデクス情報ファイルの名称

  2. ソート用ワークディレクトリの指定

    bes1,bes2:ソート用ワークファイルを作成するサーバの名称

    c:¥hirdb¥pdrorg¥sortwork:ソート用ワークファイルを作成するディレクトリの名称