APPENDIX

Luxorに関連する設定ファイル一覧

本章にて、Luxorの運用と関連する設定ファイルを説明します。次の図は、INSUITE® AP・管理サーバとSm@rtDB APサーバがLuxorサーバ間との相互リクエストのイメージ図となります。

Luxorサーバと各APサーバ間のリクエスト

Luxorサーバと各APサーバ間のリクエスト

図内の各種リクエストの宛先、接続許可などを設定するためのパラメータは、次の関連設定ファイル一覧より参照してください。

関連設定ファイル一覧

下記はファイル一覧となります。詳細の設定については、「接続関連の設定」より参照してください。

  • Luxorの設定
    setup.conf
    luxor.xml
    zoo.cfg(Luxorサーバ複数台構成時必須)

  • INSUITE®の設定
    domain.dat
    conf_search_luxor.dat
    hibiki.dat(※ 次を参照)

  • Sm@rtDBの設定
    hibiki.xml
    default.xml
    full_text_search.xml

設定ファイル:/home/DreamArts/data/system/hibiki.datについて

INSUITE®の統合検索でSm@rtDBも対象にする設定ファイルです。

画面表示

INSUITE®の統合検索画面

前提条件

表示するには、以下の前提条件を満たす必要があります。

  1. INSUITE®のバージョンがVer.3.3.0以上、Sm@rtDBのバージョンがVer.3.2.0以上であること
  2. INSUITE®とSm@rtDBで使用するLuxorサーバが同じであること
  3. LuxorのバージョンがVer.1.3以上であること

また、前提条件を満たした上で、以下の設定を行なってください。

設定例

[smartdb]
app_id=10200
luxor_webapi_url=http://doc.dreamarts.co.jp/hibiki/BRDLuxor.do
luxor_disable_apps=imp|process

パラメータと説明

パラメータ 初期値 詳細
app_id 10200 固定値。変更しないでください。
luxor_webapi_url (なし) INSUITE®の統合検索画面にSm@rtDBの対象機能を表示するための設定。
Sm@rtDBのWebAPIを使用するためのURL(Sm@rtDB APサーバ)を指定。
設定がない場合は、INSUITE®の統合検索でSm@rtDBの対象機能は表示されない。
[Sm@rtDB APサーバ名]/hibiki/BRDLuxor.do
luxor_disable_apps (なし) INSUITE®の統合検索画面に表示しないSm@rtDBの"対象機能"を指定。
IMPやプロセスエンジンを使用していない場合は、設定が必要。複数指定する場合は、"|"(パイプ)で区切る。
luxor_webapi_urlが指定されている場合のみ有効。
キャビネット/バインダ:binder
文書:document
IMP:imp
プロセス:process

設定ファイル:/etc/hibiki/full_text_search.xmlについて

全文検索インデックスの作成・削除、Luxor高速モード・標準モードの切り替え、及びLuxorサーバとSm@rtDBツール間の接続情報をファイルfull_text_search.xmlに記述します。詳細については、『Sm@rtDB_運用ガイド』の「Luxorに関する設定(full_text_search.xml)」を参照してください。

検索エンジンの切替え

※下記内容は、古い検索エンジン(NamazuかLucene)をご利用のお客様向けの資料となります。
『INSUITE_Luxor導入ガイド』と『Sm@rtDB_Luxor導入ガイド』から内容をインストレーションガイドに移行しています。

LuceneからLuxorへの切り替える場合の参照資料(LuceneからLuxorへ切替の顧客向け)

Luxorの特徴

Luxorは従来のSm@rtDBの全文検索に比べ、以下を実現しています。

  • 大規模システム対応
    全文検索用のサーバを分離することが可能となり、インデックスのサイズが大きい場合にも対応可能になりました。
  • 性能改善
    サーバを分離することが可能になることに伴い、平均応答速度も改善されています。
  • INSUITE®との統合検索を実現
    INSUITE®の統合検索から、INSUITE®とSm@rtDBを横断して全文検索をすることができます。
    (使用する場合はINSUITE®とSm@rtDBで同一Luxorサーバを使用し、INSUITE® Ver.3.3.0以降かつLuxor Ver.1.3.0以降の環境が必要です。)
  • 検索範囲の拡大
    従来の全文検索エンジンでは対象外であったIMPのアプリ、プロセスエンジンの見出し・コメント、文書のコメントに入力された値を検索することが可能になりました。
  • 検索のユーザーインターフェースの改善
    一致箇所をハイライトする等、検索結果がよりわかりやすく、見やすくなりました。
  • 運用に合わせた設定
    権限チェックを厳密に行う「標準モード」と性能を優先させる「高速モード」から選択することができます。
  • 文書単位での検索
    従来は部品ごとに一致するキーワードがあるかを検索していましたが、文書として検索するようになりました。
  • 管理画面の提供
    管理者にはインデックスの状況を閲覧できる管理画面が用意されています。
  • コアの仕組み
    Luxorにはコアという仕組みがあります。コアはインデックスを機能毎に分けて管理するもので、検索実行時に対象範囲に絞って検索することができ、応答速度の改善に役立ちます。コアはインストール時に指定されていますが、任意で追加することも可能です。

従来の全文検索エンジンとの性能比較

従来の全文検索エンジンLuceneとLuxorの全文検索実行時の平均応答時間は以下のとおりです。

  • (参考)LuceneとLuxorの比較
対象機能 Lucene Luxor 差異
文書一覧で全文検索実行時(バインダ内の文書が対象) 2,922(ms) 1,899(ms) 1.5倍改善
バインダ一覧で文書を対象に検索実行時(複数バインダの文書が対象) 15,773(ms) 3,342(ms) 4.7倍改善
  • 測定条件:

    文書数:70,000件 / ヒット件数:801~1000件 / 並列ユーザ:30 / リスト表示件数:20 / メモリ:12G / CPU 2.40 GHz×4 Luxorの場合はAPサーバとLuxorサーバを分け、高速化モードで測定。

  • Luxorを使用する場合の性能上の留意点

Sm@rtDB Ver.3.2.0にてバインダ一覧で文書を対象に検索を実行した場合、Luceneと比較してSm@rtDB DBサーバのCPU使用率およびSm@rtDB APサーバと同DBサーバ間のネットワークトラフィック量が増えることが確認されております。
詳しくは、『Luxor_Ver.1.3.0_サイジング基礎情報』を参照してください。

従来の全文検索と異なる点

従来の全文検索と異なる点について記載します。

  • インデックス
    従来の全文検索では部品単位にインデックスを作成していましたが、Luxorでは文書単位にインデックスを作成します。

  • 検索結果のソート順
    従来の全文検索ではヒットした部品のスコアでソートしていましたが、Luxorでは文書単位のスコアまたは最終更新日時を選択できます。(画面での並び替えが可能です。)

  • 部品単位の検索から文書単位の検索に変更
    従来の全文検索では複数キーワードが指定され、「すべての語を含む」が指定されていた場合、1部品にすべてのキーワードの指定がないと検索結果に表示されませんでしたが、文書内にすべてのキワードが含まれれば、検索結果として表示されるようになりました。

  • 画面の追加・変更
    以下の箇所について画面の変更があります。

箇所 更新詳細 説明
INSUITE®の統合検索 変更 INSUITE®もLuxorを使っており、INSUITE® Ver.3.3.0以降のバージョンを使用すれば、設定することで統合検索画面の対象項目に「Sm@rtDB」を表示して指定することができる。
Sm@rtDBの文字列検索 追加 IMP・バインダ・プロセスのそれぞれのサイドメニューに"文字列検索"が追加され、サイドメニューから文字列検索を行う画面の遷移が可能。
Sm@rtDBのバインダ間検索 変更 バインダ一覧の"検索"タブから行うバインダ間の検索は、内部の仕組みと共に、画面デザインが大きく変更、詳細な条件指定が可能になったこと、また検索結果の表示も改善されている。
Sm@rtDBのバインダ内検索 なし 文書一覧で行う"全文検索"は、内部の仕組みは変更になりましたが、画面の変更はなし。

※画面詳細説明に関しては、Sm@rtDBの『リファレンスガイド_検索編』に参照してください。

  • 検索対象の拡大
    従来は検索対象ではなかった項目が全文検索の検索対象として追加されました。IMPのアプリ、開始済みのプロセス、文書のコメント等が検索できるようになりました。詳細はLuxor運用ガイドの「検索対象の項目一覧」より参照してください。

  • 高速モードと標準モード
    バインダの文書に関しては、運用に合わせ、2つのモードが用意されています。検索結果の表示には、ログインユーザが表示する結果に閲覧権限があるかどうかの権限チェックをする必要がありますが、厳密なチェックを行うほど処理に時間がかかります。
    Luxorでは、検索結果取得時にレイアウトブロックの権限チェックまで厳密に行う「標準モード」と、検索結果取得時は文書の権限までしかチェックしないが、結果表示時にレイアウトブロック権限をチェックする「高速モード」の2つのモードから選択することができます。
    従来は、厳密にチェックする「標準モード」のみでした。「高速モード」を使用することにより、レスポンスを優先した結果を得ることができます。初期値は「高速モード」ですので、従来どおり厳密な権限チェックを行う場合は、「標準モード」を設定する必要があります。「標準モード」は、対象とするバインダID(キャビネットID)を指定します。設定方法については、『Sm@rtDB_運用ガイド』の「Luxorに関する設定(full_text_search.xml)」を参照してください。

(参考)高速モードと標準モードの性能値

対象文書数 ヒット件数 並列ユーザ数 リスト表示件数 高速モード 標準モード
70,000 801~1000 80 20 8,625 (ms) 8,734 (ms)
210,000 801~1000 80 20 10,058 (ms) 10,867 (ms)

※ メモリ12G、CPU 2.4GHz×4 の環境で実施

高速モードと標準モードの動作例:
文書Aにレイアウトブロックがあり、文書内に文字列入力ボックスがあり、"DreamArts"という文字が入力されている。ユーザ太郎は文書Aを参照する権限はあるが、キーワードを含む部品のブロックを参照する権限がない。
ユーザ太郎が"DreamArts"で検索した場合、高速モードの場合:文書Aが検索結果に表示される。結果詳細のハイライトに"DreamArts"は表示しません。標準モードの場合:文書Aが検索結果に表示されません。

全文検索インデックスの作成

従来の全文検索インデックスはSm@rtDB APサーバに作成されています。Luxorのインデックスは、Luxorサーバに作成されます。既存データがある場合は、Luxorを使用するために、新規にLuxorの全文検索インデックスを作成する必要があります。インデックスの作成は、Sm@rtDB Toolのコマンドを使って行います。

従来の全文検索インデックスとLuxorのインデックスは異なるので、既存データのLuxorサーバのインデックスを作成し、準備が完了したら、使用する全文検索エンジンの切替えを行なってください。使用する全文検索エンジンの設定はdefault.xmlで行います。
※Luxorインデックス作成に既存のLuceneのインデックスは使用しません。

Luxorに関わる設定ファイルfull_text_search.xml
全文検索インデックス作成および削除のための設定ファイルを準備します。Luxorサーバへの接続情報とツールのオプションを設定ファイルに記述します。接続情報は必ず設定してください。
※Sm@rtDB Toolのインストールと設定の詳細に関しては、『Sm@rtDB_運用ガイド』の記載より参照してください。

Sm@rtDB Toolのコマンド実行
以下のコマンドが用意されています。Sm@rtDB Toolを起動して実行してください。

①Sm@rtDB Toolコマンド

コマンド 詳細
reindex 指定されたオプションを対象に、インデックスを削除し、その後、作成する
delindex 指定されたオプションを対象に、インデックスを削除する
reindex continue 何らかの原因によりインデックス作成が停止した場合に、中断した処理から再開する
deldiffindex 指定されたオプションを対象に、ゴミインデックスを削除する

②Sm@rtDB Toolコマンドオプション

コマンドオプション 詳細
all 全ての対象機能(バインダ、文書、IMP、プロセス)を対象とする
binder all 全バインダのみ対象とする
document all 全文書のみ対象とする
imp all 全IMPのみ対象とする
process all 全プロセスのみ対象とする
binder <ids> 指定したバインダIDのみ対象とする(複数、範囲指定可)
document binder:<binder-id> document:<ids> 指定したバインダIDの指定した文書番号の文書のみ対象とする(複数、範囲指定可)
<ids>の指定方法:複数IDの場合は以下のいずれかで指定する
カンマ区切りで指定
例:10010,10050,10080
-(ハイフン)で範囲指定
例:10010-10080
imp <ids> 指定したアプリIDのみ対象とする(複数、範囲指定可)
process <ids> 指定したプロセスIDのみ対象とする(複数、範囲指定可)

③Sm@rtDB Tool実行可能なコマンドとオプションの組み合わせ

コマンド オプション 実行例
インデックス作成(削除後、作成)reindex all reindex all
binder all reindex binder all
binder <ids> reindex binder 10010,10050,10080
document all reindex document all
document binder:<binder-id> document:<ids> reindex document binder:10010 document:10-100
imp all reindex imp all
imp <ids> reindex imp 100111,100113
process all reindex process all
process <ids> reindex process 5360,3563
インデックス削除コマンドdelindex all delindex all
binder all delindex binder all
document all delindex document all
imp all delindex imp all
process all delindex process all
インデックス作成再開コマンドreindex continue - reindex continue
ゴミインデックス削除コマンドdeldiffindex binder <ids> reindex binder 10010,10050,10080
document binder:<binder-id> document:<ids> reindex document binder:10010 document:10-100
imp <ids> reindex imp 100111,100113
process <ids> reindex process 5360,3563

全文検索の切替え
Luxorサーバの準備が完了したら、使用する全文検索エンジンをLuxorに切替えます。「APサーバからLuxorサーバへの認証情報の設定(default.xml)」にて設定済みの場合は、Sm@rtDB APサーバのtomcatを再起動します。

service tomcat stop
service tomcat start

Luceneのインデックス削除

従来の全文検索エンジンで作成したインデックスの削除方法について説明します。Luxorに切替え運用開始後も、既存のLuceneのインデックスは残ります。既存のLuceneのインデックスが不要な場合は、以下のフォルダに格納されているインデックスファイルを手動で削除してください。

  • Luceneのインデックスファイル
機能 ディレクトリ
キャビネット var/hibiki/data/cabinet/index
文書 var/hibiki/data/brd/index
プロセス var/hibiki/data/process/index
  • Luceneに関する設定のLuxor側の対応
用途 Luceneの設定 Luxorの設定
検索結果の上限設定 default-values.system.lucene.limit-results Luxorサーバ:Setup.confの設定値maxSearchRow
検索結果の上限設定 default-values.brd.documentlist.lucene.limit-results Luxorサーバ:Setup.confの設定値maxSearchRow
検索結果の最大件数 default-values.cab.filter.max-filtered Luxorサーバ:Setup.confの設定値maxSearchRow
Luceneの複合ファイルフォーマット default-values.system.lucene.compoundFileFormat 該当なし
Luceneのインデックス更新設定 default-values.system.lucene.index-watcher.lock-timeout 該当なし
Luceneのインデックス更新設定 default-values.system.lucene.index-watcher.fail-over 該当なし
条件オプションの設定 default-values.brd.binder-list.search-box.fullTextSearch-method Sm@rtDB APサーバ:default.xmlの設定値default-values.system.unifiedSearch.fullTextSearch-method
条件オプションの設定 default-values.brd.documentlist.search-box.fullTextSearch-method Sm@rtDB APサーバ:default.xmlの設定値default-values.brd.documentlist.serachbox.fullTextSearch-method
ロックファイル存在ログの設定 default-values.system.lucene.index-watcher.optimize-lock.error-after-minutes 該当なし
同時アクセス数のAPサーバ毎の上限設定 default-values.system.lucene.max-access Luxorサーバ:Setup.confの設定値maxAccess
検索結果のうち権限チェックをする上限値 該当なし Luxorサーバ:Setup.confの設定値permitRows

制限事項

Sm@rtDBでLuxorを使用する上での制限事項について記載します。

  • インデックス化対象の添付ファイルの最大サイズ
    インデックス化する対象の添付ファイルのサイズは250MBまでとなります。250MB以上のファイルはインデックス作成処理がスキップされます。 利用によって、サイズを調整することも可能です。調整方法に関しては、『Sm@rtDB_運用ガイド』より参照してください。

  • インデックス化対象の添付ファイルの種類

Sm@rtDBでは、テキスト抽出ソフトウェア「デ変研TFライブラリ」Java版(JavaCat) を利用し、デ変研TFライブラリのバージョンアップに伴う製品用ソフトウェアの更新は常に行っていますので、インデックス対象の種類は、下記デ変研の公式サイトより確認して下さい。

http://www.dehenken.co.jp/products/products01-0102.html

サイトリンク:

NamazuからLuxorへの切り替える場合の参照資料(NamazuからLuxorへ切替の顧客向け)

INSUITE®ではVer.3.1.0以上のバージョンにて検索エンジンとして「Luxor」を利用することができます。Luxorを利用する際は、検索エンジン切替えのために主に次のような作業が必要となります。

(1) INSUITE®の設定変更
検索エンジンをNamazuからLuxorへ変更するための設定変更が必要です。設定変更完了後はINSUITE®は「Luxorモード」となり、検索エンジンとしてLuxorが使われます。

(2) Luxorサーバのインストール
全文検索を行うLuxorサーバをインストールします。Luxor用の専用サーバにすることもできますし、INSUITE® 管理サーバ、NFSサーバ、DBサーバ上に構築することも可能です。

(3) Luxor用インデックス作成
INSUITE®をVer.3.1.0より前のバージョンからアップグレードしてご利用される場合は、全文検索で検索対象となるインデックスをLuxorサーバ上に作成する必要があります。
全文検索が可能な全機能のタイトル、内容、添付ファイルなどのデータをLuxorサーバ上にインデックスとして作成するため、データ量が多い場合は完了までに時間を要します。INSUITE®をVer.3.1.0から初めてご利用される場合は、Luxor用インデックス作成は必要ありません。(ただし、オンラインガイドのLuxor用インデックス作成は必要です。)

Luxor用インデックス作成には以下の2種類のコマンドを使用します。

・コンテンツデータのLuxor用インデックス作成コマンド
・オンラインガイドのLuxor用インデックス作成コマンド

Luxorを導入する場合は、以下のINSUITE®のご利用状況に応じて参照してください。

INSUITE®をVer.3.1.0から初めてのご利用
- 『INSUITE®をVer.3.1.0から初めて利用される場合』の記載を参照してください。

INSUITE®を従来からご利用で、Ver.3.1.0 へアップグレードしてのご利用

INSUITE®をVer.3.1.0から初めて利用される場合

INSUITE®をVer.3.1.0からご利用になる場合は、以下の流れでインストール作業を行います。具体的な手順については次項からの手順を参照してください。

1.INSUITE®のインストール
まず、INSUITE®をインストールしてください。

2.INSUITE®のLuxorサーバ設定を行う
INSUITE®のAP、管理サーバの設定にてLuxorサーバへの接続情報を設定します。「接続関連の設定」にて、「INSUITE® APサーバの設定」の記載より参照可能です。

3.INSUITE®側の検索エンジンを切替える

INSUITE®のAP、管理サーバの設定にて検索エンジンをLuxorに切り替えます。

      # vi /home/DreamArts/data/custom/conf_search_luxor.dat

      --------------
      engine=luxor
      --------------

INSUITE®の全AP、管理サーバのhttpdを再起動します。

      # su root
      # /etc/init.d/httpd stop
      # /etc/init.d/httpd start

これ以降、INSUITE®は"Luxorモード"として動作します。

4.Luxorサーバのインストール
インストールの手順」の記載を参照してください。

5.Luxor用インデックスの作成

(1)オンラインガイドのLuxor用インデックスを作成する。INSUITE®管理サーバにて以下のコマンドを実行する。 ※コマンドの利用詳細については、Luxorインストレーションガイドの「インデックスの再作成」の記載を参照してください。

  $ cd /home/DreamArts/bin
  $ ./guide_index.pl

(2)インデックス作成が完了したことを確認する。 「インデックス作成が完了したことを確認」の記載を参照してください。

(3)Luxorへの移行完了を確認する。 INSUITE®の一般画面にログインして、「統合検索」メニューをクリックしてください。テーブル部分がシルバー調の統合検索画面が表示されれば、切替えは完了です。(Namazuモードの場合は、テーブル部分が黄色調の統合検索画面となります)

INSUITE®の運用を一時停止してLuxorへ移行する場合

INSUITE®をVer.3.1.0よりも前からお使いの場合で、Ver.3.1.0以降は検索エンジンとしてLuxorをご利用になる場合は、以下の流れでLuxorへの移行を行います。Luxor用インデックスを作成している間は、INSUITE®をメンテナンスモードに切替えて、行います。

1. メンテナンスモードへの切替
INSUITE®管理画面などで、"メンテナンスモード"へ切替えを行い、INSUITE®へ一般ユーザがログインできない状態にします。

2. INSUITE®側のLuxorサーバ設定を行う
INSUITE®のAP、管理サーバの設定にてLuxorサーバへの接続情報を設定します。「接続関連の設定」の「INSUITE® APサーバの設定」記載より参照可能です。

3. INSUITE®側の検索エンジンを切替える
INSUITE® AP、管理サーバの設定にて検索エンジンをLuxorに切り替えます。変更方法は、『INSUITE®をVer.3.1.0から初めて利用される場合』に記載した「3.INSUITE®側の検索エンジンを切替える」より参照してください。
これ以降、INSUITE®は"Luxorモード"として動作します。一般画面からスケジュール、ライブラリなどの登録・更新を行った場合は、直接Luxorサーバにインデックスが登録されます。

4. Luxorサーバをインストールする
インストールの手順」の記載を参照してください。

5. Luxor用インデックスを作成する

(1)コンテンツデータのLuxor用インデックスを作成する INSUITE®管理サーバにて以下のコマンドを実行します。-funcオプションに全ての機能を列挙して一度に作成することができます。ただし、データ量が多い場合は、数機能に分割して実行することをお勧めします。

        # su iseadmin

        $ cd /home/DreamArts/cmd
        $./remake_luxor_index -func=board,schedule,fa_schedule,reminder,report,todo,smart,library,library-folder,share,wflow,ns_board,ml

        データ件数,     インデックス,     データ容量
        スケジュール:     30000:       500.01(Mbyte)
        ライブラリ:       20000:       600.02(Mbyte)
        ----------
         中略。全機能分のインデックス数が表示されます。
        ----------
            合計:     105000:   41100.03(Mbyte)
       実行してもよろしいですか?[Y/n]

       コマンドを実行すると、インデックスデータ数を表示し、"Y" を選択すると、インデックス作成が開始されます。

※スケジュール、施設・設備など過去のインデックスが不要な場合は移行対象から除外することができます。-funcオプションで指定しなかった機能の過去のインデックスは作成されませんが、Luxor移行後に新規に登録、または更新されたデータはインデックスが生成され全文検索することができます。
※インデックス作成の速度は、大まかな目安として、ライブラリ・ファイル共有は250~300/分、それ以外は1500~2000/分です。

(2)オンラインガイドのLuxor用インデックスを作成する
INSUITE® 管理サーバにて以下のコマンドを実行します。

         $ cd /home/DreamArts/bin
         $ ./guide_index.pl

(3)インデックス作成が完了したことを確認する

6. 通常モードへの切替
管理画面などで、"通常運用モード"へ切替えを行い、INSUITE®へ一般ユーザがログインできる状態に戻します。Luxorモードへの切替えが完了したことを確認してください。また、スケジュールデータなどを登録し、登録したデータが統合検索画面で正常に検索できることを確認してください。

以上で、Luxorへの移行は完了です。

INSUITE®を運用しながらLuxorへ移行する場合

INSUITE®上のデータ量が多い場合、Luxor用インデックス作成に時間を要する場合があります。INSUITE®のご利用を長時間停止できない環境の場合、夜間などサーバの処理が少ない時間に複数回に分けてインデックスを作成する必要があります。コマンドremake_luxor_indexでは作成するインデックスの最終更新日を元に、期間を指定して該当期間にマッチするインデックスだけ作成することが可能です。

インデックス作成処理を行っている時間帯は、DBサーバ、NFSサーバ、Luxorサーバの負荷が高まりますので、処理中はINSUITE®をメンテナンスモードにして一般ユーザの利用を制限することをお勧めします。

INSUITE®を運用しながらLuxorへ移行する場合の流れ

1. 前提となる条件を決める
    『一日当たりのLuxor用インデックス作成作業に当てる時間帯を決める
作業が予定通り完了するように、この時間帯はINSUITE®をメンテナンスモードに切替えて運用し、一般ユーザの利用を制限する事をお勧めしますが、通常モードでの作業も可能です。また、管理サーバにLuxorサーバをインストールしている場合は、CSV連携やNamazuインデックスの更新などのバッチ処理が実行されない時間帯を選ぶことをお勧めします。
これらのバッチ処理とインデックス作成処理が重複した場合、予定時間内に処理が完了しない恐れがあります。

インデックスデータ件数を計測する
作成が必要なインデックスデータの件数を計測します。コマンドremake_luxor_indexにて行います。

単位時間当りの処理件数を計測する
大量のインデックスデータを分割して、作成するために単位時間当りの処理件数を計測します。

2. 実施計画を立案する
上記手順で計測した値より、いつ、どの機能のインデックスをどれぐらい作成するかを見積、計画します。別途弊社から提供の『Luxor_Ver.1.3.0_サイジング基礎情報』に必要な値を記入し、実施計画を立案します。

3. 作業を実施する
実施計画を元に、インデックス作成作業を実施します。その後、インデックス作成作業期間中に登録・更新されたデータはまだインデックス作成ができてないため、これらを一度にインデックス作成します。
上記の作業を開始する前には、データが新たに登録・更新されないように、メンテナンスモードにて行います。インデックス作成完了後Luxorモードへ切り替えます。上記でLuxor移行作業は完了しました。

メンテナンスモードから一般モードに戻します。

INSUITE®を運用しながらLuxorへ移行する場合の手順例

この章ではモデルケースを想定し、インデックス作成作業に当てられる時間帯や作成期間、インデックス量などに具体的な値を用いて手順例を説明します。 実際の各パラメータはそれぞれのご利用環境の値を当てはめて計画を作成してください。

1. 前提条件の決定とLuxorサーバの準備

(1) 一日当たりのLuxor用インデックス作成に当てる時間帯を決める

      平日(月曜~金曜)は20:00-23:00の3時間をインデックス作成作業に当てる
      休日(土曜~日曜)は07:00-19:00の10時間をインデックス作成作業に当てる
      ※時間帯の値は一例です。

(2) Luxorサーバを準備する INSUITE®の運用を一時停止して移行する手順を参照し、下記手順を準備してください。 ※ "INSUITE®側の検索エンジンを切替える"はこの段階では実施しませんので、注意してください。

        INSUITE®側のLuxorサーバ設定を行う
        Luxorサーバを構築する
        オンラインガイドのLuxor用インデックスを作成する

     これらの作業により、移行に必要な処理時間を見積るための準備ができました。

(3) インデックスデータ件数を計測する INSUITE®管理サーバにてLuxorインデックス作成コマンドを使って、作成が必要なインデックスデータ数および、 現在のインデックスデータ容量を計測します。計測すると以下のような結果が得られます。

            # su iseadmin        
            $ cd /home/DreamArts/cmd
            $ ./remake_luxor_index -info -luxor_url=http://10.1.1.1:10080/solr -func=board,schedule,fa_schedule,reminder,report,todo,smart,library,library-folder,share,wflow,ns_board,ml

             データ件数,     インデックス,   データ容量
              連絡掲示板 :   6660:      3.17(Mbyte)
              スケジュール :  2706000:    1290.32(Mbyte)
              施設設備予約  :  872160:    415.87(Mbyte)
              メモ    :        16500:    7.86(Mbyte)
              レポート    :      19680:   9.38(Mbyte)
              タスクリスト :  22140:           10.55(Mbyte)
              スマートページ : 45000:           21.45(Mbyte)
              ライブラリ  :  120000:           57.22(Mbyte)
              ライブラリのフォルダ :  8500:       0(Mbyte)
              ファイル共有 :       0:        0.00(Mbyte)
              ワークフロー:     7215:        3.44(Mbyte)
              連絡・通知:       1665:    0(Mbyte)
              メーリングリスト:  38850:      18.52(Mbyte)
                     合計 :   3864370:    1842.67(Mbyte)

    ※この時点では、INSUITE®はNamazuモードで動作していますので、必ず "-luxor_url"オプションでLuxorサーバを指定してください。

(4) 単位時間当たりの処理件数を計測する remake_luxor_indexコマンドの-infoオプションを使い、スケジュールデータにて単位時間当たりの処理件数を計測します。-from,-to オプションで期間を調整し、インデックスデータ件数が2000~3000件程度になる期間を探します。

     $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -info -func=schedule -from=2009/04/01 -to=2009/04/03

             データ件数,  インデックス,  データ容量
            スケジュール     :  2100:    2.5(Mbyte)
                    合計     :  2100:    2.5(Mbyte)

   ※from, toオプションの値は一例です。
   ※インデックス作成の速度は、大まかな目安としてライブラリ・ファイル共有は250~300/分、
     それ以外は1500~2000/分です。実際に移行計画を検討する段階では、実環境での実測を推奨します。

   次に、実際にインデックスの作成を実行します。この作業は単位時間当りの処理件数を計測するための調査です。

     $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -func=schedule -from=2009/04/01 -to=2009/04/03

              データ件数, インデックス,   データ容量
             スケジュール     :  2100:    2.5(Mbyte)
                    合計     :  2100:    2.5(Mbyte)
    実行してもよろしいですか?[Y/n]

"Y" を選択し、インデックス作成を行います。コマンドが終了するまでの時間を計測し、件数と処理時間から"1分当りの処理件数"を計算します。
 単位時間当たりの処理件数は機能によって異なりますが、特にライブラリ、ファイル共有機能は履歴データを持つため、
 他の機能より単位時間当りの処理件数は大幅に少なくなる傾向があります。

 ここでは、ライブラリ、スケジュールの2つの機能について単位時間当たりの処理件数を計測し、ライブラリ、ファイル共有については
 ライブラリで得られた処理件数にて計算を行います。その他の機能については、スケジュールで得られた処理件数にて計算を行います。

 ※より正確な処理時間を見積るには、この手順を機能毎に実施し、機能毎の単位時当りの処理件数を計測してください。

2. 実施計画を立案する

(1) インデックス作成時間を見積る
1. 前提条件の決定とLuxorサーバの準備」で得られた値を『Luxor_Ver.1.3.0_サイジング基礎情報』の「インデックス見積」シートに転記します。機能毎に必要な処理時間、インデックス容量が自動的に計算されます。

(2) 機能毎にインデックス作成作業を実施する日を決める
シートより自動的に計算された結果から、インデックス作成作業を行う日を機能毎に決定します。
連絡掲示板、メモ、レポート、タスクリスト、スマートページ、ライブラリのフォルダ、ワークフロー、連絡・通知、メーリングリストは それぞれの件数が少なく、全て合わせても平日1日の3時間で処理が完了することがわかりました。これらは作業の一番最初に実施します。 スケジュール、施設設備予約、ライブラリは件数が多く、3時間では完了しないことがわかります。そのため、これらは休日の10時間及び、 平日の3時間で分割してインデックスを作成することとします。

    実施順

    実施順1) スケジュール、施設設備予約、ライブラリ以外の機能   8/5(金)にまとめて実施
    実施順2) 施設設備予約     8/6(土)に実施
    実施順3) ライブラリ      8/7(日)に実施
    実施順4) スケジュール     8/8(月)~8/14(日)の期間に分割して実施

(3) 最近の更新データを取り込む日を決める。
14日までの移行が完了しても、たとえば、8/5に作業を実施した機能については、8/6以降にデータが追加、更新されている可能性があります。 そのため、インデックス作成作業の最後に最近更新されたデータをまとめてインデックス作成する必要があります。

  全機能について、最近更新されたデータ     8/15(月)に実施

(4) 具体的なスケジュール計画を立案する
上記で決めた日程に沿って、『Luxor_Ver.1.3.0_サイジング基礎情報』の「スケジュール例」シートのようなスケジュール計画を作成します。

3. 移行作業を実施する

(1) スケジュール、施設設備予約、ライブラリ以外の機能のインデックス作成
"スケジュール例"シートのようなスケジュール計画に沿って、インデックス作成作業を実施します。実施順1)のメモ、レポート、タスクリスト、 スマートページ、ライブラリのフォルダ、ワークフロー、連絡・通知、メーリングリストのインデックスを作成します。

  # su iseadmin
  $ cd /home/DreamArts/cmd
  $ ./remake_luxor_index -luxor_url=http://10.1.1.1:10080/solr -func=reminder,report,todo,smart,library-folder,wflow,ns_board,ml
実行してもよろしいですか?[Y/n]

   ※ "Y" を入力して、Enterを押下すると処理が実行されます。
   ※ スケジュール、施設・設備など過去のインデックスが不要な場合は移行対象から除外することができます。
   -funcオプションで指定しなかった機能の過去のインデックスは作成されませんが、Luxor移行後に新規に登録、または更新されたデータは
   インデックスが生成され全文検索することができます。

コマンドの実行完了後に、インデックス作成が完了した事を確認します。

(2) 施設設備予約のインデックスを作成する

 $ cd /home/DreamArts/cmd
 $ ./remake_luxor_index -luxor_url=http://10.1.1.1:10080/solr -func=fa_schedule

(3) ライブラリのインデックスを作成する

 $ cd /home/DreamArts/cmd
 $ ./remake_luxor_index -luxor_url=http://10.1.1.1:10080/solr -func=library

(4) スケジュールのインデックスを作成する
実施順4) スケジュールのインデックスを分割して作成します。スケジュールは7日間に分割して、インデックスを作成します。今回の手順例では、 スケジュールのデータ量は毎年同じ量という前提です。そのため、「8/8からの7日間で毎日1年分のスケジュールデータのインデックスを作成する」こと としています。

①. 2005年分のスケジュールのインデックスを作成する

 $ cd /home/DreamArts/cmd
 $ ./remake_luxor_index -luxor_url=http://10.1.1.1:10080/solr -func=schedule -from=2005/01/01 -to=2005/12/31

②. 2006年分のスケジュールのインデックスを作成する

 $ cd /home/DreamArts/cmd
 $ ./remake_luxor_index -luxor_url=http://10.1.1.1:10080/solr -func=schedule -from=2006/01/01 -to=2006/12/31

以後2011年までスケジュールの1年分のインデックス作成処理を繰り返します。

③. インデックス作成が完了したことを確認する

再び、インデックス作成が完了したことを確認します。

(5) 全機能について、最近更新されたデータのインデックスを作成する
コマンドの実行時点までに登録されたデータのインデックス作成が完了しましたが、コマンド実行後に追加・更新されたデータは、 まだインデックス作成ができてないため、これを一度にインデックス作成します。
この処理を行う間は、新規のデータが登録されないように、メンテナンスモードに移行しておく必要があります。

 $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -func=reminder,report,todo,smart,library-folder,wflow,ns_board,ml - > from=2011/08/05 -to=2011/08/15
 $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -func=fa_schedule -from=2011/08/06 -to=2011/08/15
 $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -func=library -from=2011/08/07 -to=2011/08/15
 $ ./remake_luxor_index  -luxor_url=http://10.1.1.1:10080/solr -func=schedule -from=2011/08/14 -to=2011/08/15

4. Luxorモードへ切り替える

Luxor用インデックスの作成が完了しました。INSUITE®の検索エンジンの設定を切替えれば、移行作業は完了です。

(1) 検索エンジンを切り替える
(2) 通常モードへ切替える
(3) Luxorへの移行完了を確認する

 INSUITE®の一般画面にログインして、「統合検索」メニューをクリックしてください。テーブル部分がシルバー調の統合検索画面が表示されれば、
 切替えは完了です。(Namazuモードの場合は、テーブル部分が黄色調の統合検索画面となります)。また、スケジュールデータなどを登録し、
 登録したデータが統合検索画面で正常に検索できることを確認してください。

 以上で、Luxorへの移行は完了です。

Luxor移行に必要なコマンド

ここではLuxor移行に必要なコマンドについて説明します。

①コンテンツデータのLuxor用インデックス作成コマンド

INSUITE®のコンテンツデータのLuxor用インデックスを作成するためのコマンドです。

  • コマンドのパス

    /home/DreamArts/cmd/remake_luxor_index
    
  • オプション

    remake_luxor_index [-help] [-info] [-func FUNCTION1[,FUNCTION2,FUNCTION3..]] [-luxor_url URL] [-from YYYY/MM/DD|YYYY/MM] [-to YYYY/MM/DD|YYYY/MM] [-from_index_data=1] [-wf_history=1]

    -help コマンドヘルプを表示する。
    -func indexを再作成するファンクションを指定する。

    [ board ]  連絡掲示板
    [ schedule ]  スケジュール
    [ fa_schedule ]  施設設備予約
    [ reminder ]  メモ
    [ report ]  レポート
    [ todo ]    タスクリスト
    [ smart ]   スマートページ
    [ library ] ライブラリ
    [ library-folder ]  ライブラリのフォルダ
    [ share ]   ファイル共有
    [ wflow ]   ワークフロー
    [ ns_board ]  連絡・通知
    [ ml ]  メーリングリスト
    
    -luxor_url  luxorサーバのURL。 (書式: http://x.x.x.x:10080/solr)<br>
    -from   対象期間の開始日を指定する。 (書式: YYYY/MM/DD)※メーリングリストは月単位で実行される。(日は無視される)<br>
    -to  対象期間の終了日を指定する。 (書式: YYYY/MM/DD)※メーリングリストは月単位で実行される。(日は無視される)<br>
    -info   データ件数、インデックスデータ容量だけを表示。<br>
    -from_index_data=1   ※INSUITE® Ver.3.2.1 以降で使用可能。オプションの指定がない場合、データベースからインデックスを作成するが、オプションが指定された場合は、Namazuで作成されたインデックスデータを元にインデックスを作成する。-infoと共に指定するとNamazuモードで作成されたインデックスのデータ容量を参照可能。<br>
    -wf_history=1   ※INSUITE® Ver.3.2.1 以降で使用可能。ワークフローの履歴データのインデックスを作成する場合に指定する。<br>
    

INSUITE®のバージョンによる動作の違い
INSUITE® Ver.3.2.0以前のバージョンでは作成元データがNamazuインデックスであるため、インデックスが何らかの原因で破損した場合にインデックスを再作成することができませんでした。INSUITE® Ver.3.2.1より、データベースを作成元データとしてインデックスを作成し、再作成も可能となりました。下表を参照してください。

バージョン Ver.3.2.0 以前 Ver.3.2.1 以降
作成元データ Namazuインデックス データベース/Namazuインデックス
インデックス再作成 不可 可(データベース)
動作仕様 NamazuインデックスからLuxorインデックスを作成する。インデックスが何らかの原因で破損した場合にインデックスを再作成することができない。 データベースからLuxorインデックスを作成する。インデックスが何らかの原因で破損した場合もインデックスの再作成が可能。
NamazuインデックスからLuxorインデックスを作成する場合は"-from_index_data=1"オプションを指定する。
ワークフロー履歴データのインデックス 自動的に作成される。 データベースから作成する場合は自動的に作成されない。(次項参照)

INSUITE® Ver.3.2.1以降でインデックスを移行する場合の注意事項
INSUITE® Ver.3.2.1以降のバージョンでインデックスを移行する場合、ワークフローの履歴データのインデックスは作成されません。これはワークフローの履歴データのデータ登録日時をデータベースに保持していないためです。ワークフローの履歴データのインデックスを作成するには、"-wf_history=1" オプションを指定します。
"-wf_history=1"オプション指定時はNamazuのインデックスファイルの日付を参照します。Namazuのインデックスファイルが存在しない場合はコマンド実行時の時刻をデータ登録時間としてインデックスを作成します。

  コマンド実行例:

       ./remake_luxor_index -func=wflow -wf_history=1

インデックス作成コマンドの処理時間について(参考)
データベースからインデックスを作成した場合の弊社検証環境における処理時間(参考値)は下記の通りです。

INSUITE®のバージョン Ver.3.2.1
対象データ 約6万件のスケジュールデータ
情報表示(-info)までの処理時間 約7分
インデックス作成の処理時間 約3時間

②オンラインガイドのLuxor用インデックス作成コマンド

  • コマンドのパス

    /home/DreamArts/bin/guide_index.pl

  • オプション

    guide_index.pl [-luxor_url] -luxor_url luxorサーバのURL (書式: http://x.x.x.x:10080/solr)

制限事項

INSUITE®でLuxorを使用する上での制限事項について記載します。

インデックス化対象の添付ファイルの最大サイズ
インデックス化する対象の添付ファイルのサイズは 40MB までとなります。40MB 以上のファイルはインデックス作成処理がスキップされます。

インデックス化対象の添付ファイルの種類

INSUITE®では、テキスト抽出ソフトウェア「デ変研TFライブラリ」C版(DocCat) を利用し、デ変研TFライブラリのバージョンアップに伴う製品用ソフトウェアの更新は常に行っていますので、インデックス対象の種類は、下記デ変研の公式サイトより確認して下さい。

http://www.dehenken.co.jp/products/products01-0102.html