2.6.2  IXXMLインデクス型プラグインの環境設定

<この項の構成>
(1) 環境情報の定義方法
(2) 設定できる項目
(3) 有効範囲

(1) 環境情報の定義方法

IXXMLインデクス型プラグインの環境定義ファイルは,サンプルファイルとして提供されています。

IXXMLインデクス型プラグインの環境情報を設定できる単位を次に示します。

優先順位は,サーバ単位>ユニット単位>システム単位です。

記述誤りなどが検出された場合,メッセージログに警告メッセージを出力し,誤りのある定義ファイルは無視されます。環境定義ファイルがないか,環境定義ファイルはあるが設定されていない定義がある場合は,エラーではなく,定義値なしとして処理します。最終的に有効な値がない場合は,システムのデフォルトで動作します。

環境定義ファイルの定義例を次の図に示します。

図2-25 IXXMLインデクス型プラグインの環境定義ファイルの定義例

[図データ]

注意事項
  • 各設定項目の行末は改行で区切ってください。
  • 1行に1項目だけ指定できます。2項目以上指定した場合は,2項目目以降は無視されます。
  • 設定項目の途中を改行で区切らないでください。
  • 検索用ワークファイルを使用して実行した検索が異常終了した場合,検索用ワークファイルディレクトリに不要なファイルが残ることがあります。これらのファイルは定期的にユーザが削除してください。
  • 1行に設定できる文字列長は1,023バイトです。
  • 「#」(シャープ)以降は,コメント文として扱われます。
  • 各行は,空行なしで詰めて記述してください。

(2) 設定できる項目

IXXMLインデクス型プラグインを動作させる環境情報をIXXMLインデクス型プラグインの環境定義ファイルに定義することで,ユーザごとの環境を設定できます。設定できる定義項目を次の表に示します。

表2-13 IXXMLインデクス型プラグインの環境定義ファイルに設定できる定義項目

種別環境設定項目パラメタ設定値環境を設定できる単位
XMLデータ検索一括登録時最大メモリサイズset phj_mem_build最大値:2,097,152キロバイト
最小値:30,720キロバイト
デフォルト:512,000キロバイト
システム,ユニット,サーバ
1件登録時最大メモリサイズset phj_mem_insert最大値:2,097,152キロバイト
最小値:3,072キロバイト
デフォルト:51,200キロバイト
システム,ユニット,サーバ
検索時最大ワークメモリサイズset phj_mem_search最大値:2,097,152キロバイト
最小値:2,048キロバイト
デフォルト:102,400キロバイト
システム,ユニット,サーバ
検索用ワークファイルディレクトリset phj_dir_search最大長:200バイト(¥0を含む)
最小長:1バイト
UNIXの場合のデフォルト:HiRDB運用ディレクトリ/plugin/_phjxml/tmp
Windowsの場合のデフォルト:HiRDB運用フォルダ¥plugin¥_phjxml¥tmp
システム,ユニット,サーバ
検索オプションset phj_opt_searchmemoryまたはfile
デフォルト:memory
システム,ユニット,サーバ
スコア算出法指定set phj_opt_scorebooleanまたはtotal
デフォルト:boolean
システム,ユニット,サーバ
検索抑止インデクスサイズset phj_index_search最大値:2,097,152キロバイト
最小値:64キロバイト
デフォルト:2,097,152キロバイト
システム,ユニット,サーバ
全文検索1文字近傍検索実行可否set phj_1gram_proximity_searchonまたはoff
デフォルト:on
システム,ユニット,サーバ
登録・検索同時実行1RDエリア当たりの排他制御用共用メモリサイズset phj_lock_pool_size最大値:1,024キロバイト
最小値:8キロバイト
デフォルト:8キロバイト
サーバ
分割遅延登録分割遅延登録用ファイルオーバ時の処理set phj_delay_overcontinueまたはerror
デフォルト:error
システム,ユニット,サーバ
遅延データスキャン機能指定set phj_table_scanonまたはoff
デフォルト:on
システム,ユニット,サーバ
運用インデクス用グローバルバッファ最適化モード指定set phj_global_buffer_mode0または1
デフォルト:0
システム,ユニット,サーバ
一括登録時最大メモリサイズ
IXXML型に対する一括追加(CREATE INDEX,pdload)をするときに使用する最大メモリサイズ(キロバイト)です。
形式
set phj_mem_build=xxxx
1件登録時最大メモリサイズ
IXXML型に1件追加(INSERT文,UPDATE文,pdloadのSYNCモード)するときに使用する最大メモリサイズ(キロバイト)です。
形式

set phj_mem_insert=xxxx

検索時最大ワークメモリサイズ
検索処理をするときに使用する作業用メモリの最大メモリサイズ(キロバイト)です。
形式

set phj_mem_search=xxxx

検索用ワークファイルディレクトリ
検索オプションに,「set phj_opt_search=file」を指定した場合,検索に使用するワークファイルを作成するディレクトリ名を絶対パスで指定します。XML Extensionは,検索開始時にファイル名が「swk」で始まるユニークなファイルを指定されたディレクトリに作成し,検索終了時に削除します。
検索が複数同時実行された場合,ディレクトリ競合による性能低下のおそれがあります。そのため,同一のBESに対して複数のユーザが同時に検索する運用の場合は,ファイルではなくメモリの使用をお勧めします。
形式

set phj_dir_search=xxxxxxxxxxxx

検索オプション
検索時の動作方法を指定します。
形式

set phj_opt_search=memory | file

  • memory
    メモリ上で動作します。「set phj_mem_search」で指定したメモリサイズを超える場合は,メモリ不足エラーとなります。
  • file
    メモリおよび検索用ワークファイルで動作します。
スコア算出法指定
検索時のスコア算出法を指定します。
形式

set phj_opt_score=boolean|total

  • boolean
    論理演算時に検索条件式が論理積の場合は,演算対象内で最小のスコアを最終スコアとし,論理和の場合は,演算対象内で最大のスコアを最終スコアとします。
  • total
    論理演算時に検索条件式が論理積,論理和のどちらの場合でも,演算対象内のスコアの総和の値を最終スコアとします。
検索抑止インデクスサイズ
検索で使用するインデクスサイズの上限値を指定します。検索時に指定した上限値を超えるインデクスを参照すると,SQL連絡領域に次のメッセージが出力されます。

Index data for search exceeds maximum size.(XX)

メッセージの詳細については,「付録F エラーメッセージ」を参照してください。
形式

set phj_index_search = xxx

1文字近傍検索実行可否
1文字のインデクスを使用する近傍検索や,「A*A」のような1文字のインデクスを使用する前方後方一致のワイルドカード検索の実行を可能にするかを指定します。なお,これらの検索は使用するインデクスが多くなり,システムに負荷を与えるおそれがあります。このため,これらの検索を実行する必要が無い場合は「off」を指定してください。
形式

set phj_1gram_proximity_search=on|off

  • on
    1文字のインデクスを使用する近傍検索,および前方後方一致のワイルドカード検索を実行できます。
  • off
    1文字のインデクスを使用する近傍検索,および前方後方一致のワイルドカード検索を実行するとエラーリターンし,SQL連絡領域に「Cannot specify term of ome character in proximity.」のメッセージが出力されます。
    メッセージの詳細については「付録F エラーメッセージ」を参照してください。
1RDエリア当たりの排他制御用共用メモリサイズ
登録・検索同時実行時の排他制御に使用する共用メモリのサイズ(キロバイト)を指定します。サイズは8キロバイトの倍数で指定してください。8キロバイトの倍数でない値が指定された場合は,8キロバイト単位で切り下げられます。ただし,8キロバイトより小さい値が指定された場合は,8キロバイト(デフォルト)になります。
なお,この項目を設定できる単位は,サーバ単位だけです。
形式

set phj_lock_pool_size=xxxx

分割遅延登録用ファイルオーバ時の処理
インデクス分割遅延登録時に,指定された分割登録用の領域を使い切った場合の処理を指定します。
形式

set phj_delay_over=continue | error

  • continue
    登録要求されたXMLデータは遅延せず即時にインデクスを作成して登録します。
  • error
    エラーリターンします。
遅延データスキャン機能指定
遅延データスキャン機能に対応するインデクスが作成された場合,実際に遅延データスキャン機能を使用して検索するかどうかを指定します。
形式

set phj_table_scan=on | off

  • on
    遅延データスキャン機能を適用します。
  • off
    遅延データスキャン機能を適用しません。
インデクス用グローバルバッファ最適化モード指定
インデクスにアクセスするときHiRDB BLOB用グローバルバッファを最適化するかどうかを指定します。最適化した場合は検索性能の向上が期待できます。
形式

set phj_global_buffer_mode=0|1

  • 0
    最適化しません。
  • 1
    最適化します。
    検索用の管理データファイル単位で優先してバッファリングします。各ファイルの優先付けについては,「6.2 性能向上の運用」を参照してください。

(3) 有効範囲

環境定義ファイルに定義した環境情報は,サーバ開始から終了まで有効です。HiRDB稼働中に環境情報を変更した場合は,正しく動作しない場合がありますので変更しないでください。