第5回 ESP構築に際して注意すべきこと

横山大輔(みずほ情報総研) 2006年01月04日 10時36分

  • このエントリーをはてなブックマークに追加

 第3回、第4回にわたって、ESPの持つべき機能(検索、セキュリティ、ナビゲーション)についての概念的な解説をおこなってきた。このような機能を備えたESPであるが、ただ漫然と構築してもその利便性にあずかることはできない。対象とするストレージの規模、更新頻度、利用の集中する時間帯などを考慮し適切なプロダクトを選定することで初めて期待した効果を手に入れることができるのである。今回はこの点に注目し、ESP構築に際して押さえておかなければならないポイントを説明する。

運用・管理-クローリングのスケジューリングについて-

 クローリングとは、グループウェアやイントラネットといったストレージを巡りあらかじめ検索データを取得することである。

 ESPは検索を実行する際に、クローリングによって収集されたテキスト情報、いわゆるインデックスに対して検索をするため、検索結果の正当性を保証するためにもデータ収集対象の母体である各種ストレージ(グループウェア、イントラネット、ファイルサーバなど)と検索対象であるインデックスとの間でデータの整合性を保つことが重要となる。よって頻繁にストレージに対してクローリングを実行する必要があるが、クローリングは同時にESPサーバのリソースを消費するため、検索機能自体のパフォーマンス低下を招く恐れがある。またクローリング中はストレージ自体への負荷もかかるため、対象がグループウェアやイントラネットといった業務アプリケーションの場合、その影響は多岐に渡ることになる。ではどうすればリソースの競合を避け、快適なESP環境を構築できるのであろうか?

 まず1つ目の方法は、検索機能とクローリング機能を別々のサーバで分割して実装する方法である。機能別でサーバを構成するのでリソース競合の心配はないが、必然的にサーバの台数が増えてしまうので、初期導入時のコスト、運用・管理手順などを検討する必要がある。

 2つ目の方法は、クローリングのスケジュールを調整することでリソースの有効活用を目指すというものだ。具体的にはクローリングのスケジュールをESPの利用頻度の低くなる営業時間外に設定し、営業時間中の検索処理とのリソース競合を避ける方法である。この方法では、営業時間中は検索処理を行い、営業時間外はクローリング、インデックス生成を行うことでサーバリソースの有効活用が可能となり、サーバの構成もシンプルにできる。ただし営業時間中はクローリングを実行できないため、ストレージとインデックスの間にデータのギャップが生じ、検索データの整合性を即時反映することが出来ないデメリットも発生する。

 よって頻繁に更新されるものや重要度の高いコンテンツに関してはパターン1を、更新頻度の低いコンテンツに関してはパターン2を適用するといったように、ストレージの更新頻度に対応した柔軟なクローリングスケジュールとサーバ構成を組むことが重要となる。

●プロダクトの選定-アクセス制御の仕組み-

 ESPのセキュリティ機能として、クローリング対象のストレージに設定されているアクセス制御を引き継ぎ、検索結果に反映させる機能がある。ESPはアクセス制御情報の取得方法の違いにより大きく2つに分類できる。

 まず1つ目は、検索を実行する以前にアクセス制御情報をストレージから収集し、ESPサーバ内にキャッシュしておく方法である。この方法のメリットは、検索を実行する際にサーバ内にキャッシュしているアクセス制御情報を参照するため、アクセス権つきの検索を実行する場合に、高速なレスポンスを期待できる点である。ただし、アクセス制御情報をサーバ上にキャッシュしているため、クローリング対象のストレージのアクセス制御情報が更新されたとしても、その情報を即時に反映させることは難しい。

 2つ目は、検索を実行するたびにアクセス制御情報をストレージに問い合わせる方法である。この方法のメリットは、検索の都度アクセス制御情報を取得するため最新のアクセス制御情報を反映させた検索結果を得ることができる点である。ただし、検索を実行するたびにストレージに対して、アクセス制御情報を問い合わせるため、検索の処理数に比例してネットワーク上に流れるトラフィック量が増加し、ストレージへのリクエスト要求による負荷も増加することから、検索処理のレスポンスタイムが悪化する恐れがある。

 よって1つ目のアクセス制御情報をキャッシュしておく方法は、全社のストレージを対象とするような比較的大規模なESP構築をする場合に、2つ目の検索処理単位に問い合わせる方法は、異動などの発令直後からアクセス権を新規に適用したい企業など、厳格なアクセス権制御を実施したい企業に適していると言える。

●サイジング-インデックスサイズの見積もり-

 ESPは検索を実行する際にストレージに対して検索を実行するのではなく、クローリングにより収集したインデックスに対して検索を実行することで、高速なレスポンスを実現していることは前述したとおりである。インデックスとは、各種ストレージに保存されている文書やファイルからテキスト情報を抽出し、検索処理に最適な形に整形したものであり、その容量は抽出前のファイルと比較して格段に圧縮される。部署レベルでの小規模なストレージの場合、インデックスによるサーバサイジングへの影響は無視できる程度であるが、規模が大きくなった場合、ハードディスクやメモリといったサーバのサイジングを考慮する必要がある。

 インデックスへの検索処理がいかに高速であるとはいえ、インデックス自体のサイズが巨大になった場合、検索処理の劣化を引き起こす可能性がある。サーバ当たりのインデックス容量は、サーバ台数を増やしインデックスを分割して配置することで抑えることができるが、逆にインデックス分割は検索対象を分散させてしまうことになり、検索処理速度の低下を引き起こしてしまう。これらの問題を回避するためESP製品の中には、分割したインデックスに対する並列検索機能を実装しパフォーマンスを維持できる大規模ストレージ向けの製品も存在する。

 上記で述べてきたように、ESPのもたらす恩恵を得るためには、構築の際には十分な検討と念入りな準備を行うことが肝要である。事前に現時点で検索対象となる社内のコンテンツの棚卸しを実行しその特徴を整備しておくとともに、将来新たに追加されるコンテンツはどのように蓄積・利用されるのかを正しく想定しておくべきである。あわせてESPのシステム基盤については、将来的な環境変化やシステム拡張に耐えられるような構成とすべきであるので、こういった構想策定については、コンテンツ・システムの両方に深い知識を持ったESPを良く知ったコンサルタントなどに相談すると良い。

みずほ情報総研 システムコンサルタント 横山大輔

  • このエントリーをはてなブックマークに追加
関連キーワード
ビジネスアプリケーション

関連ホワイトペーパー

SpecialPR

連載

CIO
研究現場から見たAI
ITは「ひみつ道具」の夢を見る
内製化とユーザー体験の関係
米ZDNet編集長Larryの独り言
今週の明言
「プロジェクトマネジメント」の解き方
田中克己「2020年のIT企業」
松岡功「一言もの申す」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
Fintechの正体
内山悟志「IT部門はどこに向かうのか」
情報通信技術の新しい使い方
三国大洋のスクラップブック
大河原克行のエンプラ徒然
コミュニケーション
情報系システム最適化
モバイル
通信のゆくえを追う
セキュリティ
セキュリティの論点
ネットワークセキュリティ
スペシャル
座談会@ZDNet
Dr.津田のクラウドトップガン対談
CSIRT座談会--バンダイナムコや大成建設、DeNAに聞く
創造的破壊を--次世代SIer座談会
企業決算を追う
「SD-WAN」の現在
展望2017
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
HPE Discover
Oracle OpenWorld
Dell EMC World
AWS re:Invent
PTC LiveWorx
古賀政純「Dockerがもたらすビジネス変革」
さとうなおきの「週刊Azureなう」
誰もが開発者になる時代 ~業務システム開発の現場を行く~
中国ビジネス四方山話
より賢く活用するためのOSS最新動向
「Windows 10」法人導入の手引き
Windows Server 2003サポート終了へ秒読み
米株式動向
実践ビッグデータ
日本株展望
ベトナムでビジネス
アジアのIT
10の事情
エンタープライズトレンド
クラウドと仮想化