全文検索エンジン・ロボット型検索エンジン開発・構築受託案内

弊社では、ロボット型検索エンジンから全文検索エンジン、ディレクトリ型検索エンジンまで様々な検索システムのサーバー構築を行っています。

検索エンジンについて


検索エンジン(英語: search engine)は、広義にはホームページを検索するサービスサイトやインターネットに限定せず情報を検索するシステム全般が含まれます。
狭義にはインターネットに存在する情報(ウェブページ、ウェブサイト、画像ファイル、ネットニュースなど)を検索する機能およびそのプログラムです。
広義の検索エンジンとして、全文検索エンジンがあり、grep型索引(インデックス)型に区分されます。
狭義の検索エンジンには、大きくロボット型検索エンジンディレクトリ型検索エンジンがあります。

(1)全文検索エンジン

 ○grep型
一般に「grep型」と呼ばれる検索手法は、事前に索引ファイル(インデックス)を作成せず、ファイルを順次走査していくもので順次走査検索、逐次検索ともいわれます。ホームページのサイト内検索は、「grep型」に含まれます。

 ○索引(インデックス)型
索引(インデックス)型は、あらかじめ検索対象となる文書群を走査しておき、高速な検索が可能になるような索引データを準備することで、検索時のパフォーマンスを向上させる手法です。「全文検索エンジン」の「索引型」に「ロボット(クローラー)」機能が附加されると「ロボット型検索エンジン」となります。この意味で、一般的に「全文検索エンジン」=「ロボット型検索エンジン」と言われています。

(2)ロボット型検索エンジンとディレクトリ型検索エンジンの相違

 ○ロボット型検索エンジン
ロボット(クローラー)によってインターネット上のホームページのデータを収集し、一定の方式でその文章等を索引化し、与えられた検索式(アルゴリズム)に従って、ウェブページ等を検索するサーバ、システムのことです。対象データが多い場合や、ページ内に記載されている文章や、言葉が検索可能で、データも機械的に更新されているため現在のデータを検索可能等のメリットがあります。基本的に文章や言葉やコンピュターが機械的に処理しているため特定分野や地域等のカテゴリを正確に把握できないという欠点があります。

 ○ディレクトリ型検索エンジン
人手によってホームページデータをデイレクトリ(カテゴリ)に分類し、そのウェブディレクトリ内を検索するサーバ、システムのことことをいきます。 人手で構築しているため、質の高いウェブサイトを検索可能で、検索結果の一覧から目的のサイトを探しやすい、サイトのカテゴリ分けがされていることから、特定分野や地区などに限定したサイトを探しやすいという特長があります。 しかし、検索対象となるサイトは人手で入力するため、検索対象のサイト数が多くなると構築できない、ページ内の文章を検索できないという欠点があります。

ロボット型検索エンジンの仕組み(索引型全文検索エンジンサーバ+クローラーサーバ)

ロボット型検索エンジンは、他のシステムと同様に,複数のコンポーネントから構成されています。ざっくり分けると以下のようなコンポーネントから構成されています。
  • ロボット(Crawler クローラー)
  • 索引構築部(Indexer インデクサー)
  • 索引(Index インデックス)
  • 検索部(Searcher サーチャー)
ロボット型検索エンジン仕組み
 ロボット(Crawler)
クローラーは、ロボットともいわれ、インターネット上のリンクを辿るか、予め指定されたサイトのサーバー内部のテキストデータをページ内リンクを辿り自動的に収集するシステムです。

 索引構築部(Indexer)
索引構築部では、検索したいテキスト文書を検索しやすいフォーマット(索引)に変換する作業を行います。
もともと索引(さくいん)とは、百科事典や学術書などの書籍の巻末において、特定の項目を素早く参照できるよう項目を特定の順番に並べ、その項目が出現する物理的な位置をまとめたものです。書籍と同様にロボットが収集したページ毎のデータを辞書にかけて文章を構成する名詞や動詞、助動詞、形容詞等の単語に分割し、検索キーワードが何処にあるかの索引を作成するのが転置索引です。
転置索引は大きく分けて辞書と転置リストの2つの部分から構成されています。
転置索引において、単語と文書の対応付けの情報をポスティングと呼び、各単語におけるポスティングの列のことをポスティングリストと呼びます。その辞書にある各単語がどの文書に出現するかを表したポスティングリストの集合が転置リストです。

 索引部(Index)
索引部は、索引構築部で構築された索引そのものになります。索引は、独自のバイナリ形式のファイル上に論理的に索引構造を構築する場合やデータベース管理システム(DBMS:database management system)としてファイルシステムに保存されます。索引ファイルは多くの場合、読み込む転送量を削減するため圧縮されます。

 検索部(Searcher)
検索部では、検索ユーザー(検索者)からの検索を受け取り、索引部に対して検索処理を行います。
また、様々なスコアに基づいて関連度を計算しソート(並び替え)が行われます。このアルゴリズムは、SEO対策の対象になる部分であり大手検索エンジンでは一般に公開されていません。
スコアーに基づいてランキング評価された検索結果の一覧が検索ユーザーに一覧表示されます。

弊社のロボット型検索エンジンの主な機能

1. ホームページ・ドキュメントの追加・更新

サイトを登録、またはディレクトリ等を管理画面より登録することで、自動でサイト内のホームページやドキュメントをクローラー(ロボット)により取得します。

2. 自動クローリング、インデックス機能

クローラーにより定期的にホームページのコンテンツ、ドキュメント等を取得して解析、インデックス化までを自動化します。クロールの周期については、定期的に行うパターン、ドキュメントの更新頻度によって動的に変化するパターンを選択可能です。

3. クロールの状況をグラフにより視覚化

定期的にクロールを行った結果をサイトごとに日別、月別でグラフ化しクロールの状況を確認することが可能です。これによりホームページやドキュメントの更新・増加傾向を視覚的に判断する事が可能です。

4. ランキングアルゴリズムのカスタマイズ

特定のタグやキーワードに応じて重み付け処理等、ランキングアルゴリズムのカスタマイズが可能です。また、特定のサイトやドキュメントに対する重要度のカスタマイズにも対応しています。

5. 言語解析

言語解析には、形態素解析として標準でKuromojiを利用します。形態素解析システムやN-gramの利用も可能です。

6. ユーザー定義辞書

基本辞書に加えて地域・企業による様々な単語等を処理するためのユーザー定義辞書について、管理者により簡単に追加・編集が可能です。

7. カテゴリ機能

全文検索の他、カテゴリ分けされたホームページやドキュメントに対してのハイブリッド検索の構築も可能です。カテゴリ分類については地域や職種に応じてカスタマイズが可能です。

8. 検索結果のデザインカスタマイズ

検索結果表示画面に対して自由にカスタマイズすることが可能です。

9. 複数サーバ対応

1台のサーバで処理しきれないような大量のホームページ・ドキュメントで検索エンジンを構築する場合でも、複数のサーバに分散して検索を行うクラスタ機能を利用することが可能です。


ロボット型検索エンジンの課題と対応について

ロボット型検索エンジンの課題

前項で記載しましたが、ロボット型検索エンジンは、基本的に文章や言葉をコンピュターが機械的に処理しているため特定分野や地域等のカテゴリを正確に把握できないという欠点があります。 例えば、単語としては、福島という単語は、全国において県名、市名、町名、字名があります。中央区は、全国のほとんどの政令都市に存在します。佐賀県には鹿島市があり、漢字違いで茨城県には鹿嶋市があり、鹿島神宮の全国の末社には、鹿島神社、鹿嶋神社があります。八千代高校は、千葉県八千代市に存在し、茨城県八千代町にも存在します。居酒屋等の店名には、出身地等の名称を利用した店が多数存在します。商品名にも地域の名称を利用した商品が多数存在します。 通常の検索では、複数の単語を組み合わせて検索しますからより複雑になります。ロボット型検索エンジンでは、本来の検索対称でない(期待していない)ページの単語等の組み合わせのスコアが高い場合、目的のサイトが検索されないと言う問題が発生します。

ディレクトリ型検索エンジンのメリット

一方、ディレクトリ型検索エンジンは、人的にカテゴリや地名を整理しているためロボット型検索エンジンのようなことはありません。

ロボット型検索エンジンの課題解決対応

ロボット型検索エンジンとディレクトリ型検索エンジンを組み合わせた検索エンジンにすることによって問題は解決されます。 以下の弊社が開発したGIS連動ロボット型検索エンジンは、ロボット型検索エンジンとディレクトリ型検索エンジン、地理情報システムを組み合わせることによってより正確な検索が可能となっています。

GIS連動ロボット検索エンジン(G-Attole) ロボット型+ディレクトリ型+GIS検索エンジン

◆ GIS連動ロボット検索エンジン(G-Attole)の概要

ロボット検索エンジンは言葉を検索しているため検索結果の情報の場所を把握できない事を解決し、検索結果の位置を地図表示・確率の色別表示等を可能とするシステムです。指定の場所から距離条件で検索することも可能となっています。
(特許3984263号:特願2007-032704)

GIS連動ロボット検索エンジン(G-Attole) ロボット型+ディレクトリ型+GIS検索エンジン

GIS連動ロボット検索エンジン(G-Attole)のシステム構築

◆ GIS連動ロボット検索エンジン(G-Attole)の概要

ロボット検索エンジンは言葉を検索しているため検索結果の情報の場所を把握できない事を解決し、検索結果の位置を地図表示・確率の色別表示等を可能とするシステムです。
(特許3984263号:特願2007-032704)

◆ GIS連動ロボット検索エンジン(G-Attole)の主な機能

  1. ホームページ検索結果一覧と地図を同時表示
  2. キーワードの存在する各ページの発信位置を地図表示可能
  3. 検索重要度評価を地図上に地点色別表示可能
  4. キーワードの存在する各ページまでの距離を検索一覧に表示することが可能
  5. 距離条件でキーワード検索することが可能

◆ 各種地図対応

Google Maps APIの他、地理院地図(旧電子国土:国土地理院)、YOLP(Yahoo! JavaScriptマップAPI)、Bing Mapsに対応した開発が可能です。


全文検索エンジン・ロボット型検索エンジン等の開発お問合せ

弊社では、業種限定、事業所限定、地域限定のロボット型検索エンジン、エンタープライズサーチ(企業内検索)、複数データベース等の全文検索エンジンの受託開発、サーバシステム構築サービスを行っています。カテゴリ検索+ロボット検索エンジン、カテゴリ検索+ロボット検索+地理情報システム(GIS検索エンジン)等お客様の仕様に合わせた検索エンジンサーバシステムの構築も可能です。検索エンジン開発・構築のご相談は何なりと弊社宛お問い合わせください。