(57)【要約】【課題】知識ベース型データ・マイニング・システム用のデータ・ストアを提供すること。【解決手段】データ・マイニング・システムにおいて、例えば、ウェブ・クローラを利用して、データをデータ・ストア内に収集する。データはエンティティに分類され、マイナー出力および索引付けの対象となり得るエンティティをそれぞれ表す下位の垂直および水平テーブルに格納される。データ・マイナーは、ルールを用いてエンティティを処理し、マイナー内で実施されるルールから導出されるエンティティの特徴を表す個々のキーをエンティティに追加して、これらのキーをテーブル内のエンティティと関連付ける。顧客からの複雑なデータ要求に応答する際に、これらのキーを用いて、データ・マイナーの異なる専門の作成者によって定義されたエンティティの特徴を識別する。
2005530224.tif 000002
【特許請求の範囲】
【請求項１】
エンティティを格納する少なくとも１つのデータ・ストアと、
前記データ・ストアと通信を行い、第１のルールの組を用いて出力を生成する少なくとも１つの低レベルの解析エンジンと、
前記低レベルの解析エンジンの前記出力を受信し、第２のルールの組を用いて出力を生成する少なくとも１つの高レベルの解析エンジンとを含み、前記出力は前記データ・ストア内のエンティティに関連付けられるシステム。
【請求項２】
前記データ・ストアが、垂直テーブルと水平テーブルとを含み、前記垂直テーブルは、前記出力の１つを用いて入力され、前記水平テーブルは、エンティティ識別子を用いて入力される、請求項１に記載のシステム。
【請求項３】
前記出力が、前記関連付けられたエンティティの個々の特徴を表すキーである、請求項１に記載のシステム。
【請求項４】
前記データ・ストアが、リレーショナル・データベース・システムである、請求項１に記載のシステム。
【請求項５】
前記データ・ストアが、ファイル・システムである、請求項１に記載のシステム。
【請求項６】
前記データ・ストアに関連付けられるインデクサをさらに含む、請求項１に記載のシステム。
【請求項７】
前記インデクサと前記データ・ストアとに関連付けられる高速半導体実装キャッシュをさらに含む、請求項６に記載のシステム。
【請求項８】
少なくとも１つの解析エンジンからのクエリを実行するために１つまたは複数の前記キャッシュ、インデクサ、およびデータ・ストアにアクセスするクエリ・プロセッサをさらに含む、請求項７に記載のシステム。
【請求項９】
少なくとも１つの解析エンジンに関連付けられる少なくとも１つのワーク・キューをさらに含む、請求項８に記載のシステム。
【請求項１０】
エンティティ識別子が、対応するエンティティ識別子とエンティティ・タイプを符号化する、請求項１に記載のシステム。
【請求項１１】
前記インデクサが、前記データ・ストア内に見出されるキーとキー値とのインデクスを含む、請求項６に記載のシステム。
【請求項１２】
前記インデクサが、「キーｋは値ｖをもつか？」といった形式のクエリに対する「イエス」または「ノー」値を格納するブーリアン・インデクスを含む、請求項１１に記載のシステム。
【請求項１３】
前記インデクサが、キー値の範囲を格納する範囲インデクスを含む、請求項１１に記載のシステム。
【請求項１４】
前記インデクサが、テキスト・インデクスを含む、請求項１１に記載のシステム。
【請求項１５】
前記インデクサが、インデクスを含み、前記データ・ストアが、特定の名前またはテキストがエンティティ内のどこに出現するかを示さず、ページが特定の特徴を有することだけを示すテーブルを含む、請求項６に記載のシステム。
【請求項１６】
前記インデクサが、ウェブ文書に索引付けを施し、前記文書に対するキーワード検索アプリケーション・プログラミング・インタフェース（ＡＰＩ）を提供する転置ファイル・テキスト・インデクサを一般化したものである、請求項６に記載のシステム。
【請求項１７】
前記インデクサが、ブーリアン・クエリを可能とする特定のエンティティ用の定義済キーを保持する、請求項６に記載のシステム。
【請求項１８】
前記インデクサが、インリンクおよびアウトリンク・クエリをサポートするグラフ・データを含む、請求項６に記載のシステム。
【請求項１９】
字句解析が、前記インデクサ内の索引付けから分離される、請求項６に記載のシステム。
【請求項２０】
知識ベース型データ・マイニング・システムをサポートするデータを格納するための方法であって、
少なくとも１つのデータ・ストアにエンティティを格納するステップと、
少なくとも第１の解析エンジンを用いて前記データ・ストアと通信を行うステップと、
前記第１の解析エンジンに関連する第１のルールの組を用いて出力を生成するステップと、
前記出力を少なくとも第２の解析エンジンに送信するステップと、
前記第２のエンジンに関連する第２のルールの組を用いて出力を生成するステップと、
前記出力をエンティティに関連付けるステップとを含む方法。
【請求項２１】
データ・マイニング・システム用システムであって、
水平テーブルと垂直テーブルの形をとる少なくとも１つのデータ・ストアにエンティティを格納する手段と、
少なくとも第１の解析エンジンを用いて前記データ・ストアと通信を行う手段と、
前記第１の解析エンジンに関連する第１のルールの組を用いて出力を生成する手段と、
前記出力を少なくとも第２の解析エンジンに送信する手段と、
前記第２のエンジンに関連する第２のルールの組を用いて出力を生成する手段と、
前記出力をエンティティに関連付ける手段とを含むシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、データ・マイニング・システムに関する。
【背景技術】
【０００２】
データ・マイニングとは、ユーザが求める情報を情報集成から抽出する処理のことである。おそらく、最も普及しているデータ・マイニングの例は、ほとんどのウェブ・ブラウザに組み込まれた検索エンジン機能であろう。ユーザがキーワードを入力すると、検索エンジン機能は（数千の文書がリストアップされている場合もある）文書リストを返してくれるが、ユーザは自分が必要とする情報を見つけるため、それらをふるいにかけなければならない。
【０００３】
ＡｌｔａＶｉｓｔａ、Ｇｏｏｇｌｅ、Ｎｏｒｔｈｅｒｎ  Ｌｉｇｈｔ、ＦＡＳＴ、Ｉｎｋｔｏｍｉなどの既存の検索エンジンは、ウェブを「クロールする」ことによって仕事をする。すなわち、アクセスしたページのハイパーリンクを辿りながらウェブ・ページに次々にアクセスし、ウェブ・ページに出現したワードの転置索引を作成する。索引は、キーワードを含むページの（「ユニフォーム・リソース・ロケータ」または「ＵＲＬ」と呼ばれる）識別子にワードを関連付ける。問合せに対しては、要求されたキーワードを入力引数として使用して索引にアクセスし、問合せの条件を満たすＵＲＬを索引から返すことによって応答が返される。返されるページ識別子は通常、例えば、リンク情報やキーワードの出現頻度などを使用して、適合性によってランク付けされる。
【０００４】
ほとんどの商用検索エンジンが適合性ランキングを用いているにもかかわらず、一般に探している情報を見つけるには、問合せ結果を人手によって何回となくふるい分ける単調作業が必要となる。価値のあるものとないものをふるい分けるのに、しばしば特定分野の専門家が必要になるのは、このためである。実際、本発明が認識しているところによれば、第１の専門家は、文書の部分集合を選び出すのに、その専門的な判断基準を用いて、文書を処理しなければならず、第２の専門家は、その専門的な判断基準を用いて、第１の専門家から渡された部分集合の中から必要な情報を探し出さなければならないといった場合も起り得る。こうした作業は、データを利用したより高いレベルの作業にとって必要な前作業であるに過ぎないのに、労働集約型の単調作業であり、プロジェクトの他のどのフェーズよりも多くの時間を消費する場合がある。
【０００５】
例えば、「わが社の北米太平洋岸北西地区の企業顧客は、ブランド名の強みおよび価値の観点から、わが社の競争相手のヘルスケア関連製品をどのように見ているか？」といった複雑なマーケティング関連の質問に応答することを考える。ウェブ・ページの分析は、競争相手の社名を用いたキーワード検索から着手されるかもしれない。しかし、その場合は、政府報告書など、別の場合には意味があっても、現在の質問に答えるには役に立ちそうもない、おそらく何千もの文書を除外するのに、専門家の手をかなりの時間煩わせなければならないだろう。第１回目のフィルタリング・ステップの後では、競争相手の社名は記されているかもしれないが、どのようなタイプの人口統計が除外する対象セグメントを構成するかについて専門知識を必要とするであろう、ティーンエージャのチャット・ルームの文書など、まるで内容のかけ離れた実に多くの文書が残るかもしれない。
【０００６】
あるいは、「Ａｄｏｂｅ  Ａｃｒｏｂａｔ７は、ＭＳ  Ｗｏｒｄ７と互換性があるか？」といった単純な質問を考える。この単純な問合せは、上記の検索エンジンの１つに提示された際、３３００万ものウェブ・ページからなる結果集合を生成したが、その大部分には、求める「イエス」または「ノー」といった答えは含まれていなかっただろう。役に立たないページを除去するには、専門家が各ページを見て、それがプログラム互換性についての情報を含んでいる可能性のある種類のページであるかどうかを判断しなければならないだろう。その後、別の専門家が最初の専門家から渡されたページを調べて、提示された現在の質問に対する答えを、ページが実際に含んでいるかどうか決定しなければならないかもしれない。膨大な情報をふるい分けるのに専門家を段階的に使う方法が、極めて多くの時間を消費することは、容易に理解されよう。
【特許文献１】米国特許第６，２６３，３６４号
【特許文献２】米国特許出願第０９／２３９，９２１号
【特許文献３】米国特許第６，２９５，５５９号
【特許文献４】米国特許第６，２６６，６９２号
【特許文献５】米国特許第６，２８５，９９６号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従って本発明が解決しようとする課題は、有用なデータ・マイニング・システムを提供することである。さらにデータ・マイニング・システムにデータを格納する効率的な方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明の第１の態様によれば、エンティティを格納するデータ・ストアと、データ・ストアと通信を行い、第１のルールの組を用いて出力を生成する、少なくとも１つの低レベルの解析エンジンとを含むシステムが提供される。少なくとも１つの高レベルの解析エンジンは、低レベルの解析エンジンの出力を受信し、第２のルールの組を用いて出力を生成する。出力はデータ・ストア内のエンティティに関連付けられる。
【０００９】
本発明の例示的かつ非限定的な一実施形態では、データ・ストアはデータベースとすることができ、垂直テーブルおよび水平テーブルを含むことができる。垂直テーブルには、出力の１つを用いて入力することができ、水平テーブルには、対応するエンティティ識別子とエンティティ型を符号化するエンティティ識別子を用いて入力することができる。出力は、関連付けられたエンティティの個々の特性を表すキーとすることができる。代替的にデータ・ストアは、例えば、ファイル・システムとすることもできる。
【００１０】
高速半導体実装キャッシュ、および少なくとも１つの解析エンジンからのクエリを実行するクエリ・プロセッサを関連付けることができるように、必要に応じて、インデクサをデータ・ストアに関連付けることができる。また、ワーク・キューを解析エンジンに関連付けることもできる。
【００１１】
好ましい非限定的なインデクサは、テーブルなどのエンティティ・データ記憶構造に見出される、キーとキー値のインデクスを含む。インデクサはまた、「キーｋは値ｖをもつか？」といった形式のクエリに対する「イエス」または「ノー」値を格納するブーリアン・インデクスも含むことができる。さらに、インデクサは、キー値の範囲を格納する範囲インデクス、およびテキスト・インデクスを含むことができる。インデクサは、必要に応じて、ウェブ文書を索引付けし、文書に対するキーワード検索アプリケーション・プログラミング・インタフェース（ＡＰＩ）を提供する、転置ファイル・テキスト・インデクサを一般化したものとすることができる。
【００１２】
さらに、好ましいインデクサは、ブーリアン・クエリを可能とする特定のエンティティ用の定義済キーを保持する。さらに、インデクサは、インリンク・クエリおよびアウトリンク・クエリをサポートするグラフ・データを含む。有利には、インデクサ内の索引付けからインデクス字句解析を分離させることができる。
【００１３】
本発明の別の態様では、知識ベース型データ・マイニング・システムをサポートするデータを格納するための方法は、水平テーブルおよび垂直テーブルの形をとる少なくとも１つのデータ・ストアにエンティティを格納するステップを含む。この方法は、少なくとも第１の解析エンジンを用いてデータ・ストアと通信を行うステップと、第１の解析エンジンに関連する第１のルールの組を用いて出力を生成するステップをさらに含む。以下で詳しく説明するように、この方法は、出力を少なくとも第２の解析エンジンに送信するステップと、第２のエンジンに関連する第２のルールの組を用いて出力を生成するステップをさらに含む。出力はデータ・ストア内のエンティティに関連付けられる。
【００１４】
次に、本発明の好ましい実施形態を、添付の図面を参照しながら、例としてのみ説明する。
【発明を実施するための最良の形態】
【００１５】
初めに図１を参照すると、全体として１０で指示される、顧客のデータ要求に応答するためのシステムが示されている。システム１０は基本的に、大規模なデータ集成をふるいわけて、先に説明したような比較的複雑になり得る情報要求に応答するための、多くの専門家の知識を統合する。本発明の非限定的な実施形態では、システム１０は、企業データ分析、競業社情報の収集、傾向分析、発見、ウェブ・ポータル・サービス、クラスタ分析、および分類法生成のために利用することができる。また、システム１０は、（企業の特定部署に関係する）一連の調達に特有のサービスなど、高度な組み込み専門知識を必要とする対象機能をサポートするのに利用することもできる。
【００１６】
システム１０は、単一のベンダ所在地において１つまたは１群のプロセッサ上でホストされ、顧客のデータ要求にサービス・フォーマットで応答することができる。あるいは、システム１０の一部を顧客に提供して、顧客設備でデータ・マイニングを実行することもできる。
【００１７】
以下でより詳しく説明するように、システム１０は、データ収集レイヤ、データ記憶レイヤ、データ・マイニング・レイヤ、データ提示レイヤ、およびシステム管理レイヤを含む。初めに図１の左サイドのデータ収集レイヤから説明を始めると、ウェブ・クローラ１２は、ワールド・ワイド・ウェブ１４（および、必要に応じて、インターネットのその他の部分）にアクセスする。クローラ１２は、例えば、適正な認証を介してのみ利用可能な財産権の対象となる情報を含む、イントラネット１６にもアクセスすることができる。好ましくは、クローラ１２は、継続的にウェブ１４をクロールし（一部のページは、ページ更新の頻度やその他の基準に基づいて、その他のページよりも頻繁にクロールされる）、クロールしたページを、データ・レイヤ・アプリケーション・プログラミング・インタフェース（ＡＰＩ）２０を用いて、データ・ストア１８に出力する。本発明の好ましい非限定的な一実施形態では、インタフェース２０は、モニタリング、ロギング、およびデータ転送に適用される１組の使用規約と結び付けられた軽量なＸＭＬベースのプロトコルである、「Ｖｉｎｃｉ  ｘＴａｌｋ」として知られるＩＢＭのサービス指向プロトコルとする。システム内のネットワーク・レベルのＡＰＩは、ｘＴａｌｋのフレームによって仕様が定められる。
【００１８】
また、好ましいクローラは、フィードバック・チャネルを含み、その動作を必要に応じて変更することができる。本発明の好ましい非限定的な一実施形態では、クローラ１２は、米国特許第６，２６３，３６４号に開示され、本明細書に参照により組み込まれるクローラ、またはＩＢＭの同時係属中の「集中ウェブ・クローリングのためのシステムおよび方法（SYSTEM AND METHOD FOR FOCUSSED WEB CRAWLING）」と題する米国特許出願第０９／２３９，９２１号に記載され、やはり本明細書に参照により組み込まれるクローラとする。クローラ１２を利用してデータを取得するのに加え、システム１０は、顧客データベース２４およびサードパーティ・データベース２４のデータを処理し、処理済データをデータ・ストア１８に送信する構造化データ収集器２２を、必要に応じて含むことができる。
【００１９】
データ・ストア１８に関して、本発明の一実施形態では、データ・ストア１８は、ＩＢＭのＤＢ２システムなどのリレーショナル・データベース・システム（ＲＤＢＭＳ）とする。その他の実施形態では、ファイル・システムなど、その他のシステムを利用することもできる。以下の開示は、両タイプのデータ・ストアに適用される。
【００２０】
本発明の一実施形態では、ストア１８は、単一のコンピュータまたは複数のコンピュータで実行される集中型プログラムを含むことができる。以下で説明するマイナーは、独立の各コンピュータで実行され、データの読み取りおよび書き込みを行うようストアのプログラムに要求することができる。あるいは、ストア１８は、複数のコンピュータに分散させることができ、各マイナーは、それらのコンピュータで並列に実行される。そのような実施形態では、リソースの有効利用を容易にするため、文書をストアのローカルな部分からメモリに読み込み、内部メモリから一連の従属または独立マイナーを通過させ、またストアに書き戻すことができる。実際、（例えば、ページ単位で動作するマイナーなど）いくつかのマイナーは、第２のアーキテクチャでより効率的に動作するが、その他のマイナーでは、第１のアーキテクチャよりもオーバヘッドがかかる場合があることを認識して、同一のシステム１０に、両方のアーキテクチャを存在させることができる。
【００２１】
データ・ストア１８は、インデクサ２６に関連付けられ、必要に応じて、高速半導体実装キャッシュ２８にも関連付けられる。クエリ・プロセッサ３０は、以下で説明するマイナーのクエリを実行するため、キャッシュ２８、インデクサ２６、およびデータ・ストア１８にアクセスする。以下で説明するマイナーのワーク・キューは、システム１０のデータ記憶レイヤの一部として実装することができる。
【００２２】
データ・ストア１８は、例えば、クローラ１２からのウェブ・ページ・データなど、比較的大規模なデータ集成を格納する。また、データ・ストア１８は、以下でさらに説明する下位データに相当するエンティティを格納する。これらのエンティティはそれぞれ、エンティティ識別子と、例えば、「ウェブ・ページ」、「ハイパーリンク」、「人」、「企業」、「品目」などのエンティティ型を符号化した、汎用識別情報（ＵＥＩＤ）をもつ。また、エンティティは、以下で説明するデータ・マイナーによってエンティティに追加される関連付けられたキー値をもつキーを含む。ページ・エンティティは、例えば、関連付けられたウェブ・ページのｈｔｔｐ内容を含む「Ｃｒａｗｌ：Ｃｏｎｔｅｎｔ」と呼ばれるキー（したがって、キー値は比較的長い）を生成するマイナーによって処理される。どのような場合でも、エンティティは、ファイル・システム、エンティティが水平および垂直テーブル内に表現されるＤＢ２などのデータベース・システム、またはその他のストレージ・システムに保存することができる。
【００２３】
インデクサ２６は、とりわけ、ストア内に見出されるキーとキー値のインデクスを含む。インデクサ２６は、「キーｋは値ｖを含むか？」といった形式のクエリに対する「イエス」または「ノー」値を格納するブーリアン・インデクスを含むことができる。また、インデクサ２６は、例えば、地理的範囲など、キー値の範囲を格納する範囲インデクス、下線付データに対する従来型インデクスであるテキスト・インデクス、および、必要に応じて、その他のインデクスを含むことができる。
【００２４】
いずれの場合も、好ましいインデクス（および、データ・ストアがデータベースの場合、データ記憶テーブル）は、特定の名前またはテキストが、例えば、ウェブ・ページ上のどこに出現するかを示さず、ページが特定の特徴を有すること、または特定のテキスト要素がページのどこかに出現することだけを示す。このように、システム１０のデータ・ストアは比較的大まかであるため、さもなければ必要となったほど大きな記憶スペースが必要とならず、実用上、実施が容易になる。しかし、必要に応じて、特定の名前またはテキストが、例えば、ウェブ・ページ上のどこに出現するかを示すこともできる。
【００２５】
システム１０のデータ記憶レイヤについてさらに詳しく述べると、好ましい非限定的なインデクサ２６は、従来の転置ファイル・テキスト・インデクサを一般化したものである。一具体例では、インデクサは、ウェブ文書に索引付けを施し、そうした文書に対するキーワード検索アプリケーション・プログラミング・インタフェース（ＡＰＩ）を提供する。文書に関連付けられるキーワードの組は、単純に文書内のワードとすることができ、あるいはページ上の地理的位置、固有名、製品やレストランやシステム１０が知っているその他のエンティティへの参照情報、ページを意味解析した結果などの必要な付加情報を、以下で説明するマイナーによって付け足すこともできる。キーワード検索ＡＰＩは、キーワードのこのような拡張された任意の組をクエリが含むことを可能にする。
【００２６】
別の具体例では、インデクサ２６は、ブーリアン・クエリを可能とする特定のエンティティ用の定義済キー、またはインリンクおよびアウトリンク・クエリをサポートするグラフ・データなどを保持する。こうした汎用性を提供するため、索引付けから字句解析を分離させる。より具体的には、インデクサ２６は、文書のストリームではなく、字句のストリームを受信することを要求する。したがって、字句解析は、索引付けに先立って行われる。索引付けされた各字句と共に、字句位置（ストリーム内の字句のオフセット位置）が、ユーザ定義の字句データと一緒に格納されるが、これは任意とすることができる。この単純化されたモデルは、効率的な索引付けの実現を容易にし、様々な用途で使用される汎用ＡＰＩを提供する。さらに、分離することによって、ルールの異なる実施形態（例えば、異なるマイナー）からの字句を一緒に索引付けすることが可能になる。
【００２７】
インデクサ２６の複数のバージョンを同時に実行することができる。説明を簡単にするため、クロール済のページ全体からなる組に対応する字句を保持する「一次」テキスト・インデクサについて考察する。本発明のデータ・マイナーに関連して以下で説明するように、マイナーは、データ・ストア１８に格納されたエンティティに「キー」をアタッチする。インデクサ２６に関連付けられたトークナイザは、この手法に正確に従う。非限定的な一実施形態では、テキスト・トークナイザは、ボブリンゲンのＩＢＭリサーチおよびＩＢＭソフトウェアが製造する、ＴＡＦ（テキスト解析フレームワーク）トークナイザに基づくものとすることができる。このトークナイザは、ページ・データを読み込み、ページごとに基本字句解析の結果を書き出す。その後、その他のトークナイザは、それらのデータまたは選択する生ページ・データを消費し、その他の字句をストアに書き出す。例えば、トークナイザは、固有名を見つけ、それらに固有名としてのタグ付けを行うことができ、別のトークナイザは、固有名トークナイザからの出力を専ら読み込み、システム１０内の他の場所に存在する特定の既知のエンティティに固有名をマッピングするメタデータを含む字句を書き出すことができる。これらのトークナイザはすべて、一次インデクサ２６に登録する。
【００２８】
好ましい非限定的なインデクサ２６について詳しく説明したので、次にクエリ・プロセッサ３０についての説明に移る。以下に説明するマイナーは、クエリ・プロセッサ３０を起動する拡張クエリ言語を用いて、データ・ストア１８からのデータのストリームを要求することができる。クエリ・プロセッサ３０にアクセスする方法は、インデクサ２６にアクセスする方法とまったく同じである。すなわち、要求側は、サービス固有のクエリ（この場合は、拡張クエリ言語のステートメント）を送信し、クエリ・プロセッサ３０からデータ・ストリームを受信する。クエリは、標準ストリーム組合せ子（ＡＮＤやＯＲなどのブール演算子、内部結合や外部結合などのデータベースの結合演算子、ソート演算子、例えば、ストリーム内の各ＵＥＩＤにあるキーの値を追加するなど、ストリームに付加情報を追加する演算子）を用いて、複数のストリームを結合しなければならない。クエリ言語は、任意のストリームを１つに結合することができる。
【００２９】
先に述べたように、システム１０のデータ・マイニング・レイヤは、データ・レイヤＡＰＩ２０と、したがって、データ記憶レイヤと通信を行うソフトウェア実装のデータ・マイナーを格納するマイナー・ライブラリ３２を含む。本発明の例示的かつ非限定的な図示の実施形態では、マイナー・ライブラリ３２は、ページへのリンク／ページからのリンクを返すリンク・マイナー３４、データ・ストア１８内の「スパム」を識別するスパム・フィルタ３６、データ・ストア１８内のポルノ・ページを識別するポルノ・フィルタ３８、ページ内における用語パターンの出現に基づきページを分類する分類マイナー（classification miner）４２、ウェブ・ページ上の地理情報を識別する地理空間マイナー４４、企業マイナー４６、分類法マイナー（taxonomiesminer）４８、定義済の正規表現を含むページのストリームを提供する正規表現マイナー５０などを含む。
【００３０】
「マイナー」または「データ・マイニング要素」とは、出力、具体的には、エンティティの特徴を表す１つまたは複数のキーを含み得る出力を、１組のルールを用いて生成する解析エンジンのことである。これらのルールは、発見的方法で決定することができ、統計ベースのルールを含むことができる。非限定的な例を挙げると、「ポルノ・フィルタ」マイナー３８は、イメージ解析技法を用いて、ウェブ・ページがポルノを含むかどうかを決定し、「ポルノ＝イエス」または「ポルノ＝ノー」を示すキーとキーのブール値をページに追加することができる。非限定的な一例として、ポルノ・マイナーは、ＩＢＭの米国特許第６，２９５，５５９号に記載された原理を利用することができる。あるいは、企業マイナー４６は、語連想ルール、ＵＲＬ解析、またはその他の方法を用いて、ある特定のページがある企業のページであるかどうかを決定し、マイナーの解析結果を示すキーをページに追加することができる。さらに、スパム・フィルタ３６として機能するマイナーは、ＩＢＭの米国特許第６，２６６，６９２号に記載された原理を利用して、ウェブ・ページまたは電子メールに、それらが「スパム」であるかどうかを示すキーを追加することができる。またさらに、地理空間マイナー４４は、緯経度情報を導き出すルールに基づいて、ページの主題または作成者に関連する緯度および経度の範囲を表すキーをウェブ・ページに追加することができる。非限定的な一例として、地理空間マイナーは、ＩＢＭの米国特許第６，２８５，９９６号に記載された原理を利用することができる。上で参照した特許はいずれも、参照により本明細書に組み込まれるものとする。特定のタイプのマイナー、および各マイナーが利用する特定のルールは、本発明の範囲および効力に影響を与えることなく変更可能であることを理解されたい。
【００３１】
いずれの場合も、データ・マイナーは、明確な入力および出力仕様をもつモジュール・コンポーネントである。それらは、任意の言語で記述することができ、その規模も、キーワードを見分ける数行の簡単なパールから、複雑な分散処理を実行する数万行（またはそれ以上）のコードまで様々である。大きな問題は、より小さな問題に分割することができ、小さな問題の１つ１つは、単一のマイナーまたはマイナー記述者で容易に対処可能である。その結果得られた中間結果は、検査、チェック、およびデバッグを容易に行うことができ、別のマイナー記述者に固有の関心事となることもできる。このように、マイナーは、オブジェクト指向設計と同等なサービス指向アーキテクチャをとる。マイナーは、通常は以下で説明するキーによって示される、マイナーの開始時に利用可能でなければならないデータと、成功した処理中にマイナーが生成する（その他のキーを含む）データによって仕様が定められる。
【００３２】
具体的には、好ましい一実施形態では、マイナーは、マイナーによって指定される１つまたは複数の依存関係に基づいて、システム管理されるワーク・キューからワークを消費することができる。例えば、ある人物またはある地理的場所を含むページの処理に携わるマイナー（「マイナーＡ」）は、地理空間マイナー４４および人物マイナーに依存関係を登録する。マイナーＡのワーク・キューは、データ・ストア内のエンティティに地理空間マイナーおよび人物マイナーが追加したキー（マイナーＡはまだ追加していない）によって示される、地理空間マイナーおよび人物マイナーによって処理されるエンティティを含むように、継続的に更新される。それらのエンティティを処理した後、マイナーＡは、データ・ストアがデータベースである場合は既存のエンティティ・テーブルを用いて、独自の１つまたは複数のキーを処理済エンティティに追加することができ、あるいは（データ・ストアがデータベースとして実装されている場合は対応するテーブルを用いて）エンティティの特徴を表す各キーをもった新しいエンティティを生成することができる。特定の製品、ブランド名、人物、業種、芸術家などへの参照を抽出するマイナーは、この方式で動作する。
【００３３】
一方、マイナーは、キューからのワークを消費するのではなく、どのような頻度、どのような環境でマイナーを実行すべきかを制御する以下で説明する管理システムに新規性要件を登録することができる。例えば、週次の集計計算を実行するその他のマイナーは、マイナーの１つまたは複数のインスタンスを起動して、結果として得られる集計テーブルまたはデータ構造の週次構築を遂行するように、追加された適切なキーを有するエンティティを入力としてやはり用いて、以下で説明する管理システムに要求することができる。
【００３４】
したがって、マイナーは、データ・ストア１８から、生の内容の長い持続的な信頼度の高いストリーム、およびその他のマイナーによって生成された処理済データを読み込む。これらのマイナーは、そして実際にシステム１０内の多くのマイナーは、データを消費し、処理する。上で説明したデータ・アクセスの２つのモデルは、特定のエンティティまたはエンティティの組へのランダム・アクセス、およびエンティティ列へのストリーム・アクセスを含む。データ・ストア１８上でランダム・アクセスを実行するため、マイナーは、ＵＥＩＤを用いて問題のエンティティの関連部分を単純に要求する。データ・ストリームを受信するため、インデクサ２６またはクエリ・プロセッサ３０を用いてデータ・ストア１８にデータを要求することによって、列挙が開始される。例えば、より高度なデータ要件をもつマイナーは、従来から引き受けているクエリ最適化、および交換に生成されるデータのストリームを伴う、複数のコンポーネントにアクセスする必要もあり得る複雑なクエリをクエリ・プロセッサ３０に対して指定することができる。そのようなクエリは、複数のテーブルにわたるデータベース結合、テキスト検索を含むインデクス探索、範囲クエリ、地理探索、およびシステム内の多くの様々なソースからのより小さな結果セットの合成を必要とすることもある。インデクサ２６から取り出されても、クエリ・プロセッサ３０から取り出されても、列挙は持続性を提供し、処理の性質に応じて直列でも並列でもアクセスすることができる。
【００３５】
マイナーは、その他のマイナーおよびエンド・ユーザがアクセスできるように、処理結果をデータ・ストア１８に書き戻す。上で説明したように、その他のマイナーがアクセスできるようにデータをストア１８に書き戻すため、マイナーは、エンティティにアタッチしたい新しいキーと値を単に生成し、ストアの書き込み操作を実行する。
【００３６】
本発明のマイナーによって提供される特定の顧客の情報要求に対する結果は、データ提示レイヤ５２上で提示することができる。結果は印刷することも、音声−映像形式で提示することも、要望に応じたその他の形式で提示することもできる。クラスタ管理サブシステム・レイヤ５４は、上で説明したレイヤを以下でより詳しく説明するように管理する。必要に応じて、顧客インタフェース５６は、顧客の情報要求の入力およびそれに対する応答を容易にするため、データ・レイヤＡＰＩ２０および顧客データベース５８にアクセスすることができる。
【００３７】
目下の好ましい実施形態によれば、管理サブシステム・レイヤ５４は、様々なコンポーネント内の動作をスケジュールし、開始し、監視し、およびそのログ取得を行う。エンド・アプリケーションは、提供テーブル、データ・ストア１８、またはリアルタイム・クエリ処理マイナーから結果を取り出す。
【００３８】
本発明の好ましい非限定的な一実施形態では、コンピュータの大規模クラスタが、システム１０および管理サブシステム・レイヤ５４をホストする。マイナーの管理に加えて、管理システム５４は、クラスタ内におけるハードウェアおよびソフトウェア障害を検出し、そうした障害をプログラムによって復旧し、必要に応じてシステム管理者に通知する。管理サブシステム・レイヤ５４はまた、再配置、負荷の最適配分、およびスケジューリングなどの機能をソフトウェア・コンポーネントごとに提供する。
【００３９】
システム１０のすべてのイベントは、アプリケーションおよび基盤コンポーネントからのステータス、統計情報、ロギング、およびエラー・コードを維持する単一の情報サーバに集められる。イベントは、クラスタ内のソフトウェア・コンポーネントによって使用されるエラー・クラス、データ・ストア１８に関連するＤＢ２のイベントおよびログ・モニタ、システムおよびネットワーク監視コンポーネント、および管理サブシステム・レイヤ５４の一部であり、クラスタ内の個々のコンピュータで実行されるいわゆる「子守」エージェントを含む広範な発生源から発生する。
【００４０】
好ましい「子守」エージェントは、個々のコンピュータ上で、プロセスを開始し、終了し、監視、またコンピュータ・リソースを追跡する。これらのエージェントは、「ｐｉｎｇ」、ディスク利用、メモリ利用、プロセッサ利用、カーネル・リソース（プロセス、ソケットなど）利用、およびｓｔａｒｔ、ｓｔｏｐ、ｋｉｌｌａｌｌを含むプロセス制御を受け持ち、または監視し、あるいはその両方を行う。「子守」エージェントはまた、ログ・メッセージ、エラー報告、統計情報、待機中文書の数、１秒当りに処理される文書の数、正味の文書フロー率、バイトまたはエンティティで表した１秒当りの処理率、およびマイナー固有のその他のステータス報告を含む、個々のコンピュータ上で動作する個々のマイナーからのステータスを受信する。
【００４１】
図２には、上で説明したシステム１０の動作の全体的なロジックが示されている。ロジックはブロック６０から始まり、クローラ１２は、ウェブ１４をクロールして、データ・ストア１８にデータを追加する。必要であれば、ブロック６２で、デ―タ収集器２２を用いて、データベース２４からのデータをデータ・ストア１８に追加することができる。
【００４２】
データ・ストア１８がデータを格納すると、ロジックはブロック６４に進むことができ、ブロック６４では、「低レベル」マイナーと考え得る少なくともいくつかのマイナーが、上記の開示に従ってデータにアクセスし、それを処理する。低レベル・マイナーは、データ・ストア１８に結果を書き戻す。例えば、スパム・フィルタ３６およびポルノ・フィルタ３８などのフィルタリング・マイナーは、データ・ストア１８内のすべてのウェブ・ページを処理し、各サイトがスパムまたはポルノ・サイトであるかどうかを示す個々のキーを対応するエンティティに書き戻す。さらに、タグ除去マイナーを各ページ上で呼び出して、ページ内容を処理すること、すなわち、ハイパーテキスト・マークアップ言語（ｈｔｍｌ）のマークアップを取り除き、生テキストだけを残し、タグを除去したことを示す「タグ除去」キーを各対応するエンティティに追加することができる。
【００４３】
ロジックはブロック６６に移り、ここで顧客の情報要求を受信することができる。ブロック６８では、また別の低レベル・マイナーを応答の中に書き込むことができ、または必要であるのにまだ書き込まれていないならば、高レベル・マイナーを生成することができる。高レベル・マイナーは、他のマイナーからの出力に依存関係を指定するマイナー、すなわち、低レベル・マイナーによって出力されたキーでタグ付けされたエンティティを処
理するのに必要なマイナーであると考えることができる。
【００４４】
高レベル・マイナーの一例は、「わが社の北米太平洋岸北西地区の企業顧客は、ブランド名の強みおよび価値の観点から、わが社の競争相手のヘルスケア関連製品をどのように見ているか？」といったクエリに応答するマイナーとすることができる。このようなマイナーは、地理空間マイナーがエンティティに追加した地理空間キーによって北米太平洋岸北西地区のページであることが示されたページだけ、それも固有名マイナーがエンティティに追加したキーによって競争相手の名前がエンティティに記載されていることが示された場合だけ、そのようなページを受信したいと指定することができる。そのような多くの従属関係を仮定することができるが、そのようなマイナーの従属関係を指定できる専門家は、例えば、地理空間マイナーを記述した専門家は、どのように自らの解答に到達したかを知る必要なく、自分の専門知識に基づいた発見的方法を用いていることが理解される。結果はブロック７０で顧客に提供され、顧客は要求件数に応じてまたは申し込みベースで請求を受ける。
【００４５】
図３および図４には、非限定的な例では、データ・ストアがＤＢ２などのデータベースによって実装される場合に利用できる、水平テーブルおよび垂直テーブルの構造が示されている。図３には、水平テーブル７２が示されており、各行７４はエンティティを表す。各行は、ＵＥＩＤ列７６、必要に応じてタイム・スタンプ列７８、および複数のキー列８０を有する。対照的に、図４には、複数の行８４を含む垂直テーブル８２が示されており、各行は、単一のキー列８６、ＵＥＩＤ列８８、キーのタイプを示すキー・コード列９０、およびブール値や範囲値などのキー値を示すキー値列９２を含む。必要に応じて、当該エントリがテーブル内に作成された時間を示すタイム・スタンプ列９４を含むこともできる。
【００４６】
上記の説明から、データベース実装においてテーブル７２、８２を利用するデータ・ストア１８が、実データのレイアウトを抽象化することで、特定のエンティティに典型的だと思われるアクセス・パターンの性能をよくするのに、どのタイプのテーブルをそのエンティティ用に用いるかを決定できることが理解されよう。好ましいデータ・ストア１８はまた、最大行長より長い値を格納する際にＶＡＲＣＨＡＲまたはＢＬＯＢを自動的に使用することで、ＤＢ２がもつ行長の制限を取り除く。データの物理レイアウトから独立なコードを記述する際、プログラマがＤＢ２データベースを直接アクセスできるように、ＡＰＩが提供される。
【００４７】
例えば、クローラ１２は、Ｃｒａｗｌ：Ｃｏｎｔｅｎｔキー、Ｃｒａｗｌ：Ｈｅａｄｅｒキー、およびＵＲＬ、フェッチ待ち時間、ページの最終変更日付、サーバ、ＨＴＴＰリターン・コードなど、複数の抽出されたメタデータ・キーを書き込む。データベースとして実装される場合、データ・ストア１８内で、これらの情報はすべて、クローラのキーごとに１列が設けられた、単一の水平テーブルに書き込まれる。これらの情報を書き込むのはクローラ１２だけだが、読み取りは許可を有する任意のマイナーが行うことができる。ページの内容を必要とするマイナーは、Ｃｒａｗｌ：Ｃｏｎｔｅｎｔキーの値を要求しさえすればよく、データ・ストア１８が、適切なテーブルにマッピングする。
【００４８】
この計算を容易にするため、データ・ストア１８は、必要に応じて、キーをリレーショナル・データベース内の実ロケーションにマッピングする情報を提供することを目的とした、データ・ディクショナリを提供することができる。さらに、データ・ディクショナリは、キーのタイプや所有者などの補助的な情報も提供する。複数のキーを書き込むマイナーは、多くのキーを単一の行更新動作で書き込めるように、それらのキーを特定の水平テーブルに書き込むこともできる。
【００４９】
上で述べたように、クローラ１２を含む複数のマイナーは、ページ単位の情報を生成し、消費するため、最も自然にはページ・レベルで動作する。しかし、その他のマイナーは、生ページではなくエンティティ上で動作することもできる。例えば、リンクベースのスパム・フィルタ３６などのいくつかのフィルタは、サイト全体がスパムかどうかを決定するため、ウェブ・サイト全体を対象として動作する。その他のマイナーは、句、固有名、企業名、場所、レストラン、従業員などを対象として動作する。そのような各カテゴリは、別個のエンティティを表し、データ・ストア１８内に独自の水平および垂直テーブルの組（または別のデータ記憶構造）を必要とする。したがって、クローラ１２がデータベース実装のページ・エンティティ内の水平テーブルに書き込むのと同じように、企業マイナー４６は、企業用の水平テーブルを備えることができる。キーと値のペアを企業にアタッチしたいその他のマイナーは、企業マイナー４６によってエンティティに追加されたキーにアクセスし、その他のキーを企業エンティティの別のデータ構造に書き込むことができる。
【００５０】
図５には、クローラ１２が収集したウェブ・ページがブロック９６に到達した際、辿ることのできる具体的な論理フローが示されている。ブロック９８で、タグ除去マイナーを起動して、ブロック１００で、ｈｔｍｌマークアップを取り除き、生テキストだけを残し、タグ除去済を示す「タグ除去」キーをエンティティに追加する処理を施すことができる。
【００５１】
ブロック１０２に進むと、その他のマイナーは、システム・マネージャ５４にタグ除去キーに基づいてそれらのマイナーにエンティティを送出させることによって、上で説明した原理に従ってエンティティを受信することができる。ブロック１０４で、その他のマイナーは、エンティティの下位データを処理し、データ・ストアがデータベースとして実装される場合には、例えば、エンティティを表す水平テーブルおよびキーを表す関連する垂直テーブル内のエンティティのデータ構造エントリに独自のキーを追加することができる。また、いくつかのマイナーは、例えば、ページ・エンティティから、例えば、企業名などの情報を抽出し、例えば、企業エンティティなどそのようなエンティティを表す追加のエンティティ・データ記憶構造（ファイルやテーブルなど）を生成することができる。
【００５２】
初期のマイナー処理の後、ロジックは判断ブロック１０６に進むことができ、さらに別のマイナー、例えば、第ｎのマイナーが、所定のキーをもつエンティティを要求しているかどうかが判断される。第ｎのマイナーによって入力として要求されたすべてのキーが１つのエンティティ内に存在している場合、例えば、そのエンティティをマイナーのワーク・キューに入れることによって、ブロック１０８で、そのエンティティを第ｎのマイナーに提供する。第ｎのマイナーは、例えば、そのエンティティを処理するためワーク・キューにアクセスすることによって、またはそのエンティティの下位データを処理することによって、あるいはその両方を行うことによって、ブロック１１０で、そのエンティティにアクセスする。ブロック１１２で、第ｎのマイナーは独自の１つまたは複数のキーを出力し、１つまたは複数のキーをエンティティに関連付けるのに適したエンティティ・データ構造にこれらのキーを入力する。次にブロック１１４で、顧客マイナーは、その他のマイナーを起動することができ、または顧客が探す情報を含むデータベースを生成するのに適したエンティティにアクセスすることができ、あるいはその両方を行うことができる。
【００５３】
本明細書で説明するシステム１０は、多くの顧客特定用途に利用することができる。そのような用途の１つに、文書がシステムに供給され、システムはルールに基づいて文書中の重要な「エンティティ」（例えば、人物、場所、出来事など）を識別する、「アクション・リンク」／「ドリル・ノート」アプリケーションがある。システム１０内の編集マイナーは、こうした各エンティティに関する収集情報を関係記録またはその他の形式に取りまとめる。次に関係記録（またはその等価物）は、元の文書内のエンティティにリンクされる。
【００５４】
関係記録またはその等価物は、そのエンティティに関するミニ・ポータル、例えば、そのエンティティ向けに特化したＹａｈｏｏ７タイプのディレクトリのようなものにすることができる。したがって、エンティティが人物であれば、その人物に関連する住所、その人物に関連する人々、その人物に関連する場所、その人物に関連する業界、その人物についての出版物などからなる、その人物に関するサブカテゴリをもつことができる。「アクション・リンク」対象として選択されるエンティティは、編集マイナーによって、好ましくは、調節可能な傾向機能または発見的に決定可能なその他のルールに従って決定される。
【００５５】
システム１０がどのように利用できるかを示す別の非限定的な例として、「法律情報ファインダ／ビルダ」アプリケーションは、上で説明した「アクション・リンク」／「ドリル・ノート」を一コンポーネントとして含むことができ、エンティティはデータ・ストア１８に格納されているが、探しているリンク要素の少なくとも一部は格納されていない場合もある、「エンティティ」間の可能性リンクを見つけることもできる。例えば、ジョン・ドウとジェーン・スミス（人物エンティティ）は共に人物エンティティ・データ構造にリストされているが、データ・ストア１８内のデータには、それらの間の明白な関係が格納されていない訴訟を考える。法律情報ファインダ／ビルダ・マイナーは、１組のルールに基づいて２つのエンティティを重要エンティティとして特定し、次に、２つの人物エンティティを関係付けることができるその他のエンティティが存在するかどうかを決定する。例えば、二人はある特定の企業または慈善団体の役員会のメンバであったり、新聞を共同発行していたことがあったり、ある種の商売での同僚または仲間であるとマスコミに報道されたことがあったりするかもしれない。このような場合、リンク・エンティティ（例えば、ジョンとジェーンが役員会メンバを務める企業、二人が共同発行していた新聞）は、「ブリッジ・エンティティ」と見なされ、発見要求に含めることができる。
【００５６】
その結果、訴訟についての発見フェーズを拡張して、一定のトピック、人物、または出来事に直接関係する文書を要求するだけではなく、「ブリッジ・エンティティ」から外部データ源にまで関係する文書を見つけることもできる。
【００５７】
システム１０がどのように利用できるかを示す別の非限定的な例として、競争製品マーケティング・アプリケーションを実施することができる。１組の製品についての情報をシステム１０に供給することができ、製品についての言及をその言及の文脈に基づいて明瞭に識別し、分類するように、マイナーを構成することができる。例えば、洗剤製品であるＴｉｄｅ７を、自然現象の潮流（ｔｉｄｅ）から区別することができる。また、言及の文脈を分類するのに、分類／要約マイナーが使用されるが、分類／要約マイナーは、好ましくは統計的手段を用いて、以前に分類／要約された言及の組に基づき言及を分類／要約する。さらに、地理マイナーを使用して、言及がなされている情報源に関連付けられた適切な地理的リンクを決定することができる。アプリケーションに自社製品のある組についての「評判」または「風評」を細かい単位に分割して提供させ、この「評判」または「風評」をライバル製品についての「評判」または「風評」と比較させることができる。この情報を、例えば、「評判」または「風評」の大きさに応じて色または輝度レベルを変えて地図上に表示することができる。また、注目に値する好ましい動向または好ましからぬ動向を識別するのを助けるため、この情報を継時的に追跡することもできる。別の機能として、ある製品に関連する広告費または他のマーケティング活動を表す地理的または人口統計的に区分化されたデータをシステムに供給することができ、マイナーはこうした活動と「評判」または「風評」との間の正の相関関係を検証して、その結果、マーケティング活動の有効性の指標を提供することができる。
【００５８】
本明細書に示し、詳細に説明した具体的な知識ベース型マイニング・システム用データ・ストアは、本発明の上述の目的を完全に達成することができるが、それは本発明の目下の好ましい実施形態であり、したがって、本発明によって広く企図される主題を代表するものであること、本発明の範囲は当業者に明らかとなり得るその他の実施形態を完全に包含すること、したがって、本発明の範囲は添付の特許請求の範囲以外の何ものによっても限定されないこと、特許請求の範囲における単数形での要素の参照は、明示的な言及がなされない限り、「唯一」ではなく「１つまたは複数」を意味するものとされることを理解されたい。当業者に周知のまたは後に周知となる、上記の好ましい実施形態の要素の構造的および機能的等価物はすべて、参照によって本明細書に明示的に組み込まれ、本発明の特許請求の範囲に包含されるものとする。さらに、装置または方法は、本発明による解決が求められているあらゆる問題に対処する必要はなく、本発明の特許請求の範囲に包含される必要はない。さらに、本開示内の要素、コンポーネント、または方法ステップは、その要素、コンポーネント、または方法ステップが特許請求の範囲に記載されているかどうかに関わりなく、公衆専用であることは意図されていない。
【図面の簡単な説明】
【００５９】
【図１】好ましいシステム・アーキテクチャのブロック図である。
【図２】全体的なロジックのフローチャートである。
【図３】水平テーブルの概略図である。
【図４】垂直テーブルの概略図である。
【図５】例示的なマイナーのロジックのフローチャートである。
【図１】
2005530224.tif 000003
【図２】
2005530224.tif 000004
【図３】
2005530224.tif 000005
【図４】
2005530224.tif 000006
【図５】
2005530224.tif 000007
【手続補正書】
【提出日】平成16年5月22日(2004.5.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
エンティティを格納する少なくとも１つのデータ・ストアと、
前記データ・ストアと通信を行い、低レベルの解析エンジン内で実施される第１のルールの組を用いて出力を生成する少なくとも１つの低レベルの解析エンジンと、
前記低レベルの解析エンジンの前記出力を受信し、高レベルの解析エンジン内で実施される第２のルールの組を用いて出力を生成する少なくとも１つの高レベルの解析エンジンとを含み、前記両出力は前記データ・ストア内のエンティティに追加されるデータ・マイニング・システム。
【請求項２】
前記データ・ストアが、垂直テーブルと水平テーブルとを含み、前記垂直テーブルは、前記出力の１つを用いて入力され、前記水平テーブルは、エンティティ識別子を用いて入力される、請求項１に記載のシステム。
【請求項３】
前記出力が、前記関連付けられたエンティティの個々の特徴を表すキーである、請求項１に記載のシステム。
【請求項４】
前記データ・ストアが、リレーショナル・データベース・システムである、請求項１に記載のシステム。
【請求項５】
前記データ・ストアが、ファイル・システムである、請求項１に記載のシステム。
【請求項６】
前記データ・ストアに関連付けられるインデクサをさらに含む、請求項１に記載のシステム。
【請求項７】
前記インデクサと前記データ・ストアとに関連付けられる高速半導体実装キャッシュをさらに含む、請求項６に記載のシステム。
【請求項８】
少なくとも１つの解析エンジンからのクエリを実行するために１つまたは複数の前記キャッシュ、インデクサ、およびデータ・ストアにアクセスするクエリ・プロセッサをさらに含む、請求項７に記載のシステム。
【請求項９】
少なくとも１つの解析エンジンに関連付けられる少なくとも１つのワーク・キューをさらに含む、請求項８に記載のシステム。
【請求項１０】
エンティティ識別子が、対応するエンティティ識別子とエンティティ・タイプを符号化する、請求項１に記載のシステム。
【請求項１１】
前記インデクサが、前記データ・ストア内に見出されるキーとキー値とのインデクスを含む、請求項６に記載のシステム。
【請求項１２】
前記インデクサが、「キーｋは値ｖをもつか？」といった形式のクエリに対する「イエス」または「ノー」値を格納するブーリアン・インデクスを含む、請求項１１に記載のシステム。
【請求項１３】
前記インデクサが、キー値の範囲を格納する範囲インデクスを含む、請求項１１に記載のシステム。
【請求項１４】
前記インデクサが、テキスト・インデクスを含む、請求項１１に記載のシステム。
【請求項１５】
前記インデクサが、インデクスを含み、前記データ・ストアが、特定の名前またはテキストがエンティティ内のどこに出現するかを示さず、ページが特定の特徴を有することだけを示すテーブルを含む、請求項６に記載のシステム。
【請求項１６】
前記インデクサが、ウェブ文書に索引付けを施し、前記文書に対するキーワード検索アプリケーション・プログラミング・インタフェース（ＡＰＩ）を提供する転置ファイル・テキスト・インデクサを一般化したものである、請求項６に記載のシステム。
【請求項１７】
前記インデクサが、ブーリアン・クエリを可能とする特定のエンティティ用の定義済キーを保持する、請求項６に記載のシステム。
【請求項１８】
字句解析が、前記インデクサ内の索引付けから分離される、請求項６に記載のシステム。
【請求項１９】
データ・マイニング・システムをサポートするデータを格納するための方法であって、
少なくとも１つのデータ・ストアにエンティティを格納するステップと、
少なくとも第１の解析エンジンを用いて前記データ・ストアと通信を行うステップと、
前記第１の解析エンジンに関連する第１のルールの組を用いて出力を生成するステップと、
前記出力を少なくとも第２の解析エンジンに送信するステップと、
前記第２のエンジンに関連する第２のルールの組を用いて出力を生成するステップと、
前記出力を前記エンティティに添付するステップとを含む方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明の第１の態様によれば、エンティティを格納する少なくとも１つのデータ・ストアと、データ・ストアと通信を行い、低レベルの解析エンジン内で実施される第１のルールの組を用いて出力を生成する少なくとも１つの低レベルの解析エンジンと、低レベルの解析エンジンの出力を受信し、高レベルの解析エンジン内で実施される第２のルールの組を用いて出力を生成する少なくとも１つの高レベルの解析エンジンとを含む、データ・マイニング・システムが提供され、出力はデータ・ストア内のエンティティに追加される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
本発明の別の態様では、データ・マイニング・システムをサポートするデータを格納するための方法は、少なくとも１つのデータ・ストアにエンティティを格納するステップと、少なくとも第１の解析エンジンを用いてデータ・ストアと通信を行うステップと、第１の解析エンジンに関連する第１のルールの組を用いて出力を生成するステップと、出力を少なくとも第２の解析エンジンに送信するステップと、第２のエンジンに関連する第２のルールの組を用いて出力を生成するステップと、前記エンティティに両出力を追加するステップとを含む。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
また、好ましいクローラは、フィードバック・チャネルを含み、その動作を必要に応じて変更することができる。本発明の好ましい非限定的な一実施形態では、クローラ１２は、米国特許第６，２６３，３６４号に開示され、本明細書に参照により組み込まれるクローラ、またはＩＢＭの同時係属中の「集中ウェブ・クローリングのためのシステムおよび方法（SYSTEM AND METHOD FOR FOCUSSED WEB CRAWLING）」と題する米国特許第６４１８４３３号（米国特許出願第０９／２３９，９２１号）に記載され、やはり本明細書に参照により組み込まれるクローラとする。クローラ１２を利用してデータを取得するのに加え、システム１０は、顧客データベース２４およびサードパーティ・データベース２４のデータを処理し、処理済データをデータ・ストア１８に送信する構造化データ収集器２２を、必要に応じて含むことができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】削除
【補正の内容】
【国際調査報告】
2005530224.tif 000008
2005530224.tif 000009
2005530224.tif 000010