(57)【特許請求の範囲】
【請求項１】
ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出するリンク抽出手段と、
ＵＲＬが、該ＵＲＬに記述される各情報をその文字列順にページに割り当ててなるＢ木によって索引付けして登録されるＵＲＬインデックス部、ＵＲＬに記述されたリンク先のサーバ装置を特定するサーバ名情報を、該サーバ名情報で特定されるサーバ装置との通信順に格納するサーバ名情報記憶手段、及び収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とを用いて、サーバ装置ごとの優先度を設定する優先度設定テーブル部を有し、上記優先度設定テーブル部によって設定された優先度に応じた通信順で上記サーバ名情報を上記サーバ名情報記憶手段に格納し、上記リンク抽出手段が抽出した上記ＵＲＬに基づいて上記ＵＲＬインデックス部を検索して未登録であれば、該ＵＲＬを上記ＵＲＬインデックス部に上記索引付けを施して登録すると供に、上記サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すＵＲＬ管理手段と、
該ＵＲＬ管理手段によって、上記ＵＲＬインデックス部から読み出された上記ＵＲＬに対応する上記ハイパテキスト情報を収集する通信手段とを備えた情報収集装置。
【請求項２】
ＵＲＬインデックス部は、ディレクトリ階層の深さに応じてＵＲＬの読み出し順を設定することを特徴とする請求項１記載の情報収集装置。
【請求項３】
ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出するリンク抽出手段と、
ＵＲＬが、該ＵＲＬに記述されたリンク先のサーバ装置を特定するサーバ名情報をキーとするハッシュによって索引付けして登録されるＵＲＬインデックス部、上記サーバ名情報を、該サーバ名情報で特定されるサーバ装置との通信順に格納するサーバ名情報記憶手段、及び収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とを用いて、サーバ装置ごとの優先度を設定する優先度設定テーブル部を有し、上記優先度設定テーブル部によって設定された優先度に応じた通信順で上記サーバ名情報を上記サーバ名情報記憶手段に格納し、上記リンク抽出手段が抽出した上記ＵＲＬに基づいて上記ＵＲＬインデックス部を検索して未登録であれば、該ＵＲＬを上記ＵＲＬインデックス部に上記索引付けを実施して登録すると共に、上記サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すＵＲＬ管理手段と、
該ＵＲＬ管理手段によって上記ＵＲＬインデックス部から読み出された上記ＵＲＬに対応する上記ハイパテキスト情報を収集する通信手段とを備えた情報収集装置。
【請求項４】
ハイパテキスト情報の内容及び／又は他のハイパテキスト情報からの参照数を用いて、ＵＲＬごとに読み出しの優先度を設定する優先度設定手段と、
上記ＵＲＬ管理手段は、サーバ名情報と、上記優先度設定手段に設定されたＵＲＬの優先度との組み合わせを、ページに各々割り当ててなるＢ木によって索引付けしてＵＲＬインデックス部に登録し、サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すことを特徴とする請求項１記載の情報収集装置。
【請求項５】
ＵＲＬ管理手段は、複数のサーバ装置の各々に対応するＵＲＬを逐次読み出し、
通信手段は、上記ＵＲＬ管理手段により逐次読み出されたＵＲＬに対応するサーバ装置にアクセスし、上記複数のサーバ装置との間でハイパテキスト情報の収集を並行して実行することを特徴とする請求項１から請求項４のうちのいずれか１項記載の情報収集装置。
【請求項６】
ＵＲＬ管理手段は、収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とが所定の閾値を超えると、新たなＵＲＬの格納を行わないことを特徴とする請求項１から請求項５のうちのいずれか１項記載の情報収集装置。
【請求項７】
収集済みハイパテキスト情報のＵＲＬを登録する既取得ＵＲＬ登録手段を備え、
ＵＲＬ管理手段は、通信手段がハイパテキスト情報の収集を完了すると、該ハイパテキスト情報に対応するＵＲＬを上記既取得ＵＲＬ登録手段に登録したのち、該ＵＲＬを削除することを特徴とする請求項１から請求項６のうちのいずれか１項記載の情報収集装置。
【請求項８】
ＵＲＬ管理手段は、読み出すべきＵＲＬを予め読み出して格納するＵＲＬキャッシュを備えたことを特徴とする請求項３又は請求項４記載の情報収集装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は通信ネットワークに接続する複数の情報提供サーバが管理する情報を網羅的に収集する情報収集装置に係り、特にインターネットを介して複数のＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバから取得したＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）をＷＷＷサーバごとに管理して各ＷＷＷサーバに対するアクセス順序を制御する情報収集装置及び情報収集方法に関するものである。
【０００２】
【従来の技術】
インターネット上で用いられる情報検索システムであるＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）では、テキスト、音声、画像、動画などを含む様々な情報を検索し利用することができる。このＷＷＷが提供する情報は、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などの構造化タグ言語で記述されたテキストファイルを中心に構成されている。一般的に、これらの情報は、利用者の端末装置におけるブラウザ機能によって閲覧・取得を行うことができ、ウェブページと呼ばれている。また、ＷＷＷでは、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）と呼ばれる文字列によって、インターネットに接続する複数のコンピュータ（ＷＷＷサーバ）上の個々の情報（ウェブページに相当する情報）を一意に識別することができる。
【０００３】
図１６は上述したＵＲＬを表す文字列の一例を示す図である。図において、１００はＵＲＬ、１０１はＵＲＬ１００内で目的の情報があるＷＷＷサーバ名を特定する文字列で、１０２はＷＷＷサーバ内識別子であって、文字列１０１で特定されるＷＷＷサーバ内で目的の情報が格納される場所を特定する。ＵＲＬ１００についてもう少し具体的に説明すると、「ｈｔｔｐ：／／」なる文字列は、通信プロトコルとしてＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を用いることを示している。また、これに続く文字列１０１によってＷＷＷサーバ名（ドメイン名）として「ｗｗｗ．ｘｘｘ．ｃｏ．ｊｐ」で表されるＷＷＷサーバが特定される。最後に、ＷＷＷサーバ内識別子１０２として「／ｐｒｏｄｕｃｔｓ／ｏｒｄｅｒ．ｈｔｍｌ」を記述することで、目的の情報（ウェブページ）のＷＷＷサーバ内での格納場所が特定される。
【０００４】
上述したように、ＵＲＬを利用することでＷＷＷ上の情報を一意に識別することができるが、ＷＷＷ上の情報は膨大にあることから、利用者がＵＲＬを直接指定して情報を取得することは稀である。多くの場合、利用者が所望の情報に関するキーワードを指定し、これを含むウェブページのＵＲＬを検索するＷＷＷ検索エンジンが利用される。
【０００５】
上述したようなＷＷＷ検索エンジンには、ロボット型と呼ばれるサーチ手法をとるものがある。この基本的な仕組みは、予めＷＷＷ上のウェブページを網羅的に収集し、その内容を解析して検索インデックスを作成するものである。この検索インデックスを利用することによって、大量のウェブページの中から、利用者が指定するキーワードを含むウェブページの検索を実用的な時間内で実行することができる。
【０００６】
図１７は、例えば米国特許５７４８９５４号に開示された「Ｍｅｔｈｏｄ  Ｆｏｒ  Ｓｅａｒｃｈｉｎｇ  Ａ  Ｑｕｅｕｅｄ  Ａｎｄ  Ｒａｎｋｅｄ  Ｃｏｎｓｔｒｕｃｔｅｄ  Ｃａｔａｌｏｇ  Ｏｆ  Ｆｉｌｅｓ  Ｓｔｏｒｅｄ  Ｏｎ  Ａ  Ｎｅｔｗｏｒｋ」を適用したＷＷＷ検索エンジンにおける従来のＷＷＷ情報収集装置の構成を示す図である。このＷＷＷ情報収集装置は、一般的にウェブロボットやクローラなどと呼ばれるものに相当する。図において、１０３はインターネット、１０４はロボット型のＷＷＷ検索エンジンを構成するＷＷＷ情報収集装置で、例えばＷＷＷ上のウェブページを網羅的に収集するプログラムを実行するコンピュータ装置によって実現される。１０５は取得要求ＵＲＬキューであって、収集すべきウェブページのＵＲＬを保持する。１０６はインターネット１０３を介してＷＷＷサーバＡ〜Ｃとの通信を行うダウンロード手段で、ＷＷＷサーバＡ〜Ｃからウェブページをダウンロードする。１０７は既取得ＵＲＬ記憶手段であって、同じＵＲＬのウェブページの重複したダウンロードを防ぐために既に取得したウェブページのＵＲＬの一覧を格納する。１０８はＵＲＬコンテンツ記憶手段で、ダウンロードしたウェブページの内容を格納する。１０９はウェブページからＨＴＭＬのハイパーリンクを抽出して取得要求ＵＲＬキュー１０５に挿入するリンク抽出手段である。Ａ〜Ｃはインターネット１０３に接続する任意のＷＷＷサーバである。
【０００７】
次に動作について説明する。
ＷＷＷ情報収集装置１０４は、取得要求ＵＲＬキュー１０５に初期値として１つ以上のＵＲＬを挿入することで動作を開始する。先ず、ＷＷＷ情報収集装置１０４は、取得要求ＵＲＬキュー１０５から取り出したＵＲＬをダウンロード手段１０６に設定する。ダウンロード手段１０６は、ＷＷＷサーバＡ〜Ｃにアクセスして当該ＵＲＬに対応するウェブページをからダウンロードし、ＵＲＬコンテンツ記憶手段１０８に格納する。このあと、リンク抽出手段１０９が当該ウェブページの内容を解析して他のウェブページへのリンクを取り出し、当該リンクのＵＲＬを取得要求ＵＲＬキュー１０５に挿入する。
このように、ＷＷＷ情報収集装置１０４は、ウェブページに含まれるリンクを次々とたどることで、インターネット１０３上の膨大な量のウェブページをダウンロードする。
【０００８】
このあと、ＷＷＷ情報収集装置１０４が収集した情報は、インデクサ（不図示）と呼ばれる検索インデックスを作成するコンピュータ装置に送出される。インデクサは、例えば検索インデックスを作成するプログラムを実行するコンピュータ装置であり、これによってＷＷＷ情報収集装置１０４が収集したウェブページ内の文字情報から検索インデックスとなるデータベースが作成される。この検索インデックスを利用することで、ロボット型の検索エンジンを実現することができる。具体的には、ＷＷＷサーバが利用者からの検索要求を受け付けると、それを当該検索サービスを提供する検索サーバに送出する。検索サーバでは、上記検索インデックスを利用して検索を行い、検索結果を利用者の端末装置に送信する。これによって、利用者は、端末装置のブラウザ機能によって検索結果を閲覧することができる。
【０００９】
図１８は図１７中のＷＷＷサーバ上におけるウェブページ配置の一例を示す図である。図において、Ａ１〜Ａ７，Ｂ１，Ｃ１はウェブページのＵＲＬであって、ＷＷＷサーバＡ〜Ｃ内のウェブページの格納場所を規定する。また、図１９は図１７中のＷＷＷ情報収集装置によるウェブページのダウンロード順とＷＷＷサーバのアクセス順の一例を示す図である。
【００１０】
ここで、図１８及び図１９を参照して、ＷＷＷ情報収集装置１０４によるウェブページの探索動作を詳細に説明する。先ず、ＷＷＷ情報収集装置１０４は、ウェブページのダウンロードをリンクの抽出順に行う。つまり、リンク抽出手段１０９は、ダウンロードしたウェブページからリンクのＵＲＬを抽出するごとに、取得要求ＵＲＬキュー１０５の末尾に挿入する。一方、取得要求ＵＲＬキュー１０５では、ＵＲＬを格納された順（ＦＩＦＯ；Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）に取り出してダウンロード手段１０６に設定する。このため、ウェブページのダウンロードがリンクの抽出順に行われる。この探索法は、一般的に幅優先探索と呼ばれている。
【００１１】
ここで、図１８に示すようなウェブページの配置がなされたＷＷＷサーバにおいて幅優先探索を行うことで、図１９に示すようなウェブページのダウンロード順と各ＷＷＷサーバへのアクセス順の関係が得られる。具体的に説明すると、ＵＲＬがＡ１であるウェブページをダウンロードする。該ウェブページにはＵＲＬがＡ２，Ａ３である２つのリンクが含まれており、これらはＡ２，Ａ３の順で抽出される。このあと、ＵＲＬがＡ２，Ａ３のウェブページを逐次ダウンロードする。ＵＲＬがＡ２のウェブページには、ＵＲＬがＢ１，Ａ４，Ａ５である３つのリンクが含まれており、これらはＢ１，Ａ４，Ａ５の順で抽出される。一方、ＵＲＬがＡ３のウェブページには、ＵＲＬがＡ６，Ｃ１，Ａ７である３つのリンクが含まれており、これらはＡ６，Ｃ１，Ａ７の順で抽出される。続いて、リンクが抽出された順に、ＵＲＬがＢ１，Ａ４，Ａ５，Ａ６，Ｃ１，Ａ７のウェブページが逐次ダウンロードされる。この挙動を記述したものが図１９であり、時間軸に対応する列方向に沿って、収集されるウェブページのＵＲＬ、その際アクセスされたＷＷＷサーバが示されている。
【００１２】
インターネット上にはＷＷＷサーバやウェブページが膨大な量存在し、更新や追加も頻繁に行なわれることから、上述した検索インデックスの作成に要する情報の収集は高速に行われる必要がある。このため、ダウンロード手段１０６が、上述のように逐次的にダウンロードを行なうのではなく、同時に複数のＷＷＷサーバから並行してダウンロードを行なうことで高速なウェブページの収集を実現する技術も提案・実施されている。
【００１３】
【発明が解決しようとする課題】
従来の情報収集装置は以上のように構成されているので、収集したウェブページから抽出したリンクのＵＲＬを取得要求ＵＲＬキュー１０５からその抽出順に取り出してアクセスするため、複数のＷＷＷサーバに対するアクセス順序を制御することができないという課題があった。
【００１４】
また、取得要求ＵＲＬキュー１０５において同一ＷＷＷサーバ内のウェブページに対するリンクが連続した場合、当該ＷＷＷサーバに対する負荷が増加する。この負荷増加を抑制するため、従来では先行するＵＲＬのダウンロード完了後、一定の時間間隔を空けてから続くＵＲＬのウェブページをダウンロードすることが行われていた。
【００１５】
しかしながら、この探索方式では、異なるＷＷＷサーバから並行してウェブページをダウンロードするにあたり、リンクが連続するＷＷＷサーバに対するアクセスの時間間隔が他のＷＷＷサーバに対する時間間隔と異なってしまうため、実質的に異なるＷＷＷサーバから並行してウェブページのダウンロードを行なえる可能性が低くなる。このため、ウェブページの収集速度が低下してしまうという課題があった。
【００１６】
さらに、ウェブページの収集速度を上げるために、取得要求ＵＲＬキュー１０５の格納された先頭のＵＲＬから検索して異なるＷＷＷサーバを見つけ、並行してダウンロードを行なう探索方式も提案・実施されている。しかしながら、取得要求ＵＲＬキュー１０５の容量が大きくなった場合、実質的に後から格納されたＵＲＬは検索待ちの状態になることから、検索効率が低下すると共に、ウェブページの収集速度の低下を招くという課題があった。
【００１７】
以上のように、従来のＷＷＷ情報収集装置ではウェブページ収集速度の向上とＷＷＷサーバに対する負荷抑制とを両立させることができなかった。
【００１８】
この発明は上記のような課題を解決するためになされたもので、通信ネットワークを介して複数の情報提供サーバからウェブページなどのハイパテキスト情報を網羅的に収集するにあたり、収集したハイパテキスト情報から抽出したＵＲＬを各情報提供サーバごとに管理して各サーバに対するアクセス順序を制御することで、情報収集速度の向上とサーバに対する負荷抑制とを両立させることができる情報収集装置、情報収集方法及びこれをコンピュータ装置に具現化させるプログラムを得ることを目的とする。
【００２１】
【課題を解決するための手段】
この発明に係る情報収集装置は、ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出するリンク抽出手段と、ＵＲＬが、該ＵＲＬに記述される各情報をその文字列順にページに割り当ててなるＢ木によって索引付けして登録されるＵＲＬインデックス部、ＵＲＬに記述されたリンク先のサーバ装置を特定するサーバ名情報を、該サーバ名情報で特定されるサーバ装置との通信順に格納するサーバ名情報記憶手段、及び収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とを用いて、サーバ装置ごとの優先度を設定する優先度設定テーブル部を有し、上記優先度設定テーブル部によって設定された優先度に応じた通信順で上記サーバ名情報を上記サーバ名情報記憶手段に格納し、上記リンク抽出手段が抽出した上記ＵＲＬに基づいて上記ＵＲＬインデックス部を検索して未登録であれば、該ＵＲＬを上記ＵＲＬインデックス部に上記索引付けを施して登録すると供に、上記サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すＵＲＬ管理手段と、該ＵＲＬ管理手段によって、上記ＵＲＬインデックス部から読み出された上記ＵＲＬに対応する上記ハイパテキスト情報を収集する通信手段とを備えるものである。
【００２２】
この発明に係る情報収集装置は、ＵＲＬインデックス部が、ディレクトリ階層の深さに応じてＵＲＬの読み出し順を設定するものである。
【００２３】
この発明に係る情報収集装置は、ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出するリンク抽出手段と、ＵＲＬが、該ＵＲＬに記述されたリンク先のサーバ装置を特定するサーバ名情報をキーとするハッシュによって索引付けして登録されるＵＲＬインデックス部、上記サーバ名情報を、該サーバ名情報で特定されるサーバ装置との通信順に格納するサーバ名情報記憶手段、及び収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とを用いて、サーバ装置ごとの優先度を設定する優先度設定テーブル部を有し、上記優先度設定テーブル部によって設定された優先度に応じた通信順で上記サーバ名情報を上記サーバ名情報記憶手段に格納し、上記リンク抽出手段が抽出した上記ＵＲＬに基づいて上記ＵＲＬインデックス部を検索して未登録であれば、該ＵＲＬを上記ＵＲＬインデックス部に上記索引付けを実施して登録すると共に、上記サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すＵＲＬ管理手段と、該ＵＲＬ管理手段によって上記ＵＲＬインデックス部から読み出された上記ＵＲＬに対応する上記ハイパテキスト情報を収集する通信手段とを備えるものである。
【００２４】
この発明に係る情報収集装置は、ハイパテキスト情報の内容及び／又は他のハイパテキスト情報からの参照数を用いて、ＵＲＬごとに読み出しの優先度を設定する優先度設定手段と、上記ＵＲＬ管理手段は、サーバ名情報と、上記優先度設定手段に設定されたＵＲＬの優先度との組み合わせを、ページに各々割り当ててなるＢ木によって索引付けしてＵＲＬインデックス部に登録し、サーバ名情報記憶手段から通信順に読み出したサーバ名情報に基づいて、上記ＵＲＬインデックス部を検索して通信対象のＵＲＬを読み出すものである。
【００２５】
この発明に係る情報収集装置は、ＵＲＬ管理手段が、複数のサーバ装置の各々に対応するＵＲＬを逐次読み出し、通信手段が、上記ＵＲＬ管理手段により逐次読み出されたＵＲＬに対応するサーバ装置にアクセスし、上記複数のサーバ装置との間でハイパテキスト情報の収集を並行して実行するものである。
【００２７】
この発明に係る情報収集装置は、ＵＲＬ管理手段が、収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とが所定の閾値を超えると、新たなＵＲＬの格納を行わないものである。
【００２８】
この発明に係る情報収集装置は、収集済みハイパテキスト情報のＵＲＬを登録する既取得ＵＲＬ登録手段を備え、ＵＲＬ管理手段が、通信手段によるハイパテキスト情報の収集が完了すると、該ハイパテキスト情報に対応するＵＲＬを既取得ＵＲＬ登録手段に登録したのち、該ＵＲＬを削除するものである。
【００２９】
この発明に係る情報収集装置は、ＵＲＬ管理手段が、読み出すべきＵＲＬを予め読み出して格納するＵＲＬキャッシュを備えるものである。
【００３７】
【発明の実施の形態】
以下、この発明の実施の一形態を説明するものである。
実施の形態１．
図１はこの発明の実施の形態１によるＷＷＷ情報収集装置の構成を示す図である。図において、１は実施の形態１によるＷＷＷ情報収集装置（情報収集装置）であって、取得要求ＵＲＬ管理手段３に管理される取得要求ＵＲＬを読み出してＷＷＷ上のウェブページ（ハイパテキスト情報）を網羅的に収集する。２はインターネットで、任意のＷＷＷサーバＡ〜Ｃが接続すると共に、ＷＷＷ情報収集装置１及びこれを用いた検索システムと接続している。３は取得要求ＵＲＬ管理手段（ＵＲＬ管理手段）であって、収集すべきウェブページのＵＲＬをその文字列順に格納し、これらＵＲＬに対応するＷＷＷサーバとの通信状態を管理すると共に、これらに対応する「ＷＷＷサーバ名」（サーバ名情報）を先入れ先出し順で格納する。４はインターネット２を介してＷＷＷサーバＡ〜Ｃとの通信を行うダウンロード手段（通信手段）で、ＷＷＷサーバＡ〜Ｃからウェブページをダウンロードする。５は既取得ＵＲＬ記憶手段（既取得ＵＲＬ登録手段）であって、同じＵＲＬのウェブページの重複したダウンロードを防ぐために既に取得したウェブページのＵＲＬの一覧を格納する。６はＵＲＬコンテンツ記憶手段で、ダウンロードしたウェブページの内容を格納する。７はリンク抽出手段であって、ＵＲＬコンテンツ記憶手段６が格納するウェブページからＨＴＭＬのハイパーリンクを抽出して取得要求ＵＲＬ管理手段３に送出する。Ａ〜Ｃはインターネット２に接続する任意のＷＷＷサーバ（サーバ装置）である。
【００３８】
図２は図１中の取得要求ＵＲＬ管理手段の構成を示すブロック図である。図において、８はＵＲＬインデックス（ＵＲＬインデックス部）であって、ＵＲＬを文字列順にソートし索引付けして記憶する。９はＷＷＷサーバテーブルで、現在までに取得要求ＵＲＬ管理手段３に登録された全てのＵＲＬに含まれる「ＷＷＷサーバ名」とこれに対応するＷＷＷサーバの通信状態とが登録される。１０は「ＷＷＷサーバ名」を先入れ先出し順に格納するＷＷＷサーバキュー（サーバ名情報記憶手段）であって、ＷＷＷサーバテーブル９において「ダウンロード待ち状態」のＷＷＷサーバに対応する「ＷＷＷサーバ名」が格納される。なお、図１と同一構成要素には同一符号を付して重複する説明を省略する。
【００３９】
ここで、ＷＷＷサーバテーブル９及びＷＷＷサーバキュー１０の概要を説明する。
先ず、ＷＷＷサーバテーブル９において、１つのＷＷＷサーバに対応するエントリ数は１又は０（未登録）であり、「ＷＷＷサーバ名」をキーとしてＢ木やハッシュなどのインデックスを作成することで探索を効率化することができる。また、各ＷＷＷサーバの通信状態（各ＷＷＷサーバの「ＷＷＷサーバ名」とこれの通信状態とを入力するエントリの内容）は、「休止」、「ダウンロード待ち」、「ダウンロード中」のいずれか１つであり、それぞれダウンロードすべきＵＲＬがない状態、ＷＷＷサーバキュー１０に登録された状態、ダウンロードを行なっている状態を表している。さらに、ＷＷＷサーバキュー１０は先入れ先出し順で「ＷＷＷサーバ名」を管理し、「ＷＷＷサーバ名」自体での探索は行なわない。このため、「ＷＷＷサーバ名」の代わりに、ＷＷＷサーバを一意に識別できる情報、例えばＷＷＷサーバテーブル９におけるエントリの位置などを利用してもよい。
【００４０】
次に、ＵＲＬインデックス８の概要を説明する。
図３は図２中のＵＲＬインデックスを示す図である。図において、１１は取得要求ＵＲＬを文字列順にソートして格納するリーフページであって、ＵＲＬを文字列順に格納する格納領域とポインタ１２との対で構成される。１２は複数のリーフページ１１を連結するポインタで、次に連結すべきリーフページ１１内の最初のＵＲＬ文字列の格納場所（アドレス）を示す情報である。１３はリーフページ１１の上位階層を有するノードページであって、各リーフページ１１を導くポインタ１４と、参照先のリーフページ１１内の最後に位置するＵＲＬ文字列を格納する格納領域とから構成されている。１４はリーフページ１１を参照する際に各リーフページ１１を導くポインタで、参照すべきリーフページ１１の格納場所（アドレス）を示す情報である。
【００４１】
図３に示すように、ＵＲＬインデックス８において、取得要求ＵＲＬは１つ以上の固定サイズのリーフページ１１に格納される。また、各リーフページ１１に対しては当該リーフページに対するポインタ１４を格納する固定サイズのノードページ１３がただ一つ存在する。このノードページ１３は１つ以上存在し、複数のノードページ１３が存在すると、当該ノードページ１３を参照するさらに上位のノードページが作られる。この最上位のノードページをルートページと呼ぶ。
【００４２】
以上に述べたＵＲＬインデックス８の構造は、ＵＲＬ文字列に対してＢ＋木インデックスを作成したものに相当する。Ｂ＋木インデックスの探索、挿入、削除のアルゴリズムは、例えばＤｏｎａｌｄ  Ｅ．Ｋｎｕｔｈ著「Ｔｈｅ  Ａｒｔ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｐｒｏｇｒａｍｍｉｎｇ，Ｖｏｌｕｍｅ３，Ｓｏｒｔｉｎｇ  ａｎｄ  Ｓｅａｒｃｈｉｎｇ」（Ｒｅａｄｉｎｇ，Ｍａｓｓａｃｈｕｓｅｔｔｓ：Ａｄｄｉｓｏｎ−Ｗｅｓｌｅｙ刊，１９７３年，ＩＳＢＮ  ０−２０１−０３８０３−Ｘ）に詳しく説明されているものを適用する。
【００４３】
また、ＵＲＬの格納順はＵＲＬ文字列から一意に決定できれば十分であり、ソートの基準は必ずしも文字コードの単純比較に限らない。例えば、ＵＲＬのＷＷＷサーバ内識別子は階層的なファイル名に対応しており、ＷＷＷサーバ内識別子の「／」記号に先行する部分はディレクトリを表すものと考えることができる。通常、同じディレクトリ内には関連するファイルやサブディレクトリを配置し、より一般的な情報は上位のディレクトリに格納して下位のディレクトリには詳細な情報を格納する。
【００４４】
そこで、ＵＲＬ文字列を「／」記号で規定されるディレクトリごとに分割してページ１１，１３などに割り当て、各ディレクトリ階層の深さの順を優先して、同一深さのディレクトリ間で文字列順に格納する。これにより、ディレクトリ階層の浅いＵＲＬを先頭近くに格納することもできる。このようなソート順を採用すると、ＷＷＷサーバごとに重要性の高いＵＲＬから並べることができるようになる。
【００４５】
次に動作について説明する。
図４は図１中のＷＷＷ情報収集装置の動作を概略的に示すフロー図であり、この図に沿ってＷＷＷ情報収集装置の動作概要を説明する。
先ず、取得要求ＵＲＬ管理手段３は、既知のＵＲＬを初期ＵＲＬとして登録する（ステップＳＴ１）。この取得要求ＵＲＬ管理手段３によるＵＲＬの登録手順は後述する。ここで、初期ＵＲＬとしては、多くのウェブページをダウンロードするために、多くのリンクを含むウェブページのＵＲＬを指定することが望ましい。
【００４６】
次に、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバキュー１０の状態を調べ、ＵＲＬの構成要素を分解して抽出した「ＷＷＷサーバ名」に対応する文字列が格納されていれば、ステップＳＴ３の処理に移行し、格納されておらず空であればステップＳＴ１１の処理に移行する（ステップＳＴ２）。
【００４７】
ステップＳＴ３において、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバキュー１０の先頭のエントリの内容を読み出し、「ＷＷＷサーバ名」を取得する。次いで、ＵＲＬインデックス８を探索して、当該「ＷＷＷサーバ名」に対応するＵＲＬがに登録されているか否かを調べる。このとき、上記ＵＲＬがＵＲＬインデックス８に登録されていれば、ステップＳＴ５の処理に移行し、登録されていなければステップＳＴ１０の処理に移行する（ステップＳＴ４）。ここで、「ＷＷＷサーバ名」が、例えば「ｗｗｗ．ｂｂｂ．ｃｏ．ｊｐ」なる文字列であると、これに対応するＵＲＬは「ｈｔｔｐ：／／ｗｗｗ．ｂｂｂ．ｃｏ．ｊｐ」で始まる文字列となる。即ち、ＵＲＬを文字列順で配置すると、同一の「ＷＷＷサーバ名」に対応するＵＲＬが必ず連続的に配置されることになる。これによる効果としては、ＵＲＬインデックス８ではリーフページ１１にＵＲＬを文字列順で格納していることから、例えば「ｈｔｔｐ：／／ｗｗｗ．ｂｂｂ．ｃｏ．ｊｐ」で始まるＵＲＬが、ＷＷＷサーバ「ｗｗｗ．ｂｂｂ．ｃｏ．ｊｐ」に対応するＵＲＬであることを容易に探索することができる。従って、ＵＲＬを文字列順で配置することで、ＵＲＬインデックス８内に対象とする「ＷＷＷサーバ名」に対応するＵＲＬが存在するか否かを効率的に探索することができる。
【００４８】
ステップＳＴ５において、「ＷＷＷサーバ名」に対応するＵＲＬがＵＲＬインデックス８に登録されている場合、取得要求ＵＲＬ管理手段３は、当該「ＷＷＷサーバ名」に対応するＵＲＬのうち文字列順で登録された先頭のＵＲＬをＵＲＬインデックス８から読み出してダウンロード手段４に送出する。この段階で、当該ＵＲＬはＵＲＬインデックス８に登録された状態を維持し、ＵＲＬインデックス８から削除されない。これは、以降のダウンロードの最中にＷＷＷ情報収集装置１に障害が発生した場合に、当該ＵＲＬの取得要求が失われるのを防ぐためである。よって、ダウンロードが完了した時点で、当該ＵＲＬがＵＲＬインデックス８から削除される。
【００４９】
次に、ダウンロード手段４は、当該ＵＲＬが既取得ＵＲＬ記憶手段５に格納されているか否かを調べ、当該ＵＲＬが格納されていないとステップＳＴ７の処理に移行し、格納されているとステップＳＴ９の処理に移行する（ステップＳＴ６）。ステップＳＴ９において、ダウンロード手段４は、当該ＵＲＬが取得済みであると判断し、これをＵＲＬインデックス８から削除した後、ステップＳＴ４の処理に戻って、上記「ＷＷＷサーバ名」に対応する別のＵＲＬを探索する。
【００５０】
一方、既取得ＵＲＬ記憶手段５に格納されておらず、当該ＵＲＬが未取得であると判断されると、ダウンロード手段４は、その旨を取得要求ＵＲＬ管理手段３に通知して、ＷＷＷサーバテーブル９の当該ＷＷＷサーバに対応するエントリの状態を「ダウンロード中」に変更させる（ステップＳＴ７）。
【００５１】
続いて、ダウンロード手段４は、当該ＵＲＬのダウンロードを起動し、上記「ＷＷＷサーバ名」に対応するＷＷＷサーバと通信接続してウェブページをダウンロードする（ステップＳＴ８）。このあと、ＷＷＷ情報収集装置１は、ステップＳＴ２の処理に戻って別のＷＷＷサーバに対するダウンロードを試みる。ここで、上述したダウンロード動作は、図４に示す動作と並行して実行される。このため、ステップＳＴ８において、ダウンロード手段４は、先行するＵＲＬに対応するウェブページのダウンロード完了を待たない。このような並行動作は、例えば既存のマルチスレッドの技法によって新たなスレッドを生成してダウンロードを実行することで実現される。ダウンロード動作自体の詳細は後述する。
【００５２】
一方、ステップＳＴ４において、ＵＲＬインデックス８内に当該「ＷＷＷサーバ名」に対応するＵＲＬがなかった場合、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９における上記「ＷＷＷサーバ名」に対応するエントリの内容を「休止」に変更する（ステップＳＴ１０）。このあと、ステップＳＴ２の処理に戻って、別のＷＷＷサーバに対するダウンロードを試みる。
【００５３】
また、ステップＳＴ２において、ＷＷＷサーバキュー１０に「ＷＷＷサーバ名」が格納されていなかった場合、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９中にエントリの内容が「ダウンロード中」の通信状態に対応する「ＷＷＷサーバ名」が存在するか否かを調べる（ステップＳＴ１１）。このとき、「ダウンロード中」のエントリが存在する場合、取得要求ＵＲＬ管理手段３は、ステップＳＴ２に戻ってＷＷＷサーバキュー１０に他の「ＷＷＷサーバ名」が格納されるまで待機する（待機ループ）。一方、ＷＷＷサーバキュー１０に「ＷＷＷサーバ名」が格納されておらず、且つ、ＷＷＷサーバテーブル９に「ダウンロード中」状態のエントリが存在しない場合、取得要求ＵＲＬ管理手段３は、全てのＷＷＷサーバが「休止」状態になったと判断して動作を終了する。
【００５４】
図５は図１中の取得要求ＵＲＬ管理手段による動作を示すフロー図であり、この図に沿ってＵＲＬの登録動作について詳細に説明する。
先ず、取得要求ＵＲＬ管理手段３は、ダウンロード手段４から登録しようとするＵＲＬが既取得ＵＲＬ記憶手段５に既に存在しているか否かの通知を受ける。このとき、対象とするＵＲＬが既取得ＵＲＬ記憶手段５に存在しているとの通知を受けると、取得要求ＵＲＬ管理手段３は、当該ＵＲＬが取得済みであると判断して登録せずに動作を終了する一方、対象とするＵＲＬが存在しない旨の通知である場合、当該ＵＲＬが未取得であると判断してステップＳＴ２ａの処理に移行する（ステップＳＴ１ａ）。
【００５５】
ステップＳＴ２ａにおいて、取得要求ＵＲＬ管理手段３は、ＵＲＬインデックス８を検索して当該ＵＲＬが存在するか否かを調べる。このとき、ＵＲＬインデックス８に存在する場合、当該ＵＲＬの登録は不要であるので動作を終了する。一方、当該ＵＲＬがＵＲＬインデックス８に存在しない場合、取得要求ＵＲＬ管理手段３は、ステップＳＴ３ａの処理に進み、ＵＲＬインデックス８への挿入を行う。
【００５６】
次に、取得要求ＵＲＬ管理手段３は、当該ＵＲＬを構成する文字列から「ＷＷＷサーバ名」部分を取り出し（ステップＳＴ４ａ）、当該「ＷＷＷサーバ名」がＷＷＷサーバテーブル９に登録されているかどうかを調べる（ステップＳＴ５ａ）。このとき、ＷＷＷサーバテーブル９に当該「ＷＷＷサーバ名」が既に登録されていると、取得要求ＵＲＬ管理手段３は、直ちにステップＳＴ７ａの処理に進み、未登録の場合はステップＳＴ６ａの処理に進む。ステップＳＴ６ａにおいて、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９に当該「ＷＷＷサーバ名」とその通信状態の登録を行い、ステップＳＴ７ａの処理に進む。ここで、ＷＷＷサーバテーブル９に登録するエントリの内容としては、当該「ＷＷＷサーバ名」と、その通信状態である「休止」が設定される。
【００５７】
続いて、取得要求ＵＲＬ管理手段３は、当該「ＷＷＷサーバ名」に対応するＷＷＷサーバテーブル９のエントリの通信状態に関する内容を調べ、「休止」でなければ動作を終了し、通信状態が「休止」であるとステップＳＴ８ａの処理に移行する（ステップＳＴ７ａ）。
【００５８】
ステップＳＴ８ａにおいて、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９の当該エントリの通信状態に関する内容を「ダウンロード待ち」に設定する。このあと、当該「ＷＷＷサーバ名」をＷＷＷサーバキュー１０の末尾に挿入し、動作を終了する（ステップＳＴ９ａ）。
【００５９】
図６は実施の形態１によるＷＷＷ情報収集装置のウェブページの収集動作を示すフロー図であり、この図に沿ってダウンロード動作の詳細を説明する。
先ず、ダウンロード手段４は、取得要求ＵＲＬ管理手段３から設定されたダウンロード対象のＵＲＬに対応する「ＷＷＷサーバ名」で特定されるＷＷＷサーバのＩＰアドレスを取得する（ステップＳＴ１ｂ）。次いで、ダウンロード手段４は、上記ＷＷＷサーバとのＨＴＴＰ接続を確立し、ＧＥＴ要求を発行する（ステップＳＴ２ｂ）。
【００６０】
これにより、ダウンロード手段４は、インターネット２を介してＷＷＷサーバから上記ＵＲＬに対応するウェブページを収集し、これをＵＲＬコンテンツ記憶手段６に格納する（ステップＳＴ３ｂ）。このあと、ダウンロード手段４は、直ちに当該ＵＲＬを既取得ＵＲＬ記憶手段５に格納する（ステップＳＴ４ｂ）。これに伴って、取得要求ＵＲＬ管理手段３は、当該ＵＲＬをＵＲＬインデックス８から削除する（ステップＳＴ５ｂ）。
【００６１】
上述したステップＳＴ４ｂ及びステップＳＴ５ｂを不可分の操作として実行することで、当該ＵＲＬはＵＲＬインデックス８に存在するか、既取得ＵＲＬ記憶手段５に存在するかのいずれかの状態になる。つまり、何らかの障害があってその障害から回復したとき、ダウンロードすべきウェブページのＵＲＬが既取得ＵＲＬ記憶手段５に存在する場合、障害発生前にダウンロードが完了していたものと判断され、当該ＵＲＬがＵＲＬインデックス８から削除される。一方、ダウンロードすべきウェブページのＵＲＬが既取得ＵＲＬ記憶手段５に存在しない場合、ＵＲＬインデックス８に存在する当該ＵＲＬをダウンロード手段４に設定してダウンロードを再開する。このようにすることで、何らかの障害により当該ＵＲＬのダウンロードが完了しなかった場合、回復時に当該ＵＲＬに対応するウェブページの再ダウンロードを行なうことが可能になると共に、当該ＵＲＬが既取得ＵＲＬ記憶手段５に存在するにも関わらず、再度ダウンロードされることを防ぐことができる。
【００６２】
続いて、リンク抽出手段７は、収集したウェブページをＵＲＬコンテンツ記憶手段６から読み出しそのＨＴＭＬデータからリンク情報を抽出して、１つ以上のリンクがあればリンク先ＵＲＬを取得要求ＵＲＬ管理手段３に送出し登録させる（ステップＳＴ６ｂ）。取得要求ＵＲＬ管理手段３によるＵＲＬの登録動作は上記と同様である。
【００６３】
次に、当該ＷＷＷサーバに対応するＵＲＬが連続している場合、ダウンロード手段４は、当該ＷＷＷサーバに対する次のアクセスまでの間隔が一定時間以上空くように待機する（ステップＳＴ７ｂ）。これに伴って、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９の当該ＷＷＷサーバに対応するエントリの通信状態に関する内容を「ダウンロード待ち」に変更する（ステップＳＴ８ｂ）。
【００６４】
このあと、取得要求ＵＲＬ管理手段３は、当該ＷＷＷサーバに対応する「ＷＷＷサーバ名」をＷＷＷサーバキュー１０の末尾に挿入して動作を終了する（ステップＳＴ９ｂ）。上述したように、ダウンロード手段４によるダウンロード動作は、スレッドなどの並行処理機構を用いて実現され、他のＷＷＷサーバに対するダウンロードとは独立して実行される。例えば、ステップＳＴ１ｂからステップＳＴ５ｂまでの処理を実現するプログラムや、ステップＳＴ７ｂからステップＳＴ９ｂまでの処理を実現するプログラムをスレッドとし、ＷＷＷサーバキュー１０に格納される複数の「ＷＷＷサーバ名」に対応する処理を並行して実行する。
【００６５】
以上のように、この実施の形態１によれば、収集すべき情報に対応する複数のＵＲＬをその文字列順に格納するＵＲＬインデックス８と、これらＵＲＬに含まれる「ＷＷＷサーバ名」を先入れ先出し順で格納するＷＷＷサーバキュー１０を備え、該ＷＷＷサーバキュー１０から逐次読み出される複数の「ＷＷＷサーバ名」に対応するＵＲＬをＵＲＬインデックス８に従って読み出して、各ＷＷＷサーバごとに独立してダウンロードを実行するので、同一ＷＷＷサーバに対するアクセス間隔を制御しつつ、同時に最大限のＷＷＷサーバからダウンロードを実行し収集速度を向上させることができる。
【００６６】
また、この実施の形態１によれば、ＵＲＬの文字列順としてＵＲＬ文字列中の「／」記号で区切った文字列をページに割り当てて階層化して、いわゆるＢ＋木を適用したＵＲＬインデックス８で管理し、ディレクトリの階層の浅いＵＲＬを優先して読み出すようにしたので、収集したＨＴＭＬデータからのＵＲＬの抽出順に関わらず、重要なウェブページから順にダウンロードすることができる。
【００６７】
さらに、この実施の形態１によれば、不可分の操作でダウンロード済ＵＲＬのＵＲＬインデックス８からの削除と既取得ＵＲＬ記憶手段５への登録を行なうので、ダウンロード途中で障害が発生しても元の状態に回復することができる。
【００６８】
なお、ＷＷＷ情報収集装置１は、その構成要素をＩＣなどの専用のハードウェアを用いて構成してもよいし、ソフトウェア（ＷＷＷ情報収集プログラム）を実行するコンピュータ装置を用いて構成してもよい。
【００６９】
図７は、例えば図１中のＷＷＷ情報収集装置をコンピュータ装置で具現化した際のハードウェア構成を示す図である。図において、１５は当該コンピュータ装置のＣＰＵであって、上述したＷＷＷ情報収集装置１の各構成手段３〜７の機能を実現するＷＷＷ情報収集プログラムを実行する。１６はＷＷＷ情報収集プログラムや該プログラムの実行に必要なデータを格納するメモリであり、取得要求ＵＲＬ管理手段３のＷＷＷサーバテーブル９及びＷＷＷサーバキュー１０の機能を有している。１７はコンソールインタフェースで、コンソール入出力装置２１と装置１内部の構成部との間の情報送受を中継する。１８はハードディスク装置２２に対するアクセスを中継するディスクインタフェースで、１９はインターネット２との接続を中継するネットワークインタフェースである。また、２０は装置１の内部バスであって、ＣＰＵ１５、メモリ１６、コンソールインタフェース１７、ディスクインタフェース１８、及び、ネットワークインタフェース１９を接続する。２１はコンソール機能を実現するコンソール入出力装置で、装置１の制御や保守などを行うためのコマンド入力やフレームを表示する手段を有している。２２はハードディスク装置であり、既取得ＵＲＬ記憶手段５、ＵＲＬコンテンツ記憶手段６、取得要求ＵＲＬ管理手段３のＵＲＬインデックス８の機能を実現する。ハードディスク装置２２へのアクセスを高速化するため、メモリ１６の一部をキャッシュ領域に割り当て、頻繁にアクセスされるデータを常駐させるようにしてもよい。
【００７０】
次に動作について説明する。
先ず、ＷＷＷ情報収集プログラムを実行するＣＰＵ１５は、取得要求ＵＲＬ管理手段３として機能し、上記実施の形態１と同様に、既知のＵＲＬを初期ＵＲＬとして、ディスクインタフェース１８を介してハードディスク装置２２に記憶する。次いで、ＷＷＷサーバキュー１０として機能するメモリ１６の内容をチェックする。このとき、「ＷＷＷサーバ名」に関する情報が格納されていれば、メモリ１６に格納された順にそれを読み出す。続いて、ＣＰＵ１５は、読み出した「ＷＷＷサーバ名」に対応するＵＲＬが、ＵＲＬインデックス８として機能するハードディスク装置２２に登録されているか探索する。
【００７１】
上記「ＷＷＷサーバ名」に対応するＵＲＬがハードディスク装置２２に登録されている場合、当該ＵＲＬのうち文字列順で登録された先頭の１つを読み出す。続いて、ＣＰＵ１５は、当該ＵＲＬがハードディスク装置２２内の既取得ＵＲＬ記憶手段５として割り当てられた記憶領域に格納されているかどうか調べる。これによって、当該ＵＲＬが上記記憶領域に格納されていると、ハードディスク装置２２内のＵＲＬインデックス８として割り当てられた記憶領域から削除した後、上記「ＷＷＷサーバ名」に対応する別のＵＲＬを探索する。
【００７２】
一方、当該ＵＲＬが既取得ＵＲＬ記憶手段５として割り当てられた記憶領域に格納されていない場合、ＣＰＵ１５は、ＷＷＷサーバテーブル９として機能するメモリ１６の上記「ＷＷＷサーバ名」に対応するエントリの状態を「ダウンロード中」に変更する。次いで、ＣＰＵ１５は、ＷＷＷ情報収集プログラム内の通信プログラムを実行して、ネットワークインタフェース１９と共にダウンロード手段として機能し、当該ＵＲＬに対応するＷＷＷサーバにアクセスして対応するウェブページがダウンロードされる。このあと、ＣＰＵ１５は、上記と同様にしてＷＷＷサーバキュー１０として機能するメモリ１６の内容をチェックし、逐次ウェブページのダウンロードを実行する。
【００７３】
なお、上記構成では、ＵＲＬインデックス８及び既取得ＵＲＬ記憶手段５がハードディスク装置２２を共有し、不可分の操作でダウンロード済ＵＲＬのＵＲＬインデックス８からの削除と既取得ＵＲＬ記憶手段５への登録を行なうことができる。これにより、ダウンロード途中で障害が発生しても元の状態に回復することができる。
【００７４】
実施の形態２．
この実施の形態２では、上記実施の形態１で示したＵＲＬインデックス８をＢ＋木の代わりに「ＷＷＷサーバ名」をキーとするハッシュを用いて実現するものである。
【００７５】
図８はこの発明の実施の形態２による取得要求ＵＲＬ管理手段の構成を示す図である。図において、３ａは実施の形態２による取得要求ＵＲＬ管理手段（ＵＲＬ管理手段）であって、収集すべきウェブページのＵＲＬをＷＷＷサーバごとに先入れ先出し順で格納し、これらＵＲＬに対応するＷＷＷサーバとの通信状態を管理すると共に、これらに対応する「ＷＷＷサーバ名」を先入れ先出し順で格納する。８ａはＵＲＬインデックス（ＵＲＬインデックス部）で、収集すべき複数のＵＲＬををＷＷＷサーバごとに先入れ先出し順で格納する。２３はＵＲＬキャッシュであって、ＵＲＬ文字列をキーとする有限サイズのハッシュテーブルである。なお、図２と同一構成要素には同一符号を付して重複する説明を省略する。
【００７６】
図９は図８中のＵＲＬインデックスを示す図である。図において、２４は複数のポインタ２５を配列要素とするヘッダであって、「ＷＷＷサーバ名」に適当なハッシュ関数を適用して得られる数値（ハッシュ値）を配列の項番として１つのポインタ２５が選択される。ここで、ハッシュ関数は、例えば「ＷＷＷサーバ名」の文字コードの総和をヘッダ２４の配列要素数で割った剰余とすることができる。２５は固定サイズを有するバケット２６の格納場所を指定するポインタで、「ＷＷＷサーバ名」に対応するハッシュ値によって特定される。２６はポインタ２５によって特定されるバケットであって、各ハッシュ値に対応するＷＷＷサーバに属するＵＲＬ文字列が登録順に格納される。２７はバケット２６の格納領域以上の数のＵＲＬを格納する際に複数のバケット２６間を連結するあふれポインタである。
【００７７】
また、ＵＲＬインデックス８ａにおいて、異なる「ＷＷＷサーバ名」が同一のハッシュ値を持つこともあり、その場合は１つのバケット２６に複数のＷＷＷサーバに対応するＵＲＬが混在することになる。さらに、同一のハッシュ値に対応するＵＲＬが多く、１つのバケット２６では格納領域が不足する場合は、あふれポインタ２７を用いて複数のバケット２６が連結される。
【００７８】
次に動作について説明する。
先ず、この実施の形態２と上記実施の形態１とにおいて動作が相違する箇所について説明する。上述したように、この実施の形態２では、ＵＲＬインデックスの実現方式がＢ木からハッシュに変更されている。このため、上記実施の形態１によるＷＷＷ情報収集装置１の概略的な動作を示す図４のうち、ステップＳＴ４、ステップＳＴ５及びステップＳＴ９の処理が、ＵＲＬインデックス８ａの特徴に応じて変更される。具体的には、ステップＳＴ４において、取得要求ＵＲＬ管理手段３ａは、ＷＷＷサーバキュー１０の先頭から読み出した「ＷＷＷサーバ名」に対応するＵＲＬがＵＲＬインデックス８ａに存在するか否かを、当該「ＷＷＷサーバ名」にハッシュ関数を適用して算出したハッシュ値に対応するポインタ２５がヘッダ２４に存在するか否かで判断する。また、ステップＳＴ５やステップＳＴ９における処理は、当該「ＷＷＷサーバ名」に対応するハッシュ値で特定されるポインタ２５によってバケット２６を読み出し、適宜ＵＲＬを探索してその取り出しや削除が行われる。
【００７９】
一方、上記実施の形態１によるＷＷＷ情報収集装置１におけるＵＲＬの登録動作の詳細を示す図５のうち、ステップＳＴ２ａ及びステップＳＴ３ａの処理も、当該「ＷＷＷサーバ名」にハッシュ関数を適用して算出したハッシュ値に対応するポインタ２５がヘッダ２４に存在するか否かで判断し、このハッシュ値で特定されるポインタ２５によって読み出されるバケット２６から適宜ＵＲＬを探索して取り出しが行われる。
【００８０】
さらに、上記実施の形態１によるＷＷＷ情報収集装置１におけるダウンロード動作の詳細を示す図６のうち、ステップＳＴ５ｂの処理も同様に、当該「ＷＷＷサーバ名」にハッシュ関数を適用して算出したハッシュ値で特定されるポインタ２５によってバケット２６を読み出し、適宜ＵＲＬを探索して削除が行われる。
【００８１】
ここで、この実施の形態２では、ＵＲＬインデックス８ａのバケット２６中ではＵＲＬが登録順に格納されている。このため、上記実施の形態１のように、ＵＲＬ文字列をキーとする検索は線形探索が必要となって効率的でない。そこで、ＵＲＬインデックス８ａ中のＵＲＬの重複を許容して、図５におけるステップＳＴ２ａの処理を取り除いてもよい。この場合も、当該ＵＲＬに関するダウンロードを行うにあたり、図４中のステップＳＴ６において、既取得ＵＲＬ記憶手段５が参照されてＵＲＬの重複除去が行なわれる。これにより、ＵＲＬインデックス８ａ中にＵＲＬが重複して格納されてもダウンロード動作には影響を与えない。
【００８２】
また、図５のステップＳＴ２ａにおいて、ＵＲＬインデックス８ａの代わりにＵＲＬ文字列をキーとするハッシュテーブルを用いて重複除去を行なうこともできる。
【００８３】
図１０は図８中の取得要求ＵＲＬ管理手段の動作を示すフロー図であり、ＵＲＬインデックス８ａ中のＵＲＬの重複を許容した際、図５中のステップＳＴ２ａに代わって行われる処理を示している。
先ず、取得要求ＵＲＬ管理手段３ａは、上記実施の形態１と同様に、ダウンロード手段４から登録しようとするＵＲＬが既取得ＵＲＬ記憶手段５に既に存在しているか否かの通知を受ける。このとき、対象とするＵＲＬが既取得ＵＲＬ記憶手段５に既に存在しているとの通知であると、取得要求ＵＲＬ管理手段３ａは、当該ＵＲＬが取得済みであると判断して登録せずに動作を終了する一方、対象とするＵＲＬが存在しない旨の通知である場合、当該ＵＲＬが未取得であると判断してステップＳＴ２Ａ−１の処理に移行する（ステップＳＴ１ａ）。
【００８４】
ステップＳＴ２Ａ−１において、取得要求ＵＲＬ管理手段３ａは、ＵＲＬキャッシュ２３を構成するＵＲＬ文字列のハッシュテーブルを検索して、当該ＵＲＬが存在するか否かを調べる。このとき、ＵＲＬキャッシュ２３に存在する場合、当該ＵＲＬの登録は不要であるので動作を終了する。一方、当該ＵＲＬがＵＲＬキャッシュ２３に存在しない場合、取得要求ＵＲＬ管理手段３ａは、ステップＳＴ２Ａ−２の処理に進み、ＵＲＬキャッシュ２３に新たなＵＲＬを登録する空き領域があるか否かを判断する。
【００８５】
ここで、ＵＲＬキャッシュ２３に全てのＵＲＬを保持することはその記憶領域の浪費につながるため、登録するＵＲＬ数に制限を設けて、最近登録されたＵＲＬのみを保持するようにする。つまり、ステップＳＴ２Ａ−２において、取得要求ＵＲＬ管理手段３ａは、ＵＲＬキャッシュ２３に空き領域がないと判断すると、ステップＳＴ２Ａ−３の処理に進んで最も古いＵＲＬをＵＲＬキャッシュ２３から削除して、ＵＲＬの格納領域を確保したあと、ステップＳＴ２Ａ−４の処理に進む。このとき、削除するＵＲＬは登録順で選択してもよいし、ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）方式に基づいて参照された順を基準に用いてもよい。
【００８６】
一方、ステップＳＴ２Ａ−２において、取得要求ＵＲＬ管理手段３ａがＵＲＬキャッシュ２３に空き領域があると判断すると、ステップＳＴ２Ａ−４の処理に進んで取得要求ＵＲＬをＵＲＬキャッシュ２３に登録したあと、図５におけるステップＳＴ４ａの処理に移行する。
【００８７】
以上のように、この実施の形態２によれば、収集すべき複数のＵＲＬ自体をＷＷＷサーバ毎に先入れ先出し順で格納するＵＲＬインデックス８ａと、「ＷＷＷサーバ名」を先入れ先出し順で格納するＷＷＷサーバキュー１０とを備え、該ＷＷＷサーバキュー１０から逐次読み出される複数の「ＷＷＷサーバ名」に対応するＵＲＬをＵＲＬインデックス８ａに従って読み出し、これに対応するＷＷＷサーバとの通信状態を各々管理しながらダウンロード動作を並行して実行するので、同一ＷＷＷサーバに対するアクセス間隔を制御しつつ、同時に最大限のＷＷＷサーバからダウンロードを実行し収集速度を向上させることができる。
【００８８】
なお、上記実施の形態２のハードウェア構成も、上記実施の形態１と同様に、専用のハードウェア又はＷＷＷ情報収集プログラムを実行するコンピュータ装置を用いて実現することができる。
【００８９】
実施の形態３．
この実施の形態３では、上記実施の形態１のＷＷＷサーバテーブル９に対して特定の情報を付加し、当該情報に基づいてＷＷＷサーバに対する優先度を付与してＷＷＷサーバキューへの挿入位置を決定するものである。
【００９０】
図１１はこの発明の実施の形態３によるＷＷＷ情報収集装置のＷＷＷサーバテーブルを示す図である。図において、９ａは実施の形態３によるＷＷＷサーバテーブル（優先度設定テーブル部）であり、ＷＷＷサーバごとに、「ＷＷＷサーバ名」及びその通信状態に加えて、ＵＲＬインデックス８に格納されたＵＲＬ数を示す取得要求ＵＲＬ数、既取得ＵＲＬ記憶手段５に格納されたＵＲＬ数を示す既取得ＵＲＬ数、及び、これらから算出した優先度を格納する。なお、ＷＷＷサーバテーブル９ａ以外の構成は、上記実施の形態１で示したものと同一であるものとする。
【００９１】
次に動作について説明する。
図１２は実施の形態３の取得要求ＵＲＬ管理手段による動作を示すフロー図であり、この図に示すフローは上記実施の形態１におけるＵＲＬの登録動作の詳細を示す図５のうち、ステップＳＴ４ａ以降の処理に置き換わるものである。
図５中のステップＳＴ１ａからステップＳＴ３ａまでの処理が行った後、取得要求ＵＲＬ管理手段３は、取得要求ＵＲＬを構成する文字列から「ＷＷＷサーバ名」部分を取り出す（ステップＳＴ４ａ）。続いて、取得要求ＵＲＬ管理手段３は、当該ＵＲＬから取り出した「ＷＷＷサーバ名」がＷＷＷサーバテーブル９ａに登録されているか判断し、登録済みであればステップＳＴ７Ａに進み、未登録であればステップＳＴ６Ａに進む（ステップＳＴ５Ａ）。
【００９２】
ステップＳＴ６Ａでは、取得要求ＵＲＬ管理手段３によって当該「ＷＷＷサーバ名」を設定した新規のエントリがＷＷＷサーバテーブル９ａに追加され、ステップＳＴ７Ａに進む。ここで、新規のエントリの各項目は、通信状態＝「休止」、取得要求ＵＲＬ数＝既取得ＵＲＬ数＝０に設定される。
【００９３】
次に、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９ａの当該ＷＷＷサーバに対応するエントリの取得要求ＵＲＬ数に１を加える（ステップＳＴ７Ａ）。このあと、取得要求ＵＲＬ管理手段３は、当該エントリの通信状態に関する内容を調べて「休止」でなければステップＳＴ１０Ａの処理に移行し、「休止」であればステップＳＴ９Ａの処理に進む（ステップＳＴ８Ａ）。ステップＳＴ９Ａでは、取得要求ＵＲＬ管理手段３によって当該エントリの通信状態に関する内容が「ダウンロード待ち」に設定されたのち、ステップＳＴ１０Ａの処理に移行する。
【００９４】
ステップＳＴ１０Ａにおいて、取得要求ＵＲＬ管理手段３は、当該エントリの通信状態に関する内容を調べ、「ダウンロード中」であれば処理を終了する。一方、「ダウンロード中」でなければ、ステップＳＴ１１Ａの処理に進む。ステップＳＴ１１Ａでは、取得要求ＵＲＬ管理手段３によって当該エントリの優先度が設定され、当該優先度に基づいてＷＷＷサーバキュー１０の適切な位置に当該「ＷＷＷサーバ名」を挿入あるいは移動する。
【００９５】
ここで、上述した優先度の設定方法としては、例えば（取得要求ＵＲＬ数−既取得ＵＲＬ数）による差分値が大きいものを優先するように設定する。この場合、新たに発見されたＷＷＷサーバのうち、他のＷＷＷサーバから多数参照されているものから優先的にダウンロードすることになる。つまり、取得要求ＵＲＬ数が多いと、当該ＷＷＷサーバに対するリンクが、他のＷＷＷサーバが保持する多くのウェブページに含まれており、他のＷＷＷサーバから多数参照されるものと推察することができる。この参照の多さは、そのＷＷＷサーバの重要度を反映している。また、既取得ＵＲＬ数が少ないほど新たなウェブページに対するリンクが発見される可能性が高いと考えられる。
【００９６】
図１３は実施の形態３によるＷＷＷ情報収集装置のウェブページの収集動作を示すフロー図であり、この図に沿ってダウンロード動作を説明する。なお、この図１３は、上記実施の形態１におけるダウンロード動作の詳細を示す図６のうちステップＳＴ４ｂとステップＳＴ５ｂの間に追加する動作及びステップＳＴ９ｂに置き換わる動作を示している。
ステップＳＴ４ｂにおいて、ダウンロードしたＵＲＬを既取得ＵＲＬ記憶手段５に格納すると、取得要求ＵＲＬ管理手段３は、ＷＷＷサーバテーブル９ａの当該ＷＷＷサーバに対応するエントリの既取得ＵＲＬ数に１を加算する（ステップＳＴ４ｂ−１）。
これによって、後述するステップＳＴ９Ｂの処理において、ダウンロードがされるごとにＷＷＷサーバテーブル９ａの当該ＷＷＷサーバの優先度が動的に変更される。このあと、ステップＳＴ５ｂの処理に進み、ステップＳＴ８ｂまで上記実施の形態１と同様の動作がなされる。
【００９７】
続いて、ＷＷＷサーバテーブル９ａの当該ＷＷＷサーバに対応するエントリの通信状態に関する内容が「ダウンロード待ち」に設定される（ステップＳＴ８ｂ）と、取得要求ＵＲＬ管理手段３は、ステップＳＴ１１Ａと同様に、当該ＷＷＷサーバに対応するエントリの取得要求ＵＲＬ数及び既取得ＵＲＬ数に基づいてその優先度を設定し、当該優先度に基づいてＷＷＷサーバキュー１０の適切な位置に（優先度順となるように）当該「ＷＷＷサーバ名」を挿入する（ステップＳＴ９Ｂ）。
【００９８】
以上のように、この実施の形態３によれば、ＷＷＷサーバキュー１０に対してＷＷＷサーバごとの取得要求ＵＲＬ数及び既取得ＵＲＬ数に基づいて設定した優先度順に「ＷＷＷサーバ名」を格納するので、同一ＷＷＷサーバに対するアクセス間隔を制御しつつ、重要なウェブページやリンクを含むＷＷＷサーバに優先的にアクセスすることができ、収集した情報の質を高めることができる。
【００９９】
なお、上記実施の形態３では、各ＷＷＷサーバの優先度が同じ初期値を有する例を示したが、以前に実施したウェブページ収集完了時の優先度に基づいてＷＷＷサーバごとに異なる初期優先度を与えるようにしてもよい。このようにすることで、収集ページが少ない初期段階においても適切にＷＷＷサーバの優先度設定を行うことができる。
【０１００】
なお、上記実施の形態３におけるＵＲＬインデックスは、上記実施の形態２のＵＲＬインデックス８ａを用いてもよい。また、ＵＲＬキャッシュ２３と組み合わせてもよい。
【０１０１】
また、上記実施の形態３において、ＷＷＷサーバテーブル９ａの取得要求ＵＲＬ数及び既取得ＵＲＬ数に基づいて取得要求ＵＲＬの廃棄を行なうようにしてもよい。
つまり、図５及び図１２に示したＵＲＬの登録動作に先立って、取得要求ＵＲＬ管理手段３がＷＷＷサーバテーブル９ａの当該ＷＷＷサーバに対応するエントリを調べ、取得要求ＵＲＬ数又は既取得ＵＲＬ数が一定値を越えていたらＵＲＬの登録を行なわずにＵＲＬを廃棄する。このようにすることで、ＷＷＷサーバごとの取得要求ＵＲＬ数及び既取得ＵＲＬ数を制限することができる。これにより、優先度の低いＷＷＷサーバのＵＲＬ格納に関わる性能や記憶領域のオーバヘッドが除外されて、より効率的に優先度の高いＷＷＷサーバ対するアクセスを実現することができる。
【０１０２】
さらに、上記実施の形態３において、ＷＷＷサーバテーブル９ａにエラー発生回数を追加し、優先度の設定や取得要求ＵＲＬの廃棄に反映させてもよい。
つまり、図６のステップＳＴ３ｂにおいて、ＷＷＷサーバからのダウンロードが正常に完了しなかった際に、図１３のステップＳＴ４ｂ−１においてＷＷＷサーバテーブルのエラー発生回数も＋１加算する。エラー発生回数は、重み付けして優先度から差し引いたり、一定値を越えた場合に取得要求ＵＲＬを廃棄するのに用いられる。これにより、通信状態が良好でないＷＷＷサーバに繰り返しアクセスするオーバヘッドが除外されて、より効率的に正常なＷＷＷサーバに対するアクセスを実現することができる。
【０１０３】
実施の形態４．
この実施の形態４では、上記実施の形態１のＵＲＬインデックス８においてＵＲＬを文字列順に格納する代わりに、ＵＲＬに設定した優先度順に格納するものである。
【０１０４】
図１４はこの発明の実施の形態４によるＷＷＷ情報収集装置の構成を示す図である。図において、１ａは実施の形態４によるＷＷＷ情報収集装置（情報収集装置）であって、取得要求ＵＲＬ管理手段３ｂによって優先度順に管理される取得要求ＵＲＬを読み出してＷＷＷ上のウェブページを網羅的に収集する。３ｂは取得要求ＵＲＬ管理手段（ＵＲＬ管理手段）で、収集すべきウェブページのＵＲＬをその優先度順に格納し、これらＵＲＬに対応するＷＷＷサーバとの通信状態を管理すると共に、これらに対応する「ＷＷＷサーバ名」を先入れ先出し順で格納する。２８は優先度設定手段であって、ウェブページから抽出されたリンクのＵＲＬに対して優先度を設定する。
【０１０５】
次に動作について説明する。
この実施の形態４によるＷＷＷ情報収集装置１ａの基本的な動作としては、先ず、ダウンロード手段４がウェブページをダウンロードすると、ＵＲＬコンテンツ記憶手段６に格納する。このあと、リンク抽出手段７は、受信したウェブページをＵＲＬコンテンツ記憶手段６から読み出しそのＨＴＭＬデータからリンク情報を抽出する。
【０１０６】
このとき、優先度設定手段２８は、リンク抽出手段７が読み出したウェブページやこれを解析して抽出したリンク情報に対して、予め与えたキーワードの出現頻度や他のウェブページからの参照数などに基づいてウェブページの優先度を設定する。これに続いて、当該優先度を元に当該ウェブページから抽出されたリンクのＵＲＬに対しても優先度を設定する。これら優先度は、リンク抽出手段７を介して取得要求ＵＲＬ管理手段３ｂに送出されてＵＲＬインデックス８ｂに登録される。
【０１０７】
次にＵＲＬインデックス８ｂについて説明する。
図１５は図１４中の取得要求ＵＲＬ管理手段を構成するＵＲＬインデックスを示す図である。図において、８ｂは実施の形態４によるＵＲＬインデックス（ＵＲＬインデックス部）であって、ＵＲＬが文字列順ではなく、ＵＲＬの優先度順にソートされ記憶される。１１ａは取得要求ＵＲＬを対応する「ＷＷＷサーバ名」と当該ＵＲＬの優先度との組み合わせをキーとしてソートして格納するリーフページであって、ＵＲＬに関する情報の格納領域とポインタ１２ａとの対で構成される。１２ａは複数のリーフページ１１ａを連結するポインタで、次に連結すべきリーフページ１１ａの最初のＵＲＬ文字列の格納場所（アドレス）を示す情報である。１３ａはリーフページ１１ａの上位階層を有するノードページであって、各リーフページ１１ａを導くポインタ１４ａと参照先のリーフページ１１ａ内の最後に位置するＵＲＬ文字列を格納する格納領域とから構成されている。１４ａはリーフページ１１ａを参照する際に各リーフページ１１ａを導くポインタで、参照すべきリーフページ１１ａの格納場所（アドレス）を示す情報である。
【０１０８】
ＵＲＬインデックス８ｂにおいて、図１５に示すように、取得要求ＵＲＬに対応するキーは、例えば（ｗｗｗ．ａａａ．ｃｏ．ｊｐ（ＷＷＷサーバ名），２０（優先度））なる組み合わせで表される。また、リーフページ１１ａには、上記組み合わせに加えて、元のＵＲＬを復元することができるように、キーに対応するデータとしてＵＲＬのＷＷＷサーバ内識別子も格納する。
【０１０９】
上述したように、ＵＲＬインデックス８ｂは、取得要求ＵＲＬを「ＷＷＷサーバ名」とその優先度の組み合わせをキーとして管理する。このため、上記実施の形態１によるＷＷＷ情報収集装置１の概略的な動作を示す図４のうち、ステップＳＴ４、ステップＳＴ５及びステップＳＴ９の処理が、ＵＲＬインデックス８ｂの特徴に応じて変更される。具体的には、ステップＳＴ４において、取得要求ＵＲＬ管理手段３ｂは、ＷＷＷサーバキュー１０の先頭から読み出した「ＷＷＷサーバ名」に対応するＵＲＬがＵＲＬインデックス８ｂに存在するか否かを判断するにあたり、当該「ＷＷＷサーバ名」とＵＲＬの優先度の組み合わせをキーとしてノードページ１３ａ、リーフページ１１ａを探索する。つまり、当該「ＷＷＷサーバ名」に関する上記組み合わせがあるかどうかで判断する。また、ステップＳＴ５における処理では、当該「ＷＷＷサーバ名」とＵＲＬの優先度の組み合わせのうち最大の優先度を有する組み合わせを順次読み出し、当該「ＷＷＷサーバ名」とＷＷＷサーバ内識別子とを組み合わせて復元したＵＲＬを取り出す。ステップＳＴ９における処理では、ＵＲＬインデックス８ｂから当該「ＷＷＷサーバ名」に関する上記組み合わせ及びこれに対応するＷＷＷサーバ内識別子を削除することで、当該ＵＲＬの削除が行われる。
【０１１０】
一方、上記実施の形態１によるＷＷＷ情報収集装置１におけるＵＲＬの登録動作の詳細を示す図５のうち、ステップＳＴ２ａの処理も、ノードページ１３ａ、リーフページ１１ａ内に、当該「ＷＷＷサーバ名」に関する上記組み合わせがあるかどうかで判断する。また、この組み合わせから、当該「ＷＷＷサーバ名」を抽出しＷＷＷサーバ内識別子と組み合わせてＵＲＬを復元して取り出しが行われる。ステップＳＴ３ａの処理では、リーフページ１１ａ内に、当該「ＷＷＷサーバ名」の文字列順に当該ＵＲＬの優先度と組み合わせて挿入される。このとき、ＷＷＷサーバ内識別子も上記組み合わせに関連付けられて格納される。
【０１１１】
さらに、上記実施の形態１によるＷＷＷ情報収集装置１におけるダウンロード動作の詳細を示す図６のうち、ステップＳＴ５ｂの処理も、ＵＲＬインデックス８ｂから当該「ＷＷＷサーバ名」に関する上記組み合わせ及びこれに対応するＷＷＷサーバ内識別子を削除することで、当該ＵＲＬの削除が行われる。
【０１１２】
また、このＵＲＬインデックス８ｂでは、ＵＲＬ文字列をキーとする検索は非効率になる。このため、上記実施の形態２と同様に、ＵＲＬの重複した登録を防止するためのステップＳＴ２ａの処理を省略することができ、また、ＵＲＬキャッシュ２３と組み合わせて用いることもできる。
【０１１３】
以上のように、この実施の形態４によれば、収集すべきＵＲＬに優先度を設定する優先度設定手段２８と、ＷＷＷサーバ毎に優先度順にＵＲＬを格納するＵＲＬインデックス８ｂとを備えるので、ＷＷＷサーバに対するアクセス間隔を制御しつつ、予め与えたキーワードや参照数などに基づいて重要度の高いウェブページからダウンロードすることができ、収集した情報の質を高めることができる。
【０１１４】
【発明の効果】
以上のように、この発明によれば、ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出し、ＵＲＬに記述されるリンク先のサーバ装置を特定するサーバ名情報に基づいてサーバ装置ごとのＵＲＬの読み出し順を管理して、サーバ名情報を用いて読み出したＵＲＬに対応するハイパテキスト情報を収集するので、同一サーバ装置に対するアクセス間隔を制御しつつ、同時に複数のサーバ装置からハイパテキスト情報の収集を実行することができ、情報の収集速度を向上させることができるという効果がある。
【０１１５】
この発明によれば、ハイパテキスト情報に含まれるリンク情報を解析して、リンク先に対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を抽出し、ハイパテキスト情報の内容及び／又は他のハイパテキスト情報からの参照数を用いて、ＵＲＬごとに読み出しの優先度を設定し、ＵＲＬに記述されるリンク先のサーバ装置を特定するサーバ名情報、及び優先度に基づいてサーバ装置ごとのＵＲＬの読み出し順を管理して、サーバ名情報を用いて読み出したＵＲＬに対応するハイパテキスト情報を収集するので、同一サーバ装置に対するアクセス間隔を制御しつつ、重要なハイパテキスト情報の収集を優先して実行することができ、情報の質を向上させることができるという効果がある。
【０１１６】
この発明によれば、ＵＲＬに記述される各情報をその文字列順にページに割り当ててなるＢ木によってサーバ装置ごとのＵＲＬの読み出し順を管理するので、単一のインデックスで複数のサーバ装置の各々に対応するＵＲＬを管理することができるという効果がある。
【０１１７】
この発明によれば、ディレクトリ階層の深さに応じてＵＲＬの読み出し順を設定するので、単一のインデックスで複数のサーバ装置の各々に対応するＵＲＬを管理することができると共に、重要な情報を優先的に収集することができるという効果がある。
【０１１８】
この発明によれば、サーバ名情報をキーとするハッシュによってサーバ装置ごとのＵＲＬの読み出し順を管理するので、単一のインデックスで複数のサーバ装置の各々に対応するＵＲＬを管理することができるという効果がある。
【０１１９】
この発明によれば、サーバ名情報とＵＲＬの優先度の組み合わせをページに各々割り当ててなるＢ木によってサーバ装置ごとのＵＲＬの読み出し順を管理するので、単一のインデックスで複数のサーバ装置の各々に対応するＵＲＬを管理することができると共に、重要な情報を優先的に収集することができるという効果がある。
【０１２０】
この発明によれば、ハイパテキスト情報の収集を複数のサーバ装置との間で並行して実行するので、情報の収集速度を向上させることができるという効果がある。
【０１２１】
この発明によれば、収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とを用いてサーバ装置ごとに優先度を設定し、該優先度に応じて各サーバ名情報の一意な読み出しを管理するので、重要な情報を有するサーバ装置に優先してアクセスすることができるという効果がある。
【０１２２】
この発明によれば、収集済みハイパテキスト情報数と未収集ハイパテキスト情報数とが所定の閾値を超えると、新たなＵＲＬの格納を行わないので、重要性の低い情報を管理することによるＵＲＬの探索効率の低下を防ぎ、重要な情報を高速に収集することができるという効果がある。
【０１２３】
この発明によれば、ハイパテキスト情報の収集を完了すると、該ハイパテキスト情報に対応するＵＲＬを既取得として登録したのち、該ＵＲＬを削除するので、障害の発生により情報収集が完了していないＵＲＬに対する取得要求が失われることを防ぐことができるという効果がある。
【０１２４】
この発明によれば、読み出すべきＵＲＬを予め読み出して格納するＵＲＬキャッシュを備えるので、ＵＲＬの重複した登録が防がれ、ＵＲＬの登録処理の効率を向上させることができるという効果がある。
【図面の簡単な説明】
【図１】  この発明の実施の形態１によるＷＷＷ情報収集装置の構成を示す図である。
【図２】  図１中の取得要求ＵＲＬ管理手段の構成を示すブロック図である。
【図３】  図２中のＵＲＬインデックスを示す図である。
【図４】  図１中のＷＷＷ情報収集装置の動作を概略的に示すフロー図である。
【図５】  図１中の取得要求ＵＲＬ管理手段による動作を示すフロー図である。
【図６】  実施の形態１によるＷＷＷ情報収集装置のウェブページの収集動作を示すフロー図である。
【図７】  図１中のＷＷＷ情報収集装置をコンピュータ装置で具現化した際のハードウェア構成を示す図である。
【図８】  この発明の実施の形態２による取得要求ＵＲＬ管理手段の構成を示す図である。
【図９】  図８中のＵＲＬインデックスを示す図である。
【図１０】  図８中の取得要求ＵＲＬ管理手段の動作を示すフロー図である。
【図１１】  この発明の実施の形態３によるＷＷＷ情報収集装置のＷＷＷサーバテーブルを示す図である。
【図１２】  実施の形態３の取得要求ＵＲＬ管理手段による動作を示すフロー図である。
【図１３】  実施の形態３によるＷＷＷ情報収集装置のウェブページの収集動作を示すフロー図である。
【図１４】  この発明の実施の形態４によるＷＷＷ情報収集装置の構成を示す図である。
【図１５】  図１４中の取得要求ＵＲＬ管理手段を構成するＵＲＬインデックスを示す図である。
【図１６】  ＵＲＬを表す文字列の一例を示す図である。
【図１７】  従来のＷＷＷ情報収集装置の構成を示す図である。
【図１８】  図１７中のＷＷＷサーバ上におけるウェブページ配置の一例を示す図である。
【図１９】  図１７中のＷＷＷ情報収集装置によるウェブページのダウンロード順とＷＷＷサーバのアクセス順の一例を示す図である。
【符号の説明】
１，１ａ  ＷＷＷ情報収集装置（情報収集装置）、２  インターネット、３，３ａ，３ｂ  取得要求ＵＲＬ管理手段（ＵＲＬ管理手段）、４  ダウンロード手段（通信手段）、５  既取得ＵＲＬ記憶手段（既取得ＵＲＬ登録手段）、６  ＵＲＬコンテンツ記憶手段、７  リンク抽出手段、８，８ａ，８ｂ  ＵＲＬインデックス（ＵＲＬインデックス部）、９  ＷＷＷサーバテーブル、９ａ  ＷＷＷサーバテーブル（優先度設定テーブル部）、１０  ＷＷＷサーバキュー（サーバ名情報記憶手段）、１１，１１ａ  リーフページ、１２，１２ａ  ポインタ、１３，１３ａ  ノードページ、１４，１４ａ  ポインタ、１５  ＣＰＵ、１６  メモリ、１７  コンソールインタフェース、１８  ディスクインタフェース、１９  ネットワークインタフェース、２０  内部バス、２１  コンソール入出力装置、２２  ハードディスク装置、２３  ＵＲＬキャッシュ、２４  ヘッダ、２５  ポインタ、２６  バケット、２７  あふれポインタ、２８  優先度設定手段、Ａ〜Ｃ  ＷＷＷサーバ（サーバ装置）。
【図１】
0004808357.tif 000002
【図２】
0004808357.tif 000003
【図３】
0004808357.tif 000004
【図４】
0004808357.tif 000005
【図５】
0004808357.tif 000006
【図６】
0004808357.tif 000007
【図７】
0004808357.tif 000008
【図８】
0004808357.tif 000009
【図９】
0004808357.tif 000010
【図１０】
0004808357.tif 000011
【図１１】
0004808357.tif 000012
【図１２】
0004808357.tif 000013
【図１３】
0004808357.tif 000014
【図１４】
0004808357.tif 000015
【図１５】
0004808357.tif 000016
【図１６】
0004808357.tif 000017
【図１７】
0004808357.tif 000018
【図１８】
0004808357.tif 000019
【図１９】
0004808357.tif 000020