Googleの弱点を克服した検索エンジンを実装

【NET&COM2007】「Googleの弱点を克服した検索エンジンを実装」---Web 2.0時代に向けたLinux活用技術
記事一覧へ

source from http://itpro.nikkeibp.co.jp/article/NEWS/20070209/261537/

ウェブリオ 取締役最高技術責任者 佐々木亨氏
ウェブリオ 取締役最高技術責任者 佐々木亨氏
[画像のクリックで拡大表示]
Weblioのトップページ
Weblioのトップページ
[画像のクリックで拡大表示]
Preferred Infrastructure リサーチャー・エンジニア 岡野原大輔氏
Preferred Infrastructure リサーチャー・エンジニア 岡野原大輔氏
[画像のクリックで拡大表示]
接尾辞配列方式。Sedueはこれを改良した圧縮接尾辞配列方式を採用している
接尾辞配列方式。Sedueはこれを改良した圧縮接尾辞配列方式を採用している
[画像のクリックで拡大表示]
Preferred Infrastructure 代表取締役社長 西川徹氏
Preferred Infrastructure 代表取締役社長 西川徹氏
[画像のクリックで拡大表示]
Seudoの分散システム
Seudoの分散システム
[画像のクリックで拡大表示]
ミュートス 執行役員情報システム開発宗近龍一郎
ミュートス 執行役員情報システム開発宗近龍一郎
[画像のクリックで拡大表示]
日本スケーリックス 取締役 大塚和彦氏
日本スケーリックス 取締役 大塚和彦氏
[画像のクリックで拡大表示]

 「Googleの弱点を克服したアルゴリズムによる検索エンジンを世界で初めて実装した」(Preferred Infrastructure 岡野原大輔氏)---リナックス ビジネス イニシアチブ(LBI)は2月8日,Net&Com2007で「Web 2.0時代に向けたLinux活用技術」と題したセミナーを開催,Linuxを活用した新サービスなどに関する発表が行われた。

Weblioマッシュアップによる遅延はキャッシュで防ぐ

 ウェブリオ 取締役最高技術責任者 佐々木亨氏は「Weblio辞書検索の秘密−中古Linux機で月間600万PV−」と題した講演を行った。

 Weblioは,様々な辞書や百科事典,200以上の辞書を一度に検索できるサイトである。月間600万PVのアクセスがあるが,それに対し軽快な動作を安価に提供するために様々な工夫を凝らしているという。

 まずWeblioのサイトはLinuxを始めとするオープンソース・ソフトウエアを全面的に採用している。負荷分散もLinux Virtual Serverなどオープンソース・ソフトウエアで行っている。他のサイトのサービスを利用する,いわるゆマッシュアップ的なサービスであるため,他のサイトにアクセスしてデータを取得するため遅延が生じる場合があるが,その対策としてプロキシ・サーバーでデータをキャッシュしている。

 また,サーバー機は中古マシンを使用している。「これにより同程度のスペックのマシンが約半額で調達できた」(佐々木氏)という。

Sedue:圧縮接尾辞配列を実装した初の商用検索エンジン

 Preferred Infrastructureの西川徹氏と岡野原大輔氏は「Sedueによる検索サイト構築 〜情報ビッグバン時代に向けて〜」と題して講演した。

 Preferred Infrastructureは,IPA未踏ソフトウェア創造事業の開発者や世界的なプログラミング・コンテスト出場者らが設立技術ベンチャ。同社が開発した検索エンジンSedueについて紹介した。

 前文検索エンジンアルゴリズムにいくつかの方式がある。「Googleが採用しているのは『転置ファイル』と呼ぶ方式で,各単語ごとに,どの文書に出現したかを記録するもの。Googleは単語に分けてサーバーを配置している。シンプルで速く分散処理しやすいが,単語の境界が不明瞭な日本語では検索漏れが生じる恐れがあるほか,フレーズ検索も苦手」(岡野原氏)。

 Sedueが採用したのは,圧縮接尾辞配列と呼ぶアルゴリズムだ。接尾辞配列とは,文字列を後方から1文字ごとに切り出した「接尾辞」を,辞書順序に記録する方式。漏れがないこと,どんな検索でも高速であるという長所があるが,索引のサイズが大きくなる,索引の構築に時間がかかることが難点だった。この問題を解決するために,圧縮接尾辞配列方式では,索引を圧縮することでサイズを小さくする。また「構築に時間がかかるという難点は,最近,高速なアルゴリズムが提案されたことで解決された。Sedueはこの圧縮接尾辞配列方式を実装した,初めての商用検索エンジン」(岡野原氏)。

 また「Seudoはシステムを分散化・冗長化し,データ容量や信頼性を向上できるよう設計されている」(西川氏)という。

 ミュートス 執行役員情報システム開発宗近龍一郎氏は,ソーシャルブックマークサービスの動向と同社が開発中の「BookDAQ」などについて講演した。BookDAQは,ソーシャルブックマークにコミュニティ機能を加えたもので,マーケティング・ツールとしての利用が見込めるという。

 日本スケーリックス 取締役 大塚和彦氏は,Linux上で稼動するOutlookライクなAjax WebグループウエアScalix」を紹介した。Webブラウザ上で,ドラッグ&ドロップはもとよりCtlキーを押しながら複数のメールを選択したり,右クリックでコンテキストメニューを表示させたりなど,クライアント・アプリケーションと同様な使い勝手を実現しているという。無償版もあり,近くオープンソース版も公開される予定である(関連記事)。