HiRDB 全文検索プラグイン HiRDB Text Search Plug-in Version 8
![[目次]](FIGURE/CONTENT.GIF)
![[用語]](FIGURE/GLOSS.GIF)
![[索引]](FIGURE/INDEX.GIF)
![[前へ]](FIGURE/FRONT.GIF)
全文検索用または概念検索用のインデクス作成情報を定義するには,定義系SQLのCREATE INDEXを使用します。この定義をすることで,全文検索機能や概念検索機能が使用できるようになります。
CREATE INDEXのインデクス型識別子にはNGRAMと指定してください。また,RDエリア名には,「2.5.4 データ格納領域の確保」でn-gramインデクス情報の格納領域として確保したRDエリアを指定してください。n-gramインデクスプラグインで使用するインデクスのRDエリアは,ログ取得モードとなります。CREATE INDEXの詳細については,マニュアル「HiRDB SQLリファレンス」を参照してください。
なお,CREATE INDEX実行時に指定するプラグインオプションには複数の定義が指定できます。
- (例)
- 複数の定義を指定する場合は,次のように定義ごとに,(半角コンマ)で区切って指定します。
PLUGIN'定義,定義,定義,…'
インデクスの定義では,全文検索機能だけを使用する場合と,全文検索機能に加えて,概念検索機能を使用する場合とでは,CREATE INDEXの指定方法が異なります。それぞれのインデクスの定義例を次に示します。
- 全文検索機能を使用する場合
- 全文検索機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-11 全文検索機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU020800.GIF)
- 全文検索機能に加えて,概念検索機能を使用する場合
- 全文検索機能に加えて,概念検索機能を使用する場合は,CREATE INDEXのプラグインオプションに次の定義の追加が必要です。
PLUGIN 'CONCEPT_ON'
- この指定を省略した場合,概念検索用のインデクスが作成されないため,概念検索を実行できません。概念検索機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-12 概念検索機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU020900.GIF)
インデクスファイル自動拡張機能を利用すると,インデクスファイル作成時の空き容量を,各論理ファイルの拡張領域として使用できるようになります。これによってRDエリアを有効利用できますので,インデクスファイル自動拡張機能の使用を推奨します。この機能を使用する場合は,プラグインオプションに次の定義が必要です。
PLUGIN 'FLEX_AREA'
この機能を使用するとインデクスが自動的に拡張するため,インデクスの拡張ユティリティ(phnexpnd)を実行する必要はありません。この機能を利用した場合にインデクスの拡張ユティリティを実行したときは,無視されます。
インデクスファイル自動拡張機能を使用する場合の,インデクス定義例を次の図に示します。
図2-13 インデクスファイル自動拡張機能使用時のインデクス定義例(全文検索用インデクスの場合)
![[図データ]](FIGURE/ZU020910.GIF)
インデクス作成ルール追加機能とは,標準で作成するインデクス情報に,かたかな,漢字,数字,英字など,すべての文字の種類(文字種)の組み合わせを追加する機能です。この機能を使用することで,検索タームがさまざまな文字種の組み合わせで構成される場合の検索性能が向上します。
特に,概念検索機能を使用する場合には,インデクス作成ルール追加機能を使用することをお勧めします。
(a) インデクス作成ルール追加機能の定義方法
インデクス作成ルール追加機能を使用する場合には,CREATE INDEXのプラグインオプションに対して次の表に示す内容を定義してください。
表2-8 CREATE INDEXのプラグインオプションに対する定義内容
| 定義内容※ |
説明 |
| INDEX_ALL |
すべての文字種の組み合わせを追加します。特に,概念検索機能を使用する場合には,併用することをお勧めします。 |
| INDEX_MEDIUM |
かたかな,数字,および記号の一部の文字種の組み合わせを追加します。専門分野で使用する用語や技術系の用語が頻出する場合に,使用することをお勧めします。 |
- 注※
- 半角の英字で記述します。
インデクス作成ルール追加機能を使用する場合の,インデクスの定義例を図2-14および図2-15に示します。
図2-14 インデクス作成ルール追加機能使用時(INDEX_MEDIUM)のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021000.GIF)
図2-15 インデクス作成ルール追加機能使用時(INDEX_ALL)のインデクス定義例(概念検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021100.GIF)
(b) インデクス作成ルール追加機能使用時の注意
インデクス作成ルール追加機能はSGMLTEXT型の列に対してだけ指定できます。FREEWORD型の列に対しては指定できません。
大文字と小文字,または全角文字と半角文字の違いを区別しないで検索を実行したい場合には,大小文字・全角文字半角文字統一機能を使用します。
(a) 大小文字・全角文字半角文字統一機能の定義方法
大小文字・全角文字半角文字統一機能を使用する場合には,CREATE INDEXのプラグインオプションに対して次の表に示す内容を定義します。
表2-9 定義内容
| 定義内容※ |
説明 |
| SAMECASE=ON |
英大文字と英小文字を区別しないでインデクスを作成します。 |
| SAMEWIDE=ON |
全角文字と半角文字の英数字,かたかな,記号を区別しないでインデクスを作成します。 |
- 注※
- 半角の英字で記述します。SAMECASEとSAMEWIDEを組み合わせて指定できます。
大小文字・全角文字半角文字統一機能使用時のインデクス定義例を図2-16,図2-17,図2-18に示します。
図2-16 大小文字統一機能使用時のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021200.GIF)
図2-17 全角文字半角文字統一機能使用時のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021300.GIF)
図2-18 大小文字統一機能,および全角文字半角文字統一機能使用時のインデクス定義例(概念検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021400.GIF)
(b) 大小文字・全角文字半角文字統一機能使用時の注意
- 同義語展開指定をする場合,あらかじめText Search Plug-in 02-01以降のバージョンで同義語辞書を作成するか,または同義語辞書移行ユティリティ(「phssyndicconv」)を実行して,既存の同義語辞書を移行する必要があります。
- 02-01より前のバージョンで作成した同義語辞書を使用した場合,同義語異表記展開を指定しても同義語辞書に登録した同義語で検索できない場合があります。
- extracts関数でハイライトタグを埋め込む場合,ハイライト条件式に指定する検索タームは文字統一の対象となりません。データを登録した時の文字で指定してください。extracts関数については,「4.2.6 extracts」を参照してください。
- 全角文字半角文字統一機能を指定しないで,近傍条件検索やワイルドカードに"?"を指定した検索を実行した場合,半角文字のガ行,ザ行,ダ行,バ行,パ行,およびヴを2文字として扱います。しかし,全角文字半角文字統一機能を指定した場合は1文字として扱うため注意が必要です。
検索時に「や」と「ゃ」,「よ」と「ょ」などの拗音を区別しないようにするには,拗音統一機能を使用します。
(a) 拗音統一機能の定義方法
拗音統一機能を使用する場合は,CREATE INDEXのプラグインオプションに次の定義を追加してください。
PLUGIN 'SAMEY=ON'
拗音統一機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-19 拗音統一機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU021500.GIF)
「SAMEY=ON」を指定すると,次の拗音が統一されます。
![[図データ]](FIGURE/ZU010400.GIF)
(b) 拗音統一機能使用時の注意
- 同義語展開指定をする場合,あらかじめText Search Plug-in 02-01以降のバージョンで同義語辞書を作成するか,または同義語辞書移行ユティリティ(「phssyndicconv」)を実行して,既存の同義語辞書を移行する必要があります。
- 02-01より前のバージョンで作成した同義語辞書を使用した場合,同義語異表記展開を指定しても同義語辞書に登録した同義語で検索できない場合があります。
- extracts関数でハイライトタグを埋め込む場合,ハイライト条件式に指定する検索タームは文字統一の対象となりません。データを登録した時の文字で指定してください。extracts関数については,「4.2.6 extracts」を参照してください。
検索時に「バ」と「ハ゛」,「ぱ」や「は゜」のように濁音や半濁音を区別しないようにするには,濁音統一機能を使用します。
(a) 濁音統一機能の定義方法
濁音統一機能を使用する場合は,CREATE INDEXのプラグインオプションに次の定義を追加してください。
PLUGIN 'SAMED=ON'
濁音統一機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-20 濁音統一機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU021550.GIF)
「SAMED=ON」を指定すると,濁音,半濁音が統一されます。
(b) 濁音統一機能使用時の注意
- 同義語展開指定をする場合,あらかじめText Search Plug-in 02-01以降のバージョンで同義語辞書を作成するか,または同義語辞書移行ユティリティ(「phssyndicconv」)を実行して,既存の同義語辞書を移行する必要があります。
- 02-01より前のバージョンで作成した同義語辞書を使用した場合,同義語異表記展開を指定しても同義語辞書に登録した同義語で検索できない場合があります。
- extracts関数でハイライトタグを埋め込む場合,ハイライト条件式に指定する検索タームは文字統一の対象となりません。データを登録した時の文字で指定してください。extracts関数については,「4.2.6 extracts」を参照してください。
- 濁音文字統一機能を指定しないで,近傍条件検索やワイルドカードに"?"を指定した検索を実行した場合,半角文字の濁音で表示できる文字を2文字として扱います。しかし,濁音文字統一機能を指定した場合は1文字として扱うため注意が必要です。
検索に使用しない文字を除いて検索性能を向上させるには,削除文字指定機能を使用します。
(a) 削除文字指定機能の定義方法
削除文字指定機能を使用する場合は,CREATE INDEXのプラグインオプションに次の定義の追加が必要です。
PLUGIN 'DELcode=ON'
削除文字指定機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-21 削除文字指定機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU021600.GIF)
「DELcode=ON」を指定すると,次の文字が削除されます。
全角文字の "。"(句点),"、"(読点),全角スペース,
半角文字の "。"(句点),"、"(読点),半角スペース(0x20),
改行コード(0x0a,0x0d),タブコード(0x09)
(b) 削除文字指定機能使用時の注意
- 近傍検索で指定された語句リストの間に削除文字が含まれる場合,距離の指定方法によってはヒットしないことがあります。
例えば,登録データが「COMPUTER△NETWORK」の場合,"COMPUTER"と"NETWORK"の間の距離は0となります。
- 削除文字を指定したインデクスに対して検索を実行する場合,登録データから削除文字が取り除かれていることに注意してください。
例えば,削除文字が半角スペースで,登録データが「tha[△・・・△]</終了タグ>」の場合(・・・は0個以上の繰り返しを示します),"tha?" で検索してもヒットしません。
- 検索タームおよびすべての異表記展開・同義語異表記展開結果が,削除文字だけで構成されている場合,0件ヒットとなります。
- 削除文字を指定した検索結果に対し,extracts関数でハイライト表示しても,ハイライト表示する文字列に削除文字が含まれている場合,ハイライト表示されません。
インデクス容量を削減する方法として,1文字ずつインデクスを作成することができます。この機能を文字単位インデクス(1gramインデクス)作成機能といいます。
(a) 文字単位インデクス作成機能の定義方法
文字単位インデクス作成機能を使用する場合は,CREATE INDEXのプラグインオプションに次の定義の追加が必要です。
PLUGIN 'INDEX_GRAM1'
文字単位インデクス作成機能を使用する場合の,インデクスの定義例を次の図に示します。
図2-22 文字単位インデクス作成機能使用時のインデクス定義例
![[図データ]](FIGURE/ZU021650.GIF)
(b) 文字単位インデクス作成機能使用時の注意事項
- 文字単位インデクス作成機能は,次の機能と同時に指定することはできません。
- 概念検索用インデクスの作成
- インデクス作成ルール追加機能の使用
- 文字単位インデクスだけ作成した場合,インデクス容量が削減される反面,登録データの増加に伴い,検索性能が低下します。このため,大量データを登録する運用にこの機能を適用する場合は注意が必要です。
登録性能を向上させるために,小容量の一時的な登録用インデクスに,文書を追加します。この登録用インデクスを差分インデクスといいます。
差分インデクスを使用する場合は,CREATE INDEXのプラグインオプションに差分インデクスとして使用する容量を定義します。サイズはキロバイト単位で,次のように定義します。
PLUGIN 'SUB_INDEX=xxxxxx'
なお,差分インデクスとして使用できる容量の最大値は102,400キロバイト,最小値は40,000キロバイトです。差分インデクスの定義が省略された場合,差分インデクスは作成されません。
差分インデクス使用時のインデクスの定義例を図2-23および図2-24に示します。
図2-23 差分インデクス使用時のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021700.GIF)
図2-24 差分インデクス使用時のインデクス定義例(概念検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021800.GIF)
差分インデクスを作成した場合,ユーザはHiRDBクライアント環境変数の指定によって,MASTERインデクスへの登録か,差分インデクスへの登録かを選択できます。
HiRDBクライアント環境変数は次のように指定します。
- 環境変数名称 : PDPLUGINNSUB
- 指定できる値 YまたはN
- Y:差分インデクスへの登録
- N:MASTERインデクスへの登録
環境変数に指定がない場合は,"Y"(差分インデクスへの登録)が仮定されます。ただし,次の場合には環境変数の指定内容に関係なく,MASTERインデクスへ登録します。
- 差分インデクスを作成していない場合
- インデクス作成後またはインデクス再作成後に,インデクスへの文書登録が0件の場合
- 差分インデクス使用率が100%になった場合
(c) 差分インデクス使用時の注意
- HiRDBの「pdload(データベース作成ユティリティ)」および「pdrorg(データベース再編成ユティリティ)」によるインデクス登録時も,差分インデクスへの登録ができます。この場合は,作成するインデクス量が差分インデクス残容量を超えないように注意してください。残容量を超えた場合は,システムログファイルに次のメッセージが出力されます。
KFPY99999-I (_phngram) 02000-I Sub index using ratio 100 percent
この場合,MASTERインデクスへの登録が完了すれば,pdloadおよびpdrorgは正常終了します。ただし,以降の登録および更新処理で差分インデクスを使えるようにするために,差分インデクスのマージをしてください。
- HiRDBの「pdload(データベース作成ユティリティ)」を使用してデータ登録を実行する場合に,環境変数の指定をしていないと,差分インデクスへの登録が実行されます。この時に差分インデクス容量が不足すると,MASTERインデクスに再度登録が実行されることになり,余計に時間が掛かります。このため,環境変数の設定値を確認してから,「pdload(データベース作成ユティリティ)」を実行してください。
- UCS4インデクスでは指定できません。
表のSGMLTEXT型列に文書を登録している状態でCREATE INDEXを実行する場合,次のどれかの方法を指定できます。運用形態に合わせて指定してください。
インデクス作成方法指定を使用する場合,CREATE INDEXのプラグインオプションに即時登録,初期分割登録,または分割遅延登録の定義を追加します。インデクス作成方法指定の定義を省略した場合,即時登録が適用されます。
- 即時登録
- 表に登録されている文書について,CREATE INDEX実行時にインデクス作成とインデクスへの文書登録を実行します。
- 即時登録を使用する場合,CREATE INDEXのプラグインオプションに次の定義を追加,または省略します。
PLUGIN 'CREATEMODE=0'
- 初期分割登録
- 表に登録されている文書について,CREATE INDEX実行時にはインデクスへは反映しません。「phnstartidx(インデクス作成開始ユティリティ)」を実行してインデクスへの文書登録を実行します。
- 初期分割登録を使用する場合,CREATE INDEXのプラグインオプションに次の定義を追加します。
PLUGIN 'CREATEMODE=1'
初期分割登録使用時のインデクスの定義例を図2-25および図2-26に示します。
図2-25 初期分割登録使用時のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU021900.GIF)
図2-26 初期分割登録使用時のインデクス定義例(概念検索用のインデクスの場合)
![[図データ]](FIGURE/ZU022000.GIF)
- 分割遅延登録
- 表に登録されている文書について,CREATE INDEX実行時にはインデクスへ反映しません。「phnstartidx(インデクス作成開始ユティリティ)」を実行してインデクスへの文書登録を実行します。分割遅延登録を使用する場合,インデクス分割遅延登録用の領域が必要となります。
- 分割遅延登録を使用する場合,CREATE INDEXのプラグインオプションに次の定義を追加します。
PLUGIN 'CREATEMODE=2,DELAY_SIZE=インデクス分割遅延登録用領域サイズ(キロバイト)'
- インデクス分割遅延登録用領域サイズの見積もりについては,「2.3.2(1)(b) ユーザLOB用RDエリア容量」を参照してください。また,分割遅延登録を設定していないインデクスに対しては,「phnmodidx(インデクス情報変更ユティリティ)」を実行することで分割遅延登録を設定したインデクスに移行できます。指定できる最大値・最小値は次のとおりです。
- 最大値:129,584キロバイト
- 最小値:2,608キロバイト
分割遅延登録時のインデクスの定義例を図2-27および図2-28に示します。
図2-27 分割遅延登録使用時のインデクス定義例(全文検索用のインデクスの場合)
![[図データ]](FIGURE/ZU022100.GIF)
図2-28 分割遅延登録使用時のインデクス定義例(概念検索用のインデクスの場合)
![[図データ]](FIGURE/ZU022200.GIF)
分割遅延登録への移行時に実行する,「phnmodidx(インデクス情報変更ユティリティ)」の指定例を次の図に示します。
図2-29 分割遅延登録への移行時に実行する,インデクス情報変更ユティリティの指定例
![[図データ]](FIGURE/ZU022300.GIF)
- 分割遅延登録・更新系SQL同時実行
- 遅延登録実行時に,同時に「phnstartidx(インデクス作成開始ユティリティ)」を実行してインデクスへ文書を登録します。分割遅延登録・更新系SQL同時実行を利用する場合,遅延登録時に情報を退避しておく領域が必要です。CREATE INDEXのプラグインオプションに次の定義を追加します。
PLUGIN 'CREATEMODE=3,DELAY_SIZE=遅延登録時に情報を退避する領域サイズ(キロバイト)'
- 遅延登録時に情報を退避する領域サイズの見積もりについては,「2.3.2(1)(b) ユーザLOB用RDエリア容量」を参照してください。
- この退避領域に指定できる最大値・最小値は次のとおりです。
- 最大値:129,584キロバイト
- 最小値:12,832キロバイト
- 分割遅延登録・更新系SQL同時実行のインデクスの定義例を次の図に示します。
図2-30 分割遅延登録・更新系SQL同時実行使用時のインデクス定義例
![[図データ]](FIGURE/ZU022350.GIF)
(b) 初期分割登録・分割遅延登録使用時の注意
- CREATE INDEX実行後,インデクスへ登録されていない文書のインデクスは,「phnstartidx(インデクス作成開始ユティリティ)」を実行して登録してください。インデクスへ登録されていない文書が存在するかどうかは,「phnidxls(インデクス情報の取得ユティリティ)」を実行して確認してください。
- インデクスへ登録されていない文書は,検索対象になりません。
- インデクスへ登録されていない文書が存在する場合,登録または更新した文書はインデクスへ登録されません。インデクスへ登録する場合は,「phnstartidx(インデクス作成開始ユティリティ)」を実行してください。
- インデクスが作成されていない文書が存在する場合,検索を実行しても,インデクスが作成されていない旨のメッセージは出力されません。
- 差分インデクスを使用している場合,登録または更新した文書はすべてMASTERインデクスに登録されます。
- 初期分割登録の場合,CREATE INDEX実行後,インデクス作成開始ユティリティを実行して,すべての文書がインデクスへ登録された時点で,インデクス作成方法が初期分割登録から即時登録に切り替わります。以降,文書の登録または更新と同時にインデクスへの登録が行われるようになるため,文書登録または更新時にインデクスへ登録する時間が掛かるようになります。
- 「phnmodidx(インデクス情報変更ユティリティ)」で移行したインデクスに対して初期化をした場合,変更した情報は無効になります。
- インデクス分割遅延登録用領域を使い切った場合は,遅延しているすべての文書をインデクスに反映するか,または「phnmodidx(インデクス情報変更ユティリティ)」を使用してインデクス分割遅延登録用領域を拡張してください。
- 分割遅延登録・更新系SQL同時実行をしない運用へ移行する場合,インデクスを削除してください。そのあと,運用に合わせてインデクスを再定義してください。
UCS2の範囲を超えるUCS4の範囲の文字を使用するには,UCS4用の定義が必要になります。また,UCS4インデクスは自動拡張機能を適用します。
UCS2の範囲を超えるUCS4の範囲の文字を使用する場合は,プラグインオプションに次の定義の追加が必要です。
PLUGIN 'INDEX_UCS4'
- UCS4用のインデクス定義の追加をしていない状態でUCS2の範囲を超える文字を登録した場合は,該当文字は無視されます。
- UCS4用のインデクス定義の追加をしていない状態でUCS2の範囲を超える文字を検索した場合は,エラーとなります。
- HiRDBの文字コード種別がutf-8以外の時にINDEX_UCS4を指定した場合は,インデクス定義はエラーとなります。
- 以下のプラグインオプションはINDEX_UCS4と同時に指定することができません。
- 差分インデクス(SUB_INDEX)
- 英文インデクス(ENGLISH,ENGLISH_STANDARD)
UCS2とUCS4はインデクスの構成が異なるため,UCS2用のインデクスをそのままUCS4用のインデクスとして使用することはできません。
UCS2用のインデクスをUCS4用として使用する場合は,「phnmodidx(インデクス情報変更ユティリティ)」で変更項目に"INDEX_TYPE=UCS4"を指定して移行してください。
移行する前のインデクスに次の機能が指定されている場合は,移行コマンド実行時にエラーとなります。
- 差分インデクス(SUB_INDEX)
- 英文インデクス(ENGLISH,ENGLISH_STANDARD)
- データベースの文字コード種別がutf-8ではないデータベースの環境
英文に対する検索を行なう場合は,単語単位での検索を行なう英文インデクス定義をしてください。
英文インデクスの定義は次の方法があります。運用に応じてご使用ください。
- 注意事項
- 英文インデクス定義は,次のインデクス定義と併用することはできません。
- 概念検索機能(CONCEPT_ON)
- 全角文字半角文字統一機能(SAMEWIDE=ON)
- 拗音統一検索(SAMEY=ON)
- インデクス作成ルール追加機能(INDEX_ALL)
- インデクス作成ルール追加機能(INDEX_MEDIUM)
- 文字単位インデクス作成機能(INDEX_GRAM1)
英文検索機能で使用するインデクスの定義ファイルについて説明します。
- インデクスデリミタファイル
- 機能
- 英文検索機能で使用するインデクスを作成する場合に必要な単語の区切り(デリミタ)を定義します。定義したインデクスデリミタに従って単語を抽出し,英文検索機能で使用するインデクスを作成します。抽出した単語が64文字(バイト)を超える場合は,65文字(バイト)目以降を無視して,64文字(バイト)目までの文字でインデクスを作成します。なお,インデクスデリミタは検索対象にできません。
- 指定形式
- CREATE INDEX文のプラグインオプションにインデクスデリミタファイルのファイル名を指定します。
INDEXdlmt=ファイル名
- インデクスデリミタファイルは,CREATE INDEXを実行する前に,Text Search Plug-inをセットアップしたすべてのサーバマシンに対して,同一の内容で次に示すディレクトリに事前に作成しておく必要があります。
$PDDIR/plugin/_phngram/idx_def
- また,サンプルファイル($PDDIR/plugin/_phngram/sample/pdplgdlmt)を提供しています。
- 記述形式
- "インデクスデリミタ" [,"インデクスデリミタ"]・・・・・・
- インデクスデリミタは,"(半角ダブルクォーテーション)で囲んで指定します。
- インデクスデリミタに使用できる文字は,'0x21'〜'0x7E'の範囲の1バイト文字コードです。
- '0x20'(半角スペース),'0x09'(タブ)は,無条件にインデクスデリミタとなります。
- 複数指定する場合は,"(半角ダブルクォーテーション)で囲んだインデクスデリミタを,(半角コンマ)で区切って指定します。
- "(半角ダブルクォーテーション)をインデクスデリミタにする場合は,""と二つ続けて定義し,それを"(半角ダブルクォーテーション)で囲んで指定します。
- 注意事項
- インデクスデリミタファイルは省略できます。
- 省略した場合は,'0x20'(半角スペース),'0x09'(タブ),記号「'0x21'〜'0x2F','0x3A'〜'0x40','0x5B'〜'0x60','0x7B'〜'0x7E'」がインデクスデリミタとなります。
- 不要語,または削除コードに指定した文字コードをインデクスデリミタに指定しないでください。指定した場合は,インデクスデリミタ,削除コード,不要語,の優先順位で処理します。
- 不要語ファイル
- 機能
- 英文検索機能に使用するインデクスを作成する場合,検索に不要な単語を定義します。不要語については,検索用インデクスを作成しません。
- 指定形式
- CREATE INDEX文のプラグインオプションに不要語ファイルのファイル名を指定します。
NOindex=ファイル名
- 不要語ファイルは,CREATE INDEXを実行する前に,Text Search Plug-inをセットアップしたすべてのサーバマシンに対して,同一の内容で次のディレクトリに事前に作成しておく必要があります。
$PDDIR/plugin/_phngram/idx_def
- 記述形式
- "不要語" [,"不要語"]・・・・・・
- 不要語は,"(半角ダブルクォーテーション)で囲んで指定します。
- 不要語に使用できる文字は,'0x21'〜'0x7E'の範囲1バイトの文字コードです。
- 複数指定する場合は,"(半角ダブルクォーテーション)で囲んだ不要語を,(半角コンマ)で区切って指定します。不要語は100個まで指定できます。
- "(半角ダブルクォーテーション)を不要語にする場合は,""と二つ続けて定義し,それを"(半角ダブルクォーテーション)で囲んで指定します。
- 不要語は64文字(バイト)まで指定できます。64文字(バイト)を超えて指定した場合,65文字(バイト)目以降を無視して,64文字(バイト)目までの文字列を不要語とします。
- 注意事項
- 不要語ファイルは省略できます。省略した場合は,不要語なしでインデクスを作成します。
- インデクスデリミタ,または削除コードに指定した文字コードを不要語に指定しないようにしてください。指定した場合は,インデクスデリミタ,削除コード,不要語の優先順位で処理します。
- 検索条件で指定した検索タームに不要語を含む場合は,不要語を任意の1単語とみなして検索します。なお,検索条件に不要語だけを指定した場合は,入力条件エラーとなります。
- 削除コードファイル
- 機能
- 英文検索機能で使用するインデクスを作成する場合に,削除するコードを定義します。定義した削除コードはないものとして単語を抽出し,英文検索機能で使用するインデクスを作成します。
- 単語に-(ハイフン)のような不要なコードがある場合,削除してその前後を詰めて扱い,必要なコードだけでインデクスを作成できます。
- 指定形式
- CREATE INDEX文のプラグインオプションに削除コードファイルのファイル名を指定します。
DELcode=ファイル名
- 削除コードファイルは,CREATE INDEXを実行する前に,Text Search Plug-inをセットアップしたすべてのサーバマシンに対して,同じ内容で次のディレクトリに事前に作成しておく必要があります。
$PDDIR/plugin/_phngram/idx_def
- 記述形式
- "削除コード" [,"削除コード"]・・・・・・・
- 削除コードは,"(半角ダブルクォーテーション)で囲んで指定します。
- 削除コードに使用できる文字は,'0x21'〜'0x7E'の範囲の1バイト文字コードです。
- 複数指定する場合は,"(半角ダブルクォーテーション)で囲んだ削除コードを,(半角コンマ)で区切って指定します。
- "(半角ダブルクォーテーション)を削除コードにする場合は,""と二つ続けて定義し,それを"(半角ダブルクォーテーション)で囲んで指定します。
- 注意事項
- 削除コードファイルは省略できます。省略した場合は,削除コードなしでインデクスを作成します。
- インデクスデリミタ,または不要語に指定した文字コードを削除コードに指定しないようにしてください。指定した場合は,インデクスデリミタ,削除コード,不要語,の優先順位で処理します。
All Rights Reserved. Copyright (C) 2007, 2009, Hitachi, Ltd.