ニュース 2002年12月3日 07:29 PM 更新

NTT-X、15分前の更新を反映する「新鮮情報検索エンジン」

NTTとNTTサイバーソリューション研究所は「新鮮情報検索エンジン」を開発した。約8000万ページといわれる日本国内の全Webページをカバーし、15分前に更新された情報の検索も可能になるという

 NTTとNTTサイバーソリューション研究所は12月3日、NTT-Xの運営するポータルサイト「goo」で新しい「新鮮情報検索エンジン」の実証実験を開始すると発表した。8月から行っている「最速ニュース記事検索実験サービス」の拡張版だ。約8000万ページといわれる日本国内の全Webページをカバーし、15分前に更新された情報の検索も可能になるという。

 Webサイトの検索エンジンにとって、最も重い作業はインデキシングだ。これは、検索時に短時間で結果を出力できるよう、検索対象の更新を予めチェックし、データベース化しておく作業のこと。しかし、1年間に約4倍というペースで拡大するWebページをすべて検索対象とインデックス化する作業は容易ではない。

 NTTサイバーソリューション研究所マルチメディア端末プロジェクト担当部長の小川克彦博士によると、検索の高速化には、情報を収集する「クローラ」と呼ばれるソフトウェアロボットの高速化、収集した大量の情報を効率よく転送する技術、そしてキーワードリスト作成(インデキシング)の高速化といった技術的な課題があるという。


NTTサイバーソリューション研究所の小川克彦博士

 夏に公開した最速ニュース記事検索サービスでは、まずインデキシングの対象を約70サイト(100万ページ)に絞り、Webページの構造を把握して本文領域の変更だけを判別する技術によって不要なインデキシング作業を排除した。また作業を行うサーバを1台にまとめ、データ転送やディスク書き込みといったプロセスを省略することで1日に約6000万ページの情報収集速度とリアルタイムインデキシングを実現している。


Webページの構造を把握して本文領域の変更だけを判別する

ロボットの高速化

 今回の新検索エンジンに加えられたのは、クローラの高速化と圧縮付きのリアルタイムインデキシング技術だ。まず、クローラが動作する際にバーチャルドメイン(1つのIPアドレスを複数ドメインが使う)やミラーサーバの存在を学習しておき、同一のドメインやIPアドレスへのアクセスが重複しないように調整する。これにより、クローラの作業速度は従来の約2倍に向上したという。

 「バーチャルドメインは、いわば玄関(IPアドレス)が1つの2世帯住宅(複数ドメイン)だ。クローラ同士が玄関でかち合い、待ち時間が生じてしまう。そこで、Web空間の構造をクローラが学習し、1つのクローラが訪問しているときは別のクローラが訪れないといった調整を行っている」(小川氏)。


クローラの作業速度は従来の約2倍に

 一方、検索用キーワードリストの生成時には、文書の番号をソートした上でハフマン符号による圧縮を行っている。このあたりは既にデータベースの分野で一般的に使われている技術だ。しかし、これによってキーワードの更新時間と検索時間を「従来の約10倍」に高速化したという。

まずはgooに実装

 情報収集、インデキシング効率のアップといった技術により、新検索エンジンは現在のgoo検索と比較して約100倍の処理速度を持つことになった。収集速度は一日あたり1億2000万ページ(ピーク時)におよび、約8000万といわれる日本語のサイトに限れば24時間以内に一巡できる。

 もちろん、とくに更新頻度の高いニュースサイトなどは1日あたりの参照回数を増やす。「15分間で8万ページ以上の更新が反映できる。商用ニュースサイト以外にも頻繁に更新される個人サイトなどもあり、これらを含めてアルゴリズムを最適化するのが検証の目的だ」(NTT-Xの大町雄一常務)。

 NTT-Xでは、約120台のLinuxサーバを使用して12月から約4カ月間の実証実験を行う。商用化の時期は未定だが、まずはgooの検索エンジンとして実装する方針。また、「検証を通じて新しいビジネスモデルも検討していく」(大町氏)としている。

関連記事
▼ goo、9月30日まで新型検索エンジンの公開実験を実施

関連リンク
▼ NTT-X
▼ goo
▼ ニュースリリース

[芹澤隆徳, ITmedia]

Copyright © ITmedia, Inc. All Rights Reserved.



モバイルショップ

最新CPU搭載パソコンはドスパラで!!
第3世代インテルCoreプロセッサー搭載PC ドスパラはスピード出荷でお届けします!!

最新スペック搭載ゲームパソコン
高性能でゲームが快適なのは
ドスパラゲームパソコンガレリア!