(57)【要約】【課題】三つ以上のデータベーステーブルを連結するための連結情報が生成できるようにすること。【解決手段】データベース連結装置２０は、操作者から、連結対象として選択したデータベーステーブル１１、１２、１３、…のＵＲＬやパスを受け付けると（ステップＳ１０１）、それらデータベーステーブルのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報が記録された対応テーブル７１を、生成する（ステップＳ１０４〜Ｓ１１３）。【選択図】図１１
2008197976.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付手段，
前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成手段，
前記特徴語セット生成手段が生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成手段，
前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、前記特徴ベクトル生成手段が生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成手段，及び、
前記受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録手段
として機能させる
ことを特徴とする連結情報生成プログラム。
【請求項２】
前記コンピュータを、更に、
前記類似度の下限値を特定する類似度閾値情報を、操作者から入力装置を通じて受け付ける類似度閾値受付手段
として機能させるとともに、
前記類似度生成手段は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブルから、前記類似度閾値受付手段が受け付けた類似度閾値情報にて特定される類似度の下限値を下回るレコードを、削除する
ことを特徴とする請求項１記載の連結情報生成プログラム。
【請求項３】
前記コンピュータを、更に、
前記各類似度テーブル内において類似度の高さの順番にレコードを並べ替えた場合におけるその順番の下限値を特定する順位閾値情報を、操作者から入力装置を通じて受け付ける順位閾値受付手段
として機能させるとともに、
前記類似度生成手段は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブル内のレコードを、類似度の高さの順番に並べ替え、更に、前記順位閾値受付手段が受け付けた順位閾値情報にて特定される順位の下限値を下回るレコードを、削除する
ことを特徴とする請求項１又は２記載の連結情報生成プログラム。
【請求項４】
前記コンピュータを、更に、
前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録すべきか否かを指定する指定情報を、操作者から入力装置を通じて受け付ける指定受付手段
として機能させるとともに、
前記類似度生成手段は、前記指定受付手段が受け付けた指定情報が、前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録しないことを指定するものであった場合において、前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて類似度テーブルを作成するときには、その類似度テーブルに対応するフィールド名と異なるデータベーステーブルに属する比較対象フィールド名と類似度とだけを、その類似度テーブルに記録する
ことを特徴とする請求項１，２又は３記載の連結情報生成プログラム。
【請求項５】
コンピュータが、
幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付手順，
前記選択受付手順において受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成手順，
前記特徴語セット生成手順において生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成手順，
前記選択受付手順において受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、前記特徴ベクトル生成手順で生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成手順，及び、
前記受付手順において受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録手順
を実行する
ことを特徴とする連結情報生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータベーステーブルを連結するための連結情報を生成するためのプログラム及び方法に、関する。
【背景技術】
【０００２】
周知のように、多くの企業は、商品に関する情報や顧客に関する情報を、データベースにおいて管理している。そして、この種の企業同士が合併したり業務提携したりすることにより、互いのデータベースを相互利用しようとする場合に、それらデータベースのデータベーステーブルが連結されることがある。
【０００３】
複数のデータベーステーブルを連結する場合、各データベーステーブルに共通するフィールドを探し出す必要がある。ここで、各データベーステーブルのレコードが、互いに同じフィールド名のフィールドを有していれば、各データベーステーブルを連結することは簡単である。しかし、例えば、顧客名が事実上記録されているフィールドが各データベーステーブルに存在しているにも拘わらず、そのフィールド名が利用者名や登録者名のように、データベーステーブルによって異なることがある。このため、複数のデータベーステーブルを連結することは、現実的には、簡単ではない。
【０００４】
なお、二つのデータベーステーブルにおいて、フィールド名が互いに実質的に共通するフィールドを探し出す技術は、特許文献１において開示されている。
【０００５】
【特許文献１】特開２００５−０６３３３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、前述した特許文献１に係る技術は、実質的に共通するフィールド名同士を対応付ける連結情報が、二つのデータベーステーブルを連結するためだけの連結情報となっており、三つ以上のデータベーステーブルを連結するための連結情報を生成する技術は、存在していない。
【０００７】
本発明は、前述した従来の事情に鑑みてなされたものであり、その課題は、三つ以上のデータベーステーブルを連結するための連結情報が生成できるようにすることにある。
【課題を解決するための手段】
【０００８】
上記の課題を解決するための案出された連結情報生成プログラムは、コンピュータを、幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付手段，その選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成手段，その特徴語セット生成手段が生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成手段，選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、特徴ベクトル生成手段が生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成手段，及び、受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録手段として機能させることを、特徴としている。
【０００９】
このように構成されると、コンピュータは、操作者が連結対象として幾つかのデータベーステーブルを選択した場合に、それらデータベーステーブルのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報が記録された対応テーブルを、生成する。この対応テーブルに記録された連結情報には、双方のフィールド名の類似度が含まれているため、操作者は、類似度の高いフィールド名同士を、実質的に共通するフィールド名として把握することができる。
【発明の効果】
【００１０】
従って、本発明によれば、三つ以上のデータベーステーブルを連結するための連結情報が生成できるようになる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照しながら、本発明を実施するための最良の形態について、説明する。
【００１２】
図１は、三台以上のデータベース装置１０と本実施形態のデータベース連結装置２０とからなるコンピュータネットワークシステムの構成図である。
【００１３】
何れのデータベース装置１０とも、データベース機能が付加された汎用コンピュータであり、ネットワークを介してデータベース連結装置２０に通信自在に接続されている。従って、これらデータベース装置１０は、図示していないが、少なくとも、ストレージ、ＣＰＵ［Central Processing Unit］、メモリ、及び、通信アダプタを、内蔵している。なお、ストレージは、プログラムやデータを記憶しておくための記憶装置である。ＣＰＵは、そのストレージ内のプログラムに従って処理を実行する処理装置である。メモリは、ＣＰＵが読み出したプログラムやデータがキャッシュされたりＣＰＵの作業領域が展開されたりする記憶装置である。通信アダプタは、他のコンピュータとの間でデータの遣り取りをするための通信装置である。そして、何れのデータベース装置１０とも、データベース機能を実現するため、そのストレージに、レコードが蓄積されたデータベーステーブル１１，１２，１３，…と、与えられた検索条件を用いてそのデータベーステーブルを検索するためのプログラムとを、記憶している。
【００１４】
図２は、このデータベース連結装置２０の構成図である。
【００１５】
データベース連結装置２０は、データベース連結機能が付加されたパーソナルコンピュータである。従って、データベース連結装置２０は、液晶ディスプレイ等の表示装置２０ａと、キーボードやマウス等の入力装置２０ｂと、これら装置２０ａ，２０ｂに接続された本体とからなる。また、その本体は、少なくとも、ストレージ２０ｃ、ＣＰＵ２０ｄ、メモリ２０ｅ、及び、通信アダプタ２０ｆを、内蔵している。そして、このデータベース連結装置２０は、データベース連結機能を実現するため、そのストレージ２０ｃに、データベース連結ツール２１を、記憶している。このデータベース連結ツール２１は、複数のデータベースを連結するための連結情報を生成するためのプログラムである。このデータベース連結ツール２１は、入力装置２０ｂを通じて操作者からの実行指示を受けたＣＰＵ２０ｄにより、実行される。
【００１６】
図３及び図４は、データベース連結ツール２１による処理の流れを示す図である。
【００１７】
データベース連結ツール２１の実行開始後、最初のステップＳ１０１において、ＣＰＵ２０ｄは、連結対象となるデータベーステーブル１１，１２，１３，…の指定を、入力装置２０ｂを通じて操作者から受け付ける。具体的には、ＣＰＵ２０ｄは、データベーステーブル１１，１２，１３，…のＵＲＬ［Uniform Resource Locator］やパスを入力するための入力欄を含む画面を表示装置２０ａに表示し、その入力欄に入力されたＵＲＬやパスを取得することにより、連結対象として操作者に選択されたデータベーステーブル１１，１２，１３，…の指定を受け付ける。
【００１８】
なお、このステップＳ１０１を実行するＣＰＵ２０ｄは、前述した選択受付手段に相当する。
【００１９】
次のステップＳ１０２では、ＣＰＵ２０ｄは、ステップＳ１０１で連結対象として指定された全てのデータベーステーブル１１，１２，１３，…の各フィールド名の中から同一又は類似のフィールド名を抽出するときの抽出条件を、入力装置２０ｂを通じて操作者から受け付ける。なお、ここで受け付けられる抽出条件には、「類似度閾値」及び「順位閾値」がある。このうち、また、「類似度閾値」は、互いに類似していると判断すべきフィールド名同士の類似度（後述）の下限値である。「順位閾値」とは、連結対象として指定された全てのデータベーステーブルの全フィールドの名称のうち、或るフィールド名を処理対象とした場合において、その処理対象フィールド名以外の残りの全てのフィールド名を、処理対象フィールド名に対する類似度の高さの順に並べたときに、処理対象フィールド名に類似していると判断すべきフィールド名の順番の下限値を言う。ＣＰＵ２０ｄは、これら「類似度閾値」及び「順位閾値」を入力するための入力欄を含む画面を表示装置２０ａに表示し、その入力欄に入力された類似度閾値及び順位閾値を取得することにより、操作者から抽出条件を受け付ける。
【００２０】
なお、このステップＳ１０２を実行するＣＰＵ２０ｄは、類似度閾値受付手段及び順位閾値受付手段に相当する。
【００２１】
次のステップＳ１０３では、ＣＰＵ２０ｄは、連結対象として指定された全てのデータベーステーブルの全フィールドの名称のうち、或るフィールド名を処理対象とした場合において、その処理対象フィールド名と同一又は類似である否かが判断される比較対象の中に、処理対象フィールド名と同じデータベーステーブル内のフィールド名を含めるか否かの指定を、入力装置２０ｂを通じて操作者から受け付ける。具体的には、ＣＰＵ２０ｄは、同一データベーステーブル内のフィールド名も比較対象とするか否かを指定する指定情報を入力するための入力欄を含む画面を表示装置２０ａに表示し、その入力欄に入力された指定情報を通じて、同一データベーステーブル内のフィールド名も比較対象とするか否かの指定を受け付ける。
【００２２】
なお、このステップＳ１０３を実行するＣＰＵ２０ｄは、指定受付手段に相当する。
【００２３】
このステップＳ１０３の後、ＣＰＵ２０ｄは、第１の処理ループＬ１を実行する。第１の処理ループＬ１では、ＣＰＵ２０ｄは、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルのそれぞれについて、順に、ステップＳ１０４を実行する。
【００２４】
ステップＳ１０４では、ＣＰＵ２０ｄは、処理対象データベーステーブルのオブジェクト化を実行する。ここで、データベーステーブルのオブジェクト化について説明する。
【００２５】
図５は、データベーステーブル１１のデータ構造の一例を示す図である。また、図６は、図５のデータベーステーブル１１から生成したオブジェクト３１，３４及びテーブル３２，３３，３５の構造の一例を示す図である。
【００２６】
図５に示すように、データベーステーブル１１の各レコードは、フィールド名が従業員番号、氏名、住所、…である複数のフィールドを、有している。ＣＰＵ２０ｄは、このデータベーステーブル１１から、基底クラスオブジェクト３１、プロパティ名リストテーブル３２、インスタンスリストテーブル３３、複数のインスタンスオブジェクト３４、及び、複数のプロパティ値リストテーブル３５を生成する。
【００２７】
この基底クラスオブジェクト３１は、データベーステーブル１１のテーブル名を、クラス名として持つ。また、この基底クラスオブジェクト３１は、プロパティ名リストテーブル３２のポインタと、インスタンスリストテーブル３３のポインタとを、持っている。
【００２８】
プロパティ名リストテーブル３２は、データベーステーブル１１内のレコードが有するフィールドと同数のレコードを、有している。各レコードは、データベーステーブル１１内のレコードが有する各フィールドの名称を一意に特定するための番号が記録される「番号」フィールドと、そのフィールド名がプロパティ名として記録される「プロパティ名」フィールドとを、有している。
【００２９】
インスタンスリストテーブル３３は、データベーステーブル１１と同数のレコードを、有している。各レコードは、各インスタンスオブジェクト３４を一意に特定するための番号が記録される「番号」フィールドと、それらインスタンスオブジェクト３４のポインタが記録される「インスタンス」フィールドとを、有している。
【００３０】
インスタンスオブジェクト３４は、インスタンスを一意に特定するためのインスタンスＩＤと、プロパティ値リストテーブル３５のポインタとを持つ。このインスタンスオブジェクト３４とプロパティ値リストテーブル３５は、データベーステーブル１１の一レコードにつき、一つ生成される。従って、インスタンスオブジェクト３４とプロパティ値リストテーブル３５は、データベーステーブル１１のレコードと同数生成される。
【００３１】
プロパティ値リストテーブル３５は、データベーステーブル１１の一レコードのフィールド数と同数のレコードを、有している。各レコードは、データベーステーブル１１内の対応するレコードにおける各フィールドの値を一意に特定するための番号が記録されるフィールドと、その対応レコードの各フィールドの値が記録されるフィールドとを、有している。
【００３２】
なお、処理対象のデータベーステーブルから生成されるオブジェクト３１，３４及びテーブル３２，３３，３５は、一つの情報体系を構成する。
【００３３】
ＣＰＵ２０ｄは、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルのそれぞれについて、図６に示すようなオブジェクトを生成した後、第１の処理ループＬ１から離脱し、図３のステップＳ１０５へ処理を進める。
【００３４】
ステップＳ１０５では、ＣＰＵ２０ｄは、統合クラスオブジェクトを生成する。
【００３５】
図７は、統合クラスオブジェクト４１の構造の一例を示す図である。
【００３６】
図７に示すように、統合クラスオブジェクト４１は、クラス名を持つが、インスタンスリストテーブルのポインタと、プロパティ名リストテーブルのポインタは、持っていない。なお、このクラス名は、ステップＳ１０４で生成された全ての情報体系を連結してなる総合的な情報体系の名称である。ＣＰＵ２０ｄは、この統合クラスオブジェクト４１を生成した後、この統合クラスオブジェクト４１のクラス名を、ステップＳ１０４で生成された各基底クラスオブジェクト３１の上位クラスのクラス名として、これら基底クラスオブジェクト３１のそれぞれに格納する。なお、このように各情報体系を統合クラスオブジェクト４１に関連付けただけでは、各情報体系は、互いに連結されたことにはならない。後述の対応テーブル７１が生成されることにより、各情報体系は、互いに連結されたこととなる。
【００３７】
次のステップＳ１０６（図３）では、ＣＰＵ２０ｄは、依存情報管理オブジェクトを生成する。依存情報オブジェクトは、互いに関連付ける前の各情報体系（それらの基は、各データベーステーブル１１、１２、１３、…）と、互いに関連付けた後の総合的な情報体系との関係を管理するためのオブジェクトである。
【００３８】
図８は、依存情報管理オブジェクト５１の構造の一例を示す図である。
【００３９】
図８に示すように、依存情報管理オブジェクト５１は、総合的な情報体系の名称として、図７の統合クラスオブジェクト４１のクラス名と同じクラス名を、持っている。また、依存情報管理オブジェクト５１は、連結前情報体系名リストテーブル５２のポインタを持つ。その連結前情報体系名リストテーブル５２は、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルと同数のレコードを、有している。各レコードは、各データベーステーブルを一意に特定するための番号が記録される「番号」フィールドと、各データベーステーブルを管理するための連結前情報体系オブジェクト５３のポインタが記録される「連結前情報体系」フィールドとを、有している。連結前情報体系オブジェクト５３は、各データベーステーブルのテーブル名（すなわち基底クラスオブジェクト３１のクラス名）を、クラス名として持つとともに、基底クラスオブジェクト３１へのポインタを持つ。
【００４０】
次のステップＳ１０７（図３）では、ＣＰＵ２０ｄは、ステップＳ１０５で互いに関連付けられた各情報体系における全てのプロパティ名（すなわち、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルの全てのフィールド名）について、特徴語セットを生成する。特徴語セットとは、或る語句を特徴付ける語句の集合を言う。すなわち、ＣＰＵ２０ｄは、或るデータベーステーブル内の或るフィールド名について、そのフィールド名を特徴付ける語句を、各レコードにおけるそのフィールドの値の中から抽出し、抽出した語句を、特徴語セットとして、図６のプロパティ名リストテーブル３２の対応するプロパティ名に対応付けて、保存する。なお、図９には、「氏名」フィールド、「名前」フィールド、及び、「社員名」のフィールド名についてそれぞれ生成された特徴語セットが、示されている。なお、特徴語セットの生成方法については、様々なものが案出され、開示されているので、ここでは、説明しない。
【００４１】
なお、このステップＳ１０７を実行するＣＰＵ２０ｄは、前述した特徴語セット生成手段に相当する。
【００４２】
次のステップＳ１０８（図３）では、ＣＰＵ２０ｄは、ステップＳ１０５で互いに関連付けられた各情報体系における全てのプロパティ名（すなわち、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルの全てのフィールド名）のそれぞれについて、そのプロパティ名に対応付けられた特徴語セットに基づいて、特徴ベクトルを生成する。なお、特徴語セットから特徴ベクトルを生成する方法については、様々なものが案出され、開示されているので、ここでは、説明しない。
【００４３】
なお、このステップＳ１０８を実行するＣＰＵ２０ｄは、前述した特徴ベクトル生成手段に相当する。
【００４４】
ＣＰＵ２０ｄは、特徴語セット及び特徴ベクトルの生成を終えた後、第２の処理ループＬ２を実行する。第２の処理ループＬ２では、ＣＰＵ２０ｄは、ステップＳ１０４で生成された全てのプロパティ名リストテーブル内の全てのプロパティ名（全てのフィールド名）のそれぞれについて、一つずつ、順に、ステップＳ１０９を実行する。
【００４５】
ステップＳ１０９では、ＣＰＵ２０ｄは、処理対象プロパティ名について、処理対象プロパティオブジェクト及び類似度テーブルを、生成する。
【００４６】
図１０は、処理対象プロパティオブジェクト６１及び類似度テーブル６２のデータ構造の一例を示す図である。
【００４７】
処理対象プロパティオブジェクト６１は、処理対象プロパティ名とそれに関連する類似度テーブル６２とを結びつけるためのオブジェクトである。この処理対象プロパティオブジェクト６１は、処理対象のプロパティ名を持つとともに、そのプロパティ名に関連する類似度テーブル６２のポインタを持っている。
【００４８】
類似度テーブル６２は、処理対象プロパティ名に対するその処理対象プロパティ名以外の全てのプロパティ名の類似度を、記録しておくためのテーブルである。この類似度テーブル６２は、処理対象プロパティ名以外の全てのプロパティ名と同数のレコードを、有している。各レコードは、「類似プロパティ名」、「類似度」及び「順位」の各フィールドを、有している。「類似プロパティ名」フィールドは、処理対象プロパティ名の比較対象であるプロパティ名が記録されるフィールドである。「類似度」フィールドは、そのプロパティ名の特徴ベクトルと処理対象プロパティ名の特徴ベクトルとの間の距離が類似度として記録されるフィールドである。「順位」フィールドは、処理対象プロパティ名以外の全てのプロパティ名を類似度の高い順に並べた場合におけるそのプロパティ名の順位が記録されるフィールドである。なお、一対の情報要素が持つ特徴ベクトル同士の間の距離に基づいて情報要素間の類似度を求める方法については、特開２００５−６３３３２号公報に開示されている。
【００４９】
ＣＰＵ２０ｄは、ステップＳ１０４で生成された全てのプロパティ名リストテーブル３２内の全てのプロパティ名（すなわち、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルの全てのフィールド名）のそれぞれについて、処理対象プロパティオブジェクト６１及び類似度テーブル６２を生成した後、第２の処理ループＬ２から離脱し、図４のステップＳ１１０へ処理を進める。
【００５０】
ステップＳ１１０では、ＣＰＵ２０ｄは、ステップＳ１０３で受け付けた指定が、処理対象プロパティ名と同一の情報体系（データベーステーブル）のプロパティ名（フィールド名）を比較対象に含めることを示すものであるか否かを、判別する。そして、ステップＳ１０３で受け付けた指定が、処理対象プロパティ名と同一の情報体系のプロパティ名を比較対象に含めることを示すものであった場合、ＣＰＵ２０ｄは、ステップＳ１１０からステップＳ１１２へ処理を分岐させる。一方、ステップＳ１０３で受け付けた指定が、処理対象プロパティ名と同一の情報体系のプロパティ名を比較対象に含めることを示すものでなかった場合、ＣＰＵ２０ｄは、ステップＳ１１１へ処理を進める。
【００５１】
ステップＳ１１１では、ＣＰＵ２０ｄは、ステップＳ１０４で生成された全てのプロパティ名リストテーブル３２内の全てのプロパティ名（すなわち、ステップＳ１０１で受け付けた指定により特定される全てのデータベーステーブルの全てのフィールド名）のそれぞれについて、そのプロパティ名の類似度テーブル６２から、同一情報体系に含まれるプロパティ名のレコードを削除する。なお、或るプロパティ名とそれの比較対象であるプロパティ名とが同一情報体系に含まれるか否かは、ステップＳ１０４で生成された全てのプロパティ名リストテーブル３２のうち、二つのプロパティ名を含むプロパティ名リストテーブル３２が存在するか否かにより、判断される。
【００５２】
ＣＰＵ２０ｄは、全てのプロパティ名のそれぞれについて、類似度テーブル６２から同一情報体系のプロパティ名を含むレコードを削除する処理を行った後、ステップＳ１１２へ処理を進める。
【００５３】
ステップＳ１１２では、ＣＰＵ２０ｄは、全てのプロパティ名に対応する類似度テーブルから、ステップＳ１０２で受け付けた抽出条件（類似度閾値及び順位閾値）に合致しないレコードを、除去する。例えば、操作者により、類似度閾値及び順位閾値が、０．７及び３と設定された場合、各類似度テーブル６２からは、類似度が０．７未満、又は、順位が４位以下のレコードが、除去されることとなる。
【００５４】
なお、これらステップＳ１０９乃至Ｓ１１２を実行するＣＰＵ２０ｄは、前述した類似度生成手段に相当する。
【００５５】
次のステップＳ１１３では、ＣＰＵ２０ｄは、対応テーブル７１を生成する。対応テーブル７１は、全ての類似度テーブル６２を統合したテーブルである。
【００５６】
図１１は、対応テーブル７１のデータ構造の一例を示す図である。
【００５７】
図１１に示すように、対応テーブル７１の各レコードは、「番号」、「テーブル名１」、「フィールド名１」、「類似度」、「フィールド名２」及び「テーブル名２」の各フィールドを、有している。「番号」フィールドは、各レコードを一意に識別するための番号が記録されるフィールドである。「テーブル名１」フィールドは、類似度テーブル６２に対応付けられているプロパティ名（フィールド名）を含む情報体系（データベーステーブル）のクラス名（基底クラスオブジェクト３１がクラス名として持つテーブル名）が記録されるフィールドである。「フィールド名１」フィールドは、類似度テーブル６２に対応付けられているプロパティ名（フィールド名）が記録されるフィールドである。「フィールド名２」及び「類似度」の各フィールドは、「フィールド名１」フィールド内のプロパティ名に対応付けられている類似度テーブル６２における「類似プロパティ名」及び「類似度」フィールド内の値（プロパティ名及び類似度）がそれぞれ記録されるフィールドである。「テーブル名２」フィールドは、「フィールド名２」フィールド内の値（プロパティ名）を含む情報体系（データベーステーブル）のクラス名（基底クラスオブジェクト３１がクラス名として持つテーブル名）が記録されるフィールドである。
【００５８】
ＣＰＵ２０ｄは、全ての類似度テーブル６２に基づいて、図１１の対応テーブルを生成した後、図３及び図４に係る処理を終了する。
【００５９】
なお、このステップＳ１１３を実行するＣＰＵ２０ｄは、前述した記録手段に相当する。
【００６０】
次に、本実施形態のデータベース連結装置２０の作用及び効果について説明する。
【００６１】
操作者が、入力装置２０ｂを通じて、データベース連結ツール２１を実行すると、データベーステーブル１１、１２、１３、…のＵＲＬやパスを入力するための入力欄を含む画面（図示略）が、表示装置２０ａに表示される（ステップＳ１０１）。操作者は、任意のデータベーステーブルを幾つか選択して、それらのＵＲＬ及びパスをその入力欄に入力して、図示せぬ決定ボタンをクリックする。すると、抽出条件を入力するための入力欄を含む画面（図示略）が、表示装置２０ａに表示される（ステップＳ１０２）。操作者は、類似度閾値及び順位閾値として選択した値をその入力欄に入力して、図示せぬ決定ボタンをクリックする。すると、同一データベーステーブル内に含まれるフィールド名同士の比較を行うか否かを指定する指定情報を入力するための入力欄を含む画面（図示略）が、表示装置２０ａに表示される（ステップＳ１０３）。操作者は、指定情報をその入力欄に入力して、図示せぬ決定ボタンをクリックする。すると、操作者が選択した幾つかのデータベーステーブルを連結するための対応テーブル７１が、データベース連結装置２０によって、生成される（ステップＳ１０４〜Ｓ１１３）。
【００６２】
この生成された対応テーブル７１には、フィールド名と比較対象のフィールド名と双方のフィールド名の類似度とを対応付けたレコードが、連結情報として、記録されている。この連結情報には、双方のフィールド名の類似度が含まれているため、操作者は、類似度の高いフィールド名同士を、実質的に共通するフィールド名として把握することができる。
【００６３】
また、類似度閾値が設定されている場合には、この対応テーブル７１には、その類似度閾値以上を持つ連結情報のみが、記録される（ステップＳ１０９）。従って、操作者は、類似度閾値を適宜設定しておけば、類似度が閾値未満の連結情報を対応テーブル７１から事前に除去しておくことができる。
【００６４】
また、順位閾値が設定されている場合には、この対応テーブル７１には、各類似度テーブル６２においてその順位閾値以上の連結情報のみが、記録される（ステップＳ１０９）。従って、操作者は、順位度閾値を適宜設定しておけば、各類似度テーブル６２での順位が閾値未満の連結情報を、対応テーブル７１から事前に除去しておくことができる。
【００６５】
さらに、同一データベーステーブル内に含まれるフィールド名同士の比較を行わないよう指定されていた場合には、各類似度テーブル６２からは、その類似度テーブル６２に対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名のレコードが、除去される（ステップＳ１１０；ＹＥＳ，Ｓ１１１）。従って、操作者は、このような指定を事前に行っておけば、同じデータベーステーブルに属するフィールド名同士の連結情報を対応テーブル７１から事前に除去しておくことができる。
【００６６】
逆に、同一データベーステーブル内に含まれるフィールド名同士の比較を行うよう指定されていた場合には、各類似度テーブル６２からは、その類似度テーブル６２に対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名のレコードは、残されたままとなる（ステップＳ１１０；ＮＯ）。従って、操作者は、このような指定を事前に行っておけば、同じデータベーステーブルに属するフィールド名同士の連結情報をも対応テーブル７１に抽出させることができる。
【００６７】
（付記１）
コンピュータを、
幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付手段，
前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成手段，
前記特徴語セット生成手段が生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成手段，
前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、前記特徴ベクトル生成手段が生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成手段，及び、
前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録手段
として機能させる
ことを特徴とする連結情報生成プログラム。
【００６８】
（付記２）
前記コンピュータを、更に、
前記類似度の下限値を特定する類似度閾値情報を、操作者から入力装置を通じて受け付ける類似度閾値受付手段
として機能させるとともに、
前記類似度生成手段は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブルから、前記類似度閾値受付手段が受け付けた類似度閾値情報にて特定される類似度の下限値を下回るレコードを、削除する
ことを特徴とする付記１記載の連結情報生成プログラム。
【００６９】
（付記３）
前記コンピュータを、更に、
前記各類似度テーブル内において類似度の高さの順番にレコードを並べ替えた場合におけるその順番の下限値を特定する順位閾値情報を、操作者から入力装置を通じて受け付ける順位閾値受付手段
として機能させるとともに、
前記類似度生成手段は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブル内のレコードを、類似度の高さの順番に並べ替え、更に、前記順位閾値受付手段が受け付けた順位閾値情報にて特定される順位の下限値を下回るレコードを、削除する
ことを特徴とする付記１又は２記載の連結情報生成プログラム。
【００７０】
（付記４）
前記コンピュータを、更に、
前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録すべきか否かを指定する指定情報を、操作者から入力装置を通じて受け付ける指定受付手段
として機能させるとともに、
前記類似度生成手段は、前記指定受付手段が受け付けた指定情報が、前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録しないことを指定するものであった場合において、前記選択受付手段が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて類似度テーブルを作成するときには、その類似度テーブルに対応するフィールド名と異なるデータベーステーブルに属する比較対象フィールド名と類似度とだけを、その類似度テーブルに記録する
ことを特徴とする付記１，２又は３記載の連結情報生成プログラム。
【００７１】
（付記５）
コンピュータが、
幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付手順，
前記選択受付手順において受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成手順，
前記特徴語セット生成手順において生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成手順，
前記選択受付手順において受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、前記特徴ベクトル生成手順で生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成手順，及び、
前記選択受付手順において受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録手順
を実行する
ことを特徴とする連結情報生成方法。
【００７２】
（付記６）
前記コンピュータが、更に、
前記類似度の下限値を特定する類似度閾値情報を、操作者から入力装置を通じて受け付ける類似度閾値受付手順
を実行するとともに、
前記類似度生成手順において、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブルから、前記類似度閾値受付手段が受け付けた類似度閾値情報にて特定される類似度の下限値を下回るレコードを、削除する
ことを特徴とする付記５記載の連結情報生成方法。
【００７３】
（付記７）
前記コンピュータが、更に、
前記各類似度テーブル内において類似度の高さの順番にレコードを並べ替えた場合におけるその順番の下限値を特定する順位閾値情報を、操作者から入力装置を通じて受け付ける順位閾値受付手順
を実行するとともに、
前記類似度生成手順において、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブル内のレコードを、類似度の高さの順番に並べ替え、更に、前記順位閾値受付手順で受け付けた順位閾値情報にて特定される順位の下限値を下回るレコードを、削除する
ことを特徴とする付記５又は６記載の連結情報生成方法。
【００７４】
（付記８）
前記コンピュータが、更に、
前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録すべきか否かを指定する指定情報を、操作者から入力装置を通じて受け付ける指定受付手順
を実行するとともに、
前記類似度生成手順において、前記指定受付手順で受け付けた指定情報が、前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録しないことを指定するものであった場合において、前記選択受付手順で受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて類似度テーブルを作成するときには、その類似度テーブルに対応するフィールド名と異なるデータベーステーブルに属する比較対象フィールド名と類似度とだけを、その類似度テーブルに記録する
ことを特徴とする付記５，６又は７記載の連結情報生成方法。
【００７５】
（付記９）
幾つかのフィールドを有する複数のレコードを記憶する複数のデータベーステーブルの中から選択された幾つかのデータベーステーブルを特定する選択情報を、操作者から入力装置を通じて受け付ける選択受付部，
前記選択受付部が受け付けた選択情報により特定される全てのデータベーステーブルのそれぞれについて、そのデータベーステーブルの各フィールド名を特徴付ける語句の集合である特徴語セットを、各フィールドの値に基づいて生成する特徴語セット生成部，
前記特徴語セット生成部が生成した全ての特徴語セットのそれぞれについて、特徴ベクトルを生成する特徴ベクトル生成部，
前記選択受付部が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名に対するそれ以外の残りの比較対象フィールド名の類似度を、前記特徴ベクトル生成部が生成した特徴ベクトルに基づいて算出する処理、及び、そのフィールド名に対応する類似度テーブルに比較対象フィールド名と類似度とを対応付けて記録する処理を行う類似度生成部，及び、
前記選択受付部が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて、そのフィールド名とそれ以外の比較対象フィールド名と双方のフィールド名の類似度とを対応付けた連結情報を、記憶装置内の対応テーブルに記録する記録部
を備えることを特徴とする連結情報生成装置。
【００７６】
（付記１０）
前記類似度の下限値を特定する類似度閾値情報を、操作者から入力装置を通じて受け付ける類似度閾値受付部
を更に備えるとともに、
前記類似度生成部は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブルから、前記類似度閾値受付部が受け付けた類似度閾値情報にて特定される類似度の下限値を下回るレコードを、削除する
ことを特徴とする付記９記載の連結情報生成装置。
【００７７】
（付記１１）
前記各類似度テーブル内において類似度の高さの順番にレコードを並べ替えた場合におけるその順番の下限値を特定する順位閾値情報を、操作者から入力装置を通じて受け付ける順位閾値受付部
を更に備えるとともに、
前記類似度生成部は、全てのフィールド名のそれぞれについて類似度テーブルを生成した後、それら類似度テーブル内のレコードを、類似度の高さの順番に並べ替え、更に、前記順位閾値受付部が受け付けた順位閾値情報にて特定される順位の下限値を下回るレコードを、削除する
ことを特徴とする付記９又は１０記載の連結情報生成装置。
【００７８】
（付記１２）
前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録すべきか否かを指定する指定情報を、操作者から入力装置を通じて受け付ける指定受付部
を更に備えるとともに、
前記類似度生成部は、前記指定受付部が受け付けた指定情報が、前記類似度テーブルに対応するフィールド名と同じデータベーステーブルに属する比較対象フィールド名をその類似度テーブルに記録しないことを指定するものであった場合において、前記選択受付部が受け付けた選択情報により特定される全てのデータベーステーブルの全てのフィールド名のそれぞれについて類似度テーブルを作成するときには、その類似度テーブルに対応するフィールド名と異なるデータベーステーブルに属する比較対象フィールド名と類似度とだけを、その類似度テーブルに記録する
ことを特徴とする付記９，１０又は１１記載の連結情報生成装置。
【図面の簡単な説明】
【００７９】
【図１】三台以上のデータベース装置と本実施形態のデータベース連結装置とからなるコンピュータネットワークシステムの構成図
【図２】データベース連結装置の構成図
【図３】データベース連結ツールによる処理の流れを示す図
【図４】データベース連結ツールによる処理の流れを示す図
【図５】データベーステーブルのデータ構造の一例を示す図
【図６】図５のデータベーステーブルから生成したオブジェクト及びテーブルの構造の一例を示す図
【図７】統合クラスオブジェクトの構造の一例を示す図
【図８】依存情報管理オブジェクトの構造の一例を示す図
【図９】「氏名」フィールド、「名前」フィールド、及び「社員名」のフィールド名についてそれぞれ生成された特徴語セットを示す図
【図１０】処理対象プロパティオブジェクト及び類似度テーブルのデータ構造の一例を示す図
【図１１】対応テーブルのデータ構造の一例を示す図
【符号の説明】
【００８０】
１０    データベース装置
１１    データベーステーブル
１２    データベーステーブル
１３    データベーステーブル
２０    データベース連結装置
２０ａ  表示装置
２０ｂ  入力装置
２０ｃ  ストレージ
２０ｄ  ＣＰＵ
２１    データベース連結ツール
【図１】
2008197976.tif 000003
【図２】
2008197976.tif 000004
【図３】
2008197976.tif 000005
【図４】
2008197976.tif 000006
【図５】
2008197976.tif 000007
【図６】
2008197976.tif 000008
【図７】
2008197976.tif 000009
【図８】
2008197976.tif 000010
【図９】
2008197976.tif 000011
【図１０】
2008197976.tif 000012
【図１１】
2008197976.tif 000013