説明

データベースアクセスのための2段階データ検証およびマッピング

複数の目的データベースへ向けられ、任意の複数のソースから元となっている入力データクエリは、まず認証された標準形式へ変換され、次に目的データベースをクエリするのに使用される。特に、入力データクエリを受け取る上で、比較的正確な参照データベースが入力データの種類に基づいて選択される。この参照は、次に、正確に一致するレコード、または正確に一致するとみなすことができ、これによって入力データを認証する一致に近いレコードを見つける目的で、入力データのためにクエリされる。さもなければ、要求ソースは、新しいクエリを提供するために指示される。認証されたレコードを有すると、標準形式へ変換され、その後、検索される目的で目的データベースをクエリするのに使用される。さらなる実施形態において、複数の参照データベースは、データの標準形式を決定するか、またはデータの複数の標準形式を決定するためにクエリされる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、データベースアクセスに関する。より詳細には、本発明は、任意の複数の要求ソースからの入力データで、複数の目的データベースの1または複数にクエリするための方法および装置に関する。
【背景技術】
【0002】
今日、多くのコンピューティングシステムおよびエンドユーザは、必要な情報を抽出するために、多くの異なる目的データベースと対話する必要がある。これらの目的データベースへアクセスしていたコンピューティングシステムおよびエンドユーザの入力データは、しばしば多様性がある。一般に、情報を抽出するために、この様々な入力データを、各種ソースから目的データベースエントリへ、マッピングする必要がある。しかし、様々な入力データと様々なデータベースエントリ間の矛盾は、しばしばこのタスクを複雑にする。
【0003】
詳細には、様々な目的データベースは、それら自身およびお互いの間で、エラー、欠陥、矛盾(たとえば、不完全、不明瞭、不正確なエントリ)をしばしば含む。同様に、様々な入力データソース(コンピューティングシステムであろうと、エンドユーザであろうと)もまた、それら自身およびお互いの間で、しばしばエラー/欠陥および矛盾を含む。一般に、目的データベースおよび入力データでのエラーおよび欠陥のアクセスは、小さい(たとえば、データベースが実語「Street」をリストする一方で、入力データは略語「St.」を使用する。)か、またはより有名(たとえば、データベースのすべてのエントリが「Route 1」を参照し、入力データは代替名「Main St.」として入力される。)なものであることができる。しかし、エラー/矛盾の度合いに関わらず、データベースおよび入力データ間で整合性を決定できることは、いまだ必要があり、しばしば重要である。
【0004】
この問題の一例として、ユーザは、属性値に影響する任意の問題を特定するために、特定のストリートアドレス(street address)にある建物についての情報を探していると仮定する。関連情報は、国および町の不動産記録、州および連邦の税記録、1または複数の金融機関にわたる担保記録、新聞の保管などにある。さらに、たとえば、属性の入力住所にも基づいて、ユーザの代わりにこれら複数のソースを探すことができ、すべての関連情報を返すことができる、インターネットベースのサービスがあると仮定する。しかしこれらの実体に対応する各目的データベースは、潜在的に独自の住所の表現を有する。たとえば、記録は正確な特定のためにブロック番号および番地に依存するので、国の記録は、短縮した方式で住所を保持するかもしれない。国の記録は、ストリート名を表すのに使用される文字数に限られる、初期のコンピューティングシステムで格納されたかもしれない。金融記録は、異なるユーザがデータを入力し、異なる趣向を有するので、どのようにそれらがストリート名および指標を表すかにおいて、広く矛盾するかもしれない。さらに、すべてのこれらデータベースは、誤字またはスペルミスなどのデータ入力エラーを有する記録を含みそうである。全体として、サービスが、ユーザによって入力された入力住所を、様々なデータベースのそれぞれとうまく適合できないという強い可能性がある。
【0005】
そのようなマッピングの問題を克服すること、および様々なソースからのエラー/欠陥の可能性のある入力データと複数の異なるデータベースのエントリとの間の適合性を見つけることは、負担の大きいタスクである。より詳しくは、入力データのための「M」個の異なるソースがあると仮定すると、それらに特有の種類の変化/矛盾およびエラーを、それぞれが有する。たとえば、入力データソースは、データベース、ユーザインターフェースアプリケーションを介して取得されたデータ、電話の会話でカスタマーサービス担当者によって収集されたデータ、手書きメモの転写、音声認識出力などを含むことができる。さらに、任意の「M」個のソースからの任意の与えられた入力データ要求を、検索されうる「N」個の異なるソースがあると仮定する。例えば、上記の属性検索の例に加えて、コンピューティングシステムは、異なるサービスプロバイダーからの顧客記録、異なるマーケティング会社からの顧客データ、異なる法域からの法律データなどへアクセスする必要があるかもしれない。もう一度、これら「N」個のデータベースのそれぞれ特有の変化/矛盾およびエラーを有するだろう。任意の「M」個の入力ソースから任意の「N」個の目的データベースへ、入力データをマップするために、各ソースを各目的へマッピングするためのルールを定義することを伴う。任意の与えられた入力ソースおよび任意の与えられたデータベースのエラー/矛盾のために、任意のこれらのルールの複雑さは、高くなりうる。そして、ルールを定義するのに困難さに至り、特にこのクエリが複数の目的データベースにアクセスされる場合に、任意の与えられたクエリを処理するために、過剰の処理に至る。重要なものとして、定義される必要があるルールの総数は、およそ「M×N」個のルールである。この状況を悪くすることは、「M×N」個のルールが各フィールドで定義される必要があるので、このルールがフィールド特有であることを必要とする可能性がある。「M×N」個の製品のできる限り高い値は、複数の入力ソースと1または複数の目的データベースのエントリ間の直接のマッピングを実行しようとすることの困難性を示す。
【0006】
上記で説明したマッピング問題を乗り越える多くの既存のアプローチがある。1つのアプローチは、目的データベースとの対話を特定の選択肢に制限することであり、これによって、データが表現される方式を制限する。たとえば、プルダウンボックスは、データベースシステムにデータを入力するために使用でき、検索を行うときに入力データを特定する。このアプローチは、データベースおよびデータベースと入力データ間のエラーおよび矛盾を減らす。しかし、このアプローチは、自由形式の柔軟性を許さず、与えられたデータベースエントリの可能性のある値の数は、ユーザをひるませる結果にならない数に制限される場合のみ、実現可能である。
【0007】
第2のアプローチは、様々な入力データソースと複数の変動目的データベースの間で、動的マッピングを実行するための、複数のルールのセットを定義することである。上記のとおり、このアプローチは、すべての可能性のあるエラーおよび矛盾を考慮して、様々な入力データソースを各変動目的データベースへマッピングする、「M×N」個のルールを定義することを伴う。このアプローチが自由な形式の柔軟さを許す一方で、目的データベースおよび/または入力データソースの変動数が大きい場合、これは煩雑なタスクである。さらに、場合によってルールの複雑さが与えられると、この方法は、任意の与えられたクエリをさらに処理することとなる。
【0008】
第3のアプローチは、「クレンジングルール」を使用して複数のデータベースにまたがるデータを「クレンジング」し、これによって、エントリエラーを取り除き、データベース内およびデータベース間の両方の整合性をとる(たとえば、データベース内のすべてのアドレスエントリが、実語「Street」を使用するようクレンジングされる。)。コンピューティングシステムは、その後、入力データが現在データベースエントリで矛盾しないように、データベースへアクセスする前に入力データ上で「クレンジングルール」を使用することができる。代替として、コンピューティングシステムは、複数の目的データベース間で現在共通であるデータ表現へ、さらなる自由形式の入力データをマップする単一のルールを利用できる。一般に、この第3のアプローチは、目的データベースが共通して制御され/保持される状況、および複数のデータベース間の目的データが静的である状況によく適している。しかし、複数のデータベース間の目的データが動的ならば、データベース情報は、そのデータへのアップデートを行うために、連続的にクレンジングされていただろう。これは、整合性の問題を示す。
【発明の開示】
【発明が解決しようとする課題】
【0009】
第2および第3のアプローチは、マッチング問題に対処し、入力データおよびデータベースエントリに関して、自由形式の柔軟さを認めるが、部分一致(match)に関してさらなる問題も有する。特に、第2および第3のアプローチなどでマッチングのためのルールを定義するとき、厳密でない一致を検出するルール(つまり部分マッピングルール)を定義することも可能である。たとえば、部分一致は、共通のミススペルまたは誤字を含む入力に一致するすべてのレコードを受け入れることを伴う(たとえば、「Mian Street」は「Main Street」と同等である。)。部分マッピングは、データエントリエラーによって隠されたかもしれない意図したレコードを場合によっては特定する利点を提供する。しかし、全然一致しないアイテムを特定する不利点も有する。入力データまたは目的データのどちらかが正しいと推定できる場合、このような不一致の可能性は低くなりそうだ。しかし、エラーが、入力データおよび目的データの両方に存在する可能性がある場合、不一致の可能性は、大幅に高くなる。
【課題を解決するための手段】
【0010】
したがって、データベースアクセスの効率性と信頼性も改善する一方で、任意の複数のソースから任意の複数の目的データベースへアクセスするための、従来技術の欠点を克服し、ルールの数と複雑さを減らす方法およびシステムを提供することが望ましい。本発明の方法によると、要求ソースからの入力データで目的データベースをクエリする前に、入力データは最初に、「参照ベースのマッピングルール」を使用して、参照データベースと比較される。この参照データベースは、比較的静的であり、クレンジングされていると推定されることによって、参照データベースを実際の目的データベースより正確にする(参照データベースのクレンジングは、本発明の範囲外で起こる処理であり、本発明は、参照データベースが事前にクレンジングされていると推定されることに留意されたい。)。したがって、入力データをこの比較的正確な参照ソースと一致させる目的は、入力データを認証し、完全で、不明瞭でなく、正しい/エラーがないことを保障する。
【0011】
さらに詳しくは、参照データベースをクエリする本発明のこのステップは、正確に一致するレコードを作成するか(これにより、入力データを認証する)、一致するレコードがないか(新しい要求をする要求ソースを必要とする。つまり、エンドユーザ、コンピュータシステムなど。)のいずれかとなる。代替として、本発明のさらなる実施形態によれば、このステップは、1または複数の一致する可能性のあるレコードも作成するかもしれない。一致する可能性のあるレコードが見つかり、正確に一致するレコードが見つからないと仮定すると、一致する可能性のあるレコードの一つが、入力データに正確に一致するとみなされるのに「十分近い」かどうかについて決定がなされ、そしてもしそうならば、この方法は、このレコードで処理する。正確に一致するとみなすのに「十分近い」一致する可能性のあるレコードがない場合は、要求ソースは、新しいクエリを作るよう要求される。さらなる代替として、一致する可能性のあるレコードが見つかり、「十分近い」とみなされるものがないとき、これらの一致する可能性のあるレコードは要求ソースへ返され、入力に一致するレコードを選択するようソースに問う。そしてこのようなレコードは存在すると仮定する。
【0012】
入力データに一致するレコードが見つかるかまたは選択されると、入力データは、認証されたソースとみなされ、この一致レコードはここで、実際の目的データベースのクエリに使用される。さらに詳しくは、「変換ルール」を使用すると、この一致レコードは、次に、元の入力データにおいて表される情報すべてを表す単純化および規格化されたデータ形式である標準形式に変換されるが、参照データベースレコードより、検索される各目的データベースに一致させるほうがより単純な可能性がある。代替として、「変換ルール」は、参照データベースの形式を使用するのと同じように単純かもしれない(このような場合、実際の変換は行われない。)。しかし、「変換ルール」は、一致レコードを複数の標準形式に変換するために使用され、各形式は、検索されることになる関連付けられた目的データベースのエントリに対応し、一致するのが好ましい。とにかく、結果の標準形式または入力データの形式は、次に、「目的ベースのクエリルール」を使用して1つまたは複数の目的データベースのデータエントリと比較される。クエリからの結果の一致レコードは、次に、要求ソースへ返される。
【0013】
入力データおよび「C」個の参照データベースのために、「M」個の異なるソースがあると仮定すると、「参照ベースのマッピングルール」は、参照データベースへのアクセスのために「M×N」個のルール備える。同様に、「N」個の異なるデータベースで使用されるデータエントリの「N」個の異なる表現/形式があると仮定すると、認証され、規格化された入力データの標準形式は、「目的ベースのクエリルールが「N」個のルールからなることを許可する。同様に、単一の標準形式であろうと、複数の標準形式であろうと、一致レコードを変換することは、より悪い場合において、「変換ルール」は約「N」個のルールである。結果として、約「N」個の任意の目的データベースをクエリする任意の「M」個の要求ソースのための我々の複数段階の方法は、すべての入力データ形式をすべての目的データベースエントリ形式にマッピングするための従来技術の「M×N」個のルールではなく、約(M×C)+N個のルール(または、変換ルールを考慮する場合、(M×C)+2N個のルール)である。参照データベース「C」の数は、通常「M」および「N」と比較して少なく、しばしば1つに制限されることさえあるので、任意の複数のソースからの目的データベースをクエリする我々の方法は、定義される必要があるルールの数を大幅に単純化する。重要なものとして、(M×C)+N個のルールとみなそうが、(M×C)+2N個のルールとみなそうが、従来技術と比較して減らされたルール数は、任意の与えられたクエリの処理を減らすことになり、これによって、我々のデータベースクエリ方法は従来技術より効率的になる。
【0014】
我々の方法は、従来技術に多くのさらなる利点をも有する。第1に、入力データが認証されているので、目的データベース検索が結果レコードを作成しない場合、目的データベースが望まれる情報を含まないという、より高い信頼性がある。第2に、従来技術と同様に、我々の方法は、参照データベースおよび目的データベースへアクセスする際に、部分一致ルールをサポートする。しかし、参照データベースおよび目的データベースへアクセスするとき、参照データベースがアクセスする間、参照データベースが正しいと推定され、目的データベースがアクセスする間、入力データの標準形式が正しいと推定されるので、我々の方法は、実際には一致しないデータベースレコードを特定する可能性を減らす。第3に、入力データの標準形式は、元の入力データの不要な部分が簡単に取り除かれるので、単純化された目的データベース検索をできるようにし、さらに、元の入力データをコンポーネントの断片に分離し、優先順位が決めることができ、その後各断片は、階層形式で目的データベースを検索するのに使用されるので、より効率的な目的データベース検索をできるようにする。
【0015】
本発明の第2の実施形態によると、1つの参照データベースよりむしろ、複数の参照データベースが、入力データを認証するために、選択され、アクセスされる。これらの複数の参照データベースは、正確に一致するレコードまたは一致する可能性のあるレコードのために、シーケンス形式でデータベースを検索すること、すべての正確な一致および一致する可能性のあるレコードのために平行してデータベースを検索すること(そして次に、これらのレコードのうちの1つを使用すること)、および階層形式のデータベースを使用して断片の入力データを認証することを含む、多くの代替方法で使用できる。
【0016】
最後に、本発明の第3の実施形態によると、入力の複数の標準形式が、検索されるよう意図された各目的データベースをクエリするのに使用される。さらに詳しくは、いくつかの場合において、冗長性、および入力データを標準形式へマッピングするときに起こるかもしれない任意のエラーを克服するエラーチェックを提供するのに有益かもしれない。複数の標準形式は、たとえば、単一の参照データベースをクエリし、次に複数の形式の結果レコードを表現することによって、または複数の参照データベースにクエリし、各結果レコードを入力データの標準形式として使用することによって、取得できる。
【発明を実施するための最良の形態】
【0017】
図1は、本発明の実施形態による実行方法のための、コンピューティングシステム100の高レベルのアーキテクチャである。コンピューティングシステム100は、本発明の方法を実行するためのプロセッサ102を備え、この方法は、「認証およびマッピング処理」104として実行する。認証およびマッピング処理104は、1または複数の参照データベース106a〜d、および複数の目的データベース108a〜dを有する。参照データベースおよび目的データベースは、共同設置またはコンピューティングシステムの一部であることができ(たとえばデータベース106a〜bおよび108a〜b)、あるいはコンピューティングシステムの外部、およびネットワーク109を介してアクセス可能であってもよい(たとえばデータベース106c〜dおよび108c〜d)。認証およびマッピング処理104は、複数の要求ソース122から入力データクエリ110を受け取り、ここで入力データクエリ110は、1つまたは複数の目的データベース106へ向けられる。要求ソース122は、コンピューティングシステムの外部であり(たとえば、ネットワークインターフェースを介してコンピューティングシステム100にアクセスする、外部エンドユーザおよび外部システム)、および/または、コンピューティングシステム100のローカルである(たとえば、直接コンピューティングシステムにアクセスするエンドユーザか、システム上で実行されるローカルアプリケーション)。同様に、目的データベース108からレコードを受け取ると、認証およびマッピング処理104は、受け取ったレコード112を要求ソース122へ転送する。コンピューティングシステム100は、参照データベース104にアクセスするための「参照ベースのマッピングルール」114および、目的データベース108にアクセスするための「目的ベースのクエリルール」のデータベースも備える。コンピューティングシステム100は、参照データベース106を選択するための「参照データベースのリスト」124をさらに備える。随意的に、コンピューティングシステムは、さらに以下で説明される「変換ルール」118も備える。
【0018】
図2は、任意の複数の要求ソース122から、入力データクエリ110で、多数の目的データベース108うちの1または複数をクエリするための本発明の方法ステップの第1の実施形態を表すフローチャートである。さらに詳しくは、要求ソース122から入力データクエリを受け取った上で(ステップ202)、入力データは、それが完全で、不明瞭でなく、正しく/エラーがないことを保障することを、まず認証される。特に、ステップ204において、参照データベース106は、入力データの種類に基づいて最初に選択される。参照データベースは、比較的に静的であることが推定されるデータベースであり、注意深くクレンジングされてきたことによって、参照データベースは、目的データベース108と比べて、比較的に正確となる。(参照データベースのクレンジングは、本発明の外で起き、図2の方法ステップは、このクレンジングがすでに起きたと推定することに留意されたい。さらに、クレンジング処理が、プロセッサ集中であるかもしれない一方で、クレンジングの結果は、本発明によって実行される多くのエンドユーザ/目的データベースアクセス間の結果であると考えることができ、これによって、データベースアクセスごとのコストを小さくできることにさらに留意されたい。)これによってコンピューティングシステム100は、参照データベースのリスト124を保持することができ、データの種類ごとの参照が認証できる。入力データの種類に基づいて、認証およびマッピング処理104は、参照データベースの間から選ぶ。もう一度、ストリートアドレスの例を使用して、参照データベースは、商業用のストリートアドレスガイド、マッピングおよび地理的情報データベース、または郵便サービスを提供するものなどの公文書データベースを含むことができる。ここで、属性記述の種類に基づいて、入力データは、これらのアドレスベースの参照データベースの一つが選択されることを提供する。
【0019】
参照データベースを有すると、このデータベースは、「参照ベースのマッピングルール」114を使用して、入力データでステップ206において、クエリされる。これらのマッピングルール114は本発明特有ではなく、それ自身の正確なデータにあまり依存せず、入力データおよびこのデータに共通のエラー(入力データのソースに影響を与えるこれらの両方)の一般的に形式に依存することに留意されたい。それにもかかわらず、入力データおよび「C」この参照データベース106のために、「M」個の異なるソースがあると仮定すると、「参照ベースのマッピングルール」は、参照データベース106へアクセスするための「M×C」個のルールを備えることになる。入力データのそれぞれの種類は、それ自身のルールを有するかもしれないことにも留意されたい。重要なことには、参照データベース106がクレンジングされ、正確と推定されるので、「参照ベースのマッピングルール」114を備えた「M×C」個のルールのそれぞれは、従来技術のマッピングルールと比べて、単純化されることに留意されたい。
【0020】
「参照ベースのマッピングルール」114は、参照データベースをクエリする上で、入力データへ正確に一致するレコードが見つかり選択され(これによって入力データを検証する)、または一致するデータが見つからないかのいずれかということを定義される。さらに、ルール114は、データベースクエリが、1または複数の一致する可能性のあるレコードが見つかることになるという、部分マッピングルールも含むように定義されるのが好ましい。したがって、一致レコードが見つかると仮定すると、入力データは認証され、我々の方法はステップ206からステップ208へ進む。同様に、一致するレコードが見つからないと仮定すると、我々の方法は、ステップ206からステップ210へ進み、ここで要求ソースは、新しいクエリを作るよう指示される。しかし、ルール114が部分マッピングルールを含むと仮定すると、正確な一致が見つからないが、1または複数の一致する可能性のあるレコードが見つかる場合、我々の方法は、ステップ206からステップ212へ進み、ここで、これらの一致する可能性のあるレコードの1つが「十分近い」とみなせるかどうかに関しての決定がなされる(「参照ベースのマッピングルール」114に基づいて)。そのようなレコードが見つかる場合、我々の方法は、選択された一致に近いレコードを使用して、それが正確な一致かのように、ステップ212から208へ進む。しかし、一致する可能性のあるレコードの間からのレコードが正確な一致とみなすことができない場合、我々の方法は、ステップ212からステップ210へ進み、ここで、要求ソース(たとえば、エンドユーザまたはコンピューティングシステム)は、新しいクエリを作るよう指示される。
【0021】
ステップ212からステップ210へ進むことの代替として、一致する可能性のあるレコード間からのレコードが正確な一致とみなすことができなかった場合、我々の方法は、ステップ212からステップ214へ進むことができ、ここで、一致する可能性のあるレコードのセットは、入力データに一致するレコードを選択するためのソースを要求する入力データソース122へ、入力データを返される。要求ソースが、入力データと一致する一致する可能性のあるレコードがないことを示す場合、我々の方法は、ステップ210へ進み、ここで、要求ソースはもう一度新しいクエリを作るよう要求される。しかし、要求ソースが一致レコードを示す場合、このレコードは、ここで認証された入力データとして使用され、我々の方法は、ステップ214からステップ208へ進む。「参照ベースのマッピングルール」114は、部分マッピングルールを含む必要はないが(たとえばステップ212および214)、このようなルールを含むことが好ましいことに、もう一度留意されたい。それにも関わらず、このようなルールが含まれるとき、参照データベースは、クレンジングされ正確であると推定されるので、クエリが与えられると、我々の発明は、より少ない「一致する可能性のあるレコード」を作成し、これは従来技術と比較して、全くクエリに一致しない。
【0022】
ステップ208の方へいき、マッピングレコードが見つかり選択されると、このレコードは標準形式に変換され、これは、入力データ内にある全情報を表す単純化され規格化された形式である。標準形式への変換は、ルールに基づいてなされ、「変換ルール」115と呼ばれる。これらのルールは、参照データベースの形式を使用するのと同じくらい単純かもしれない(このような場合、実際の変換は行われない)。代替として、これらのルールは、参照データベースレコードを各目的データベースにより簡単に一致する単一の標準形式へ変換する処理ステップを定義できる。しかし、ルールは、参照データベースレコードを複数の標準形式へ変換する処理ステップを定義できることが好ましく、各形式は、検索されることになる関連目的データベースのエントリに対応し一致する。言い換えると、検索されることになる各特定目的データベースにとって、一致レコードは、データベースの個々の形式ルールに一致する標準形式に変換され、結果として多くの標準形式になる。重要なことには、標準形式を各目的データベースに対応させることは、一致が見つかることになる可能性を増加させる。
【0023】
一般に、一致するレコードから標準形式への変換を実行するための「変換ルール」118は、参照データベースレコードを分析すること、ルールに特有の特定の特徴を探すこと、およびこのような特徴が見つかった場合に変更行うことによって実行される。たとえば、参照データベースは、「Street」または「Avenue」と綴るかもしれないが、目的データベースは、「Street」を「St.」、「Avenue」を「Ave.」と、省略形を使用することが知られている。この場合に、「Street」が「St.」に置き換えられ、「Avenue」が「Ave.」に置き換えられるべきであることを特定することは、変換ルールにとって有利点である。重要なことに、一致レコードを単一の標準形式に変換しようと、複数の標準形式に変換しようと、より悪い場合、この「変換ルール」は、「N」個の異なるデータベースに使用されるデータエントリの「N」個の異なる表現/形式があることを仮定する約「N」個のルールである。重要なことに、クレンジングされた形式内の元の入力データを有することによって(つまり、参照データベースレコード形式)、1または複数の目的データベースのための標準形式へ変換することは、単純化されることに留意されたい。同様に重要なことに、1または複数の標準形式が作成されたかどうかは、この時点で、入力データは認証され規格化された形式である。
【0024】
ステップ216に進んで、入力データの標準形式を有すると、1または複数の目的データベース108は選択され、「目的ベースのクエリルール」116を使用して、入力データの標準形式を検索される(正確な目的データベースの数、およびどのデータベースが検索されたかは、要求ソースの初期の検索要求に基づく)。この検索の結果に基づいて、検索されたレコードは、ステップ218で要求ソースへ返される。
【0025】
もう一度、「目的ベースのクエリルール」116が本発明に特有でなく、検索される正確なデータの特定のコンテンツに依存し、そしてさらに検索される目的データベースエントリの一般的形式に依存するだろう。それにも関わらず、「N」個の異なるデータベースで使用されるデータエントリの「N」個の異なる表現/形式があると仮定すると、入力データの認証され、規格化された標準形式によって、「目的ベースのクエリルール」116がたった「N」個のルールから成ることになる。(各入力データの種類の標準化された形式はそれ自身のルールを有するかもしれないことにも留意されたい。)さらに、入力データの認証され規格化された標準形式のために、「目的ベースのクエリルール」を備えた「N」個のルールは、従来技術の一致ルールと比べて、単純化されている。全体として、任意の複数の要求ソース122が任意の「N」個の目的データベース108をクエリできるようにするための我々の複数段階の方法は、すべての入力データ形式をすべての目的データベースエントリ形式にマッピングさせるための従来技術の「M×N」このルールよりむしろ、約「(M×C)+N」個のルール(または、「変換ルール」118を考慮する場合、「(M×C)+2N」個のルール)である。参照データベース「C」は通常、「M」および「N」と比べて小さく、しばしば1つに制限されているかもしれないので、任意の複数のソースから目的データベースをクエリする我々の方法は、定義される必要のあるルールの数を大幅に単純化する(つまり、「(M×C)+N」は通常、「M×N」より少ない)。重要なことには、従来技術と比べて減らされたルールの数は、任意の与えられたクエリの処理を減らすことになり、これにより、我々のデータベースクエリ方法を、従来技術より効率的にする。
【0026】
本発明の増加した効率性および単純化されたルールに加えて、入力データの認証され規格化された標準形式は、「目的ベースのクエリルール」116、およびどのように目的データベースクエリがステップ216において実行されるかに関して、多くのさらなる有利点を有する。第1に、入力データは認証されているので、目的データベース検索が結果レコードを作成しない場合、目的データベースが望む情報を含まないというより高い信頼性がある。第2に、「目的ベースのクエリルール」116は、部分マッピングルールを含むのが好ましい。しかし、入力データの認証され規格化された標準形式は、目的データベースクエリを実行するために使用され、本発明は、従来技術とは違って、部分マッピングルールがまったく一致しないレコードを識別する可能性を減らす。
【0027】
同様に、部分マッピングルールを改善するための一つの方法は、距離メトリックを含むことである。例えば、1または2つの文字位置のみが異なるエントリは、一致または一致に近いと見なされるかもしれない。さらに、重さは、各目的データベースに特有の可能性のあるエラーを保障するこれらの距離メトリックに設定されることができる。(たとえば、タイプされたデータのための「QWERTY」キーボードに基づく重さ、テキスト化されたデータから光学的にスキャンされた文字の出現に基づく重さ、および音声認識のための音声学に基づく重さ。)しかし、エラーの可能性が、データベース内に存在するだけでなく入力データ内に存在する場合、この従来技術と同様に、これらの技術が不一致を作成する強い可能性がある。本発明は、入力データをあらかじめ認証し、これによってすべてのエラーを取り除いているので、距離メトリックは、不一致が起こることにあまり関心がないので、「目的データベースクエリルール」116の任意の部分マッピングルールにより簡単に統合される。参照データベースがクレンジングされ正確なので、距離メトリックは、「参照ベースのクエリルール」116の任意の部分マッピングルールによりも簡単に統合されることにも留意されたい。
【0028】
本発明の入力データの規格化された標準形式の第3の有利点は、目的データベースクエリを実行するのに入力データの全体形式を使用する必要がないことである。特に、標準形式は規格化されたフォーマットなので、元の入力データの必要でない部分は、簡単に取り除かれ、これによって、目的データベース検索を単純化する。同様に入力データの標準形式は、標準形式がここで元の入力データの及ばない追加の情報を含むことができるという点において、大きな有利点も有する。この追加の情報は、続くクエリを高め、可能にするために使用することができる。たとえば、前からの正規の検索例に戻って、ステップ206において検索される参照データベース106は、アドレス情報だけでなく、緯度および経度情報を含むレコードという結果になると仮定する。結果として、入力データの標準形式は、元の入力データを越えた追加の情報を含む。「目的ベースのクエリルール」116は、この緯度および経度情報が、そのような情報を含み、ストレートアドレス情報を含まない目的データベースをクエリするのに使用されるべきであることを特定できる。同様に、「目的ベースのクエリルール」116は、アドレス情報が、そのような情報を含んで、緯度/経度情報を含まない目的データベースをクエリするのに使用されるべきであることを特定できる。入力データの規格化された標準形式のために、緯度ならびに経度情報、および/またはアドレス情報は、目的データベースクエリから随時取り除かれる。結果として、本発明によって検索できる目的データベースの数は、元の入力データが許されるだろう数より、広くなる。
【0029】
参照は、本発明の多くの代替の実施形態でなされるだろう。特に、本発明の第2の実施形態によって、ステップ204において、(1よりむしろ)複数の参照データベースが入力データの種類に基づいて選択される。選択がなされると、複数の参照データベースは、入力データを認証するためにステップ206において多くの代替の方法のうちの一つで続いて使用できる。第1の代替として、複数の参照データベースを、正確に一致するレコードが見つかるか(この場合、方法はステップ208へ進む)、または一致するレコードが見つからないか(この場合、方法はステップ210へ進む)のいずれかまで、順番にクエリできる。代替として、「参照ベースのマッピングルール」114は、順番のクエリもまた、1または複数の一致に近い可能性のあるマッピングレコードが見つかることになるような、部分マッピングルールも含むことが好ましい。そのような一致に近いレコードが収集され、一致するレコードが見つからない場合、処理はステップ212へ進み。そこで、複数の参照データベース間からのこれらの一致に近いレコードのうちの一つが、正確に一致するとみなされることになる入力データに「十分近い」とみなすことができるかに関して、決定がなされる。一般に、複数の参照データベース間から一致に近いレコードがどのように選択されるかは、本発明に特有でない。一つのメカニズムは、参照データベースを重み付け/優先度付けし、一致に近いレコードを作成した最も優先度が高いデータベースから一致に近いレコードを選択することである。もう一つの可能なメカニズム/検討事項は、参照データベース間で定数に達したかである。(つまり、クエリされたデータベースの定足数がいくつかの「一致する可能性のあるレコード」を作成した場合、このレコードを正確に一致するとして使用する。)それにもかかわらず、ステップ212から、この方法は次に、上記の通りに続き、一致に近いレコードが正確に一致するとして選択された場合ステップ208へ進むか、またはソースを要求するステップ210が新しいクエリを作るために指示されるステップ210へ進むか、あるいは要求ソースが可能性のあるレコードの提供されたセットであるステップ214へ代替的に進む。
【0030】
第2の代替として、複数の参照データベースに関して、選択された参照データベースは、平行して検索され、ここですべての一致レコード、そしてできれば、すべての一致する可能性のあるレコードを収集する。もう一度、1または複数の一致レコードが見つかる場合、これらのレコードの一つは選択され、方法はステップ208へ進む。レコードが見つからない場合、方法はステップ210へ進む。正確に一致するレコードが見つからないが、1または複数の一致に近いかもしれないレコードが見つかると、方法はステップ212へ進み、そこでこれらの一致に近いレコードが正確に一致するとみなせるかどうかの決定がなされる。もう一度、優先度付け方法/定足数方法などは、一致するレコードとして一致に近いレコードを選択するのに使用できる。方法は、次に、上記のように処理する。
【0031】
第3の代替として、複数の選択された参照データベースは、複数段階の認証において使用でき、ここで、入力データが断片ごとに分析され認証される。たとえば、もう一度、入力データ属性アドレスと仮定すると、第一のパスにおいて、郵便番号参照データベースは、郵便番号を認証するためにクエリすることができる。認証されると、郵便番号は、ストリートアドレスに連結され、ストリートアドレスデータベースなどをクエリするのに、共に使用できる。
【0032】
本発明の第3の実施形態によって、入力データの複数の標準形式は、各ターゲットデータベースを検索するのに使用される。(例えば、各目的データベースは複数回検索され、それぞれが入力データの異なる標準形式を使用する。)入力データの複数標準形式は、多くの方法で取得できる。たとえば、単一の参照データベースは、ステップ206でクエリでき、結果のレコードはその後、「変換ルール」118に基づいてステップ208において異なる方法で表現される。代替として、複数の参照データベースは、ステップ206でクエリでき、それぞれの結果レコードは次に、入力データの標準形式を生成するのに使用される。たとえば、入力データとしてアドレスが与えられると、アドレスの参照データベースは、入力データのアドレスベースの標準形式を与えるためにクエリでき、緯度/経度の参照データベースは、入力データの緯度/経度標準形式を与えるためにクエリできる。それにもかかわらず、入力データのそれぞれの標準形式は、次に、「目的ベースのクエリルール」116を使用してそれぞれの意図した目的データベース108を検索するのに、ステップ216で使用される。言い換えると、検索されることになる各目的データベースは、複数回クエリされ、それぞれが入力データの各標準形式の一つを使用する。(上記の通り、入力データの各標準形式の同じ形式は、各目的データベースに駆り編成できることに留意されたい。)目的データベース上の複数クエリの結果は、次に比較される。与えられたデータベースからの結果レコードが一致する場合、共通の結果が要求ソースへ返される。与えられたデータベースからの結果レコードが異なる場合、レコードは疑われる。ここで、複数クエリからのすべてのレコードがさらなる選択のために要求ソースへ返されることができ、これらのレコードのフィルタリングされたサブセットが、さらなる選択のための要求ソースへ返されることができるか、またはすべてのレコードは正確でないとして捨てることができる。したがって、この実施形態の有利点は、いくつかの場合において、冗長性およびエラーチェックを提供するのに有益であるかもしれないことである。特に、いくつかの場合において、ステップ204〜214において、入力データを標準形式へマッピングする場合、エラーが起きるかもしれない。入力データを複数の分離した標準形式へマッピングすることによって、そして次に、目的データベースクエリを実行するために各形式を使用することによって、同一のエラーの確率は減る。与えられた目的データベースからの結果レコードが同じ場合、マッピングより正しくなりがちである。
【0033】
本発明の上記の実施形態は、例示としてのみを意図する。膨大な他の実施形態は、本発明の精神と範囲から離れることなく、当業者によって発案されるかもしれない。
【図面の簡単な説明】
【0034】
【図1】本発明の実施形態による方法を達成するためのコンピューティングシステムのアーキテクチャを示す。
【図2】任意の複数の要求ソースからの入力データで、複数の目的データベースの1つまたは複数をクエリする、本発明の一実施形態の方法ステップを表す。

【特許請求の範囲】
【請求項1】
入力データクエリに一致する1または複数の目的データベースのための任意の複数の目的データベースをクエリする方法であって、
前記入力データに一致する参照データベースレコードのための参照データベースをクエリするステップと、
一致する参照データベースが見つかる場合に、前記参照データベースレコードに対応する前記1または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
を備えたことを特徴とする方法。
【請求項2】
参照データベースレコードが見つからない場合に、新しい入力データクエリを入力する要求を生成するステップをさらに備えたことを特徴とする請求項1に記載の方法。
【請求項3】
参照データベースをクエリする前記ステップは、前記入力データと一致する可能性のある参照データベースレコードのための前記参照データベースをクエリするステップを備えたことを特徴とする請求項1に記載の方法であって、
一致する参照データベースレコードが見つからないが、1または複数の一致する可能性のある参照データベースが見つかる場合、一致する可能性のあるレコードが、入力データに一致に近いレコードとみなすことができるかを決定するステップと、
一致に近いレコードが決定される場合、前記一致に近いレコードに対応する前記1または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
をさらに備えたことを特徴とする請求項1に記載の方法。
【請求項4】
一致する参照データベースレコードが見つからず、1または複数の一致する可能性のある参照データベースが見つかるが、一致に近いレコードは決定されない場合、前記1または複数の一致する可能性のあるレコードの間から、前記入力データに対応するレコードを選ぶための選択要求を生成するステップと、
一致する可能性のあるレコードが前記入力データに対応し、選ばれる場合、前記選ばれたレコードに対応する前記1または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
をさらに備えたことを特徴とする請求項3に記載の方法。
【請求項5】
前記参照データベースをクエリする前に、前記参照データベースは、入力データの種類に基づいて、複数の参照データベースの間から選択されることを特徴とする請求項1に記載の方法。
【請求項6】
任意の複数の目的データベースをクエリする前記ステップは、一致する参照データベースレコードが見つかる場合に、前記参照データベースレコードに対応する可能性のあるレコードをクエリするステップをさらに備えたことを特徴とする請求項1に記載の方法。
【請求項7】
1または複数の目的データベースレコードのために、1または複数の目的データベースをクエリする方法であって、
入力データクエリを受け取るステップと、
入力データの種類に基づいて、複数の参照データベース間から1または複数の参照データベースを選択するステップと、
単一の参照データベースが選択された場合に、
前記入力データに一致する参照データベースレコードのために、単一の参照データベースをクエリするステップと、
一致する参照データベースが見つかる場合、前記1または複数の目的データベースレコードのための、前記1または複数の目的データベースの続くクエリのために、前記一致する参照データベースを使用するステップと
を備えたことを特徴とする方法。
【請求項8】
前記使用するステップは、前記一致する参照データベースレコードを単一の標準形式に変換するステップ、および前記1または複数の目的データベースレコードのための、前記1または複数の目的データベースをクエリするための前記標準形式を使用するステップを備えたことを特徴とする請求項7に記載の方法。
【請求項9】
前記使用するステップは、前記一致する参照データベースレコードを、各標準形式が1または複数の目的データベースのうちの1つに対応する1または複数の標準形式に変換するステップ、および前記1または複数の目的データベースレコードのための目的データベースに対応するクエリに、各標準形式を使用するステップを備えたことを特徴とする請求項7に記載の方法。
【請求項10】
前記使用するステップは、前記一致する参照データベースレコードから情報を取り除く前記ステップ、および1または複数のデータベースレコードのための前記1または複数の目的データベースの前記続くクエリのために、任意の保持する情報を続いて使用するステップを備えたことを特徴とする請求項7に記載の方法。
【請求項11】
前記一致する参照データベースレコードは、前記入力データクエリを超える追加の情報を備え、前記使用するステップは、
複数の形式を作成するために、前記一致する参照データベースレコードの前記情報を分離するステップと、
前記1または複数の目的データベースレコードのための、前記1または複数の目的データベースの前記続くクエリのために、前記複数の形式を使用するステップと
を備えたことを特徴とする請求項7に記載の方法。
【請求項12】
複数の参照データベースが選択された場合に、
前記入力データに一致する参照データベースが見つかるまで、前記複数の参照データベースを続いてクエリすることと、
一致する参照データベースが見つからない場合、1または複数の目的データベースレコードのための、1または複数の目的データベースの続くクエリのために、前記一致する参照データベースレコードを使用することと
を特徴とする請求項7に記載の方法。
【請求項13】
複数の参照データベースが選択された場合、
前記入力データに一致するすべての参照データベースのために、平行して前記複数の参照データベースをクエリすることと、
1または複数の目的データベースレコードが見つかる場合、
前記一致する参照データベースレコードを選択することと、
1または複数の目的データベースレコードのための、1または複数の目的データベースの続くクエリのために、前記一致する参照データベースレコードを使用することと
を特徴とする請求項7に記載の方法。
【請求項14】
前記選択するステップは、前記1または複数の目的データベースレコードの間に定足数があるかどうかに基づくことを特徴とする請求項13に記載の方法。
【請求項15】
複数の参照データベースが選択された場合、
前記入力データに一致するすべての参照データベースのために、前記複数の参照データベースをクエリすることと、
1または複数の一致する参照データベースレコードが見つからない場合、1または複数の目的データベースレコードのための、1または複数の目的データベースの続くクエリのために、各一致する参照データベースレコードを使用することと
を特徴とする請求項7に記載の方法。
【請求項16】
1または複数の目的データベースレコードのための、1または複数の目的データベースをクエリするシステムであって、
入力データクエリを参照データベースレコードにマッピングさせるための参照ベースのマッピングルールと、
参照データベースレコードを目的データベースレコードに一致させるための目的ベースのクエリルールと、
入力データクエリが与えられ、選択された参照データベース内のレコードを、前記与えられた入力データクエリへ一致させるために、前記参照ベースのマッピングルールを使用し、前記1または複数の目的データベース内の1または複数の目的データベースレコードを、前記一致した参照データベースレコードまたは前記一致した参照データベースレコードの標準形式へ一致させるために、目的ベースのクエリルールを使用する認証およびマッピング処理と
を備えたことを特徴とするシステム。
【請求項17】
前記認証およびマッピング処理は、前記選択された参照データベースを決定するために参照データベースリストを使用し、入力データの種類と前記参照データベース間の関係を特定する参照データベースリストをさらに備えたことを特徴とする請求項16に記載のシステム。
【請求項18】
参照データベースレコードを標準形式へ変換するための変換ルールのリストをさらに備えたことを特徴とする請求項16に記載のシステム。
【請求項19】
前記変換ルールのリストは、参照データベースレコードを、前記目的データベースに対応するカスタマイズされた標準形式へ変換するためでもあることを特徴とする請求項18に記載のシステム。

【図1】
image rotate

【図2】
image rotate


【公表番号】特表2007−535741(P2007−535741A)
【公表日】平成19年12月6日(2007.12.6)
【国際特許分類】
【出願番号】特願2007−509480(P2007−509480)
【出願日】平成17年3月24日(2005.3.24)
【国際出願番号】PCT/US2005/009860
【国際公開番号】WO2005/109180
【国際公開日】平成17年11月17日(2005.11.17)
【出願人】(399047921)テルコーディア テクノロジーズ インコーポレイテッド (61)
【Fターム(参考)】