JP2012212212A - Data retrieval device, data retrieval method and program - Google Patents

Data retrieval device, data retrieval method and program Download PDF

Info

Publication number
JP2012212212A
JP2012212212A JP2011076275A JP2011076275A JP2012212212A JP 2012212212 A JP2012212212 A JP 2012212212A JP 2011076275 A JP2011076275 A JP 2011076275A JP 2011076275 A JP2011076275 A JP 2011076275A JP 2012212212 A JP2012212212 A JP 2012212212A
Authority
JP
Japan
Prior art keywords
search
data
item
role
target item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2011076275A
Other languages
Japanese (ja)
Inventor
Mitsuteru Shiba
光輝 柴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011076275A priority Critical patent/JP2012212212A/en
Publication of JP2012212212A publication Critical patent/JP2012212212A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To realize a configuration which reflects a role designated to a column in a retrieval condition to perform data retrieval.SOLUTION: A retrieval server device 3 performs following steps: inputting table definition 2 in which two or more column names of retrieval objects are designated and a role such as a main key and an external key is designated to each column name, as a retrieval condition; adding a weighted value to table data including a column name to which a specific role is designated (for example, a column name to which the main key is designated) in the table definition 2 to calculate an evaluation value; performing ranking of the table data based on the evaluation value of each piece of the calculated table data; and outputting a result of the ranking to an input source of the table definition 2.

Description

本発明は、データ検索技術に関し、より具体的には、テーブルデータ(以下、単にテーブルともいう)等の複数の項目が含まれるデータに対するデータ検索技術に関する。   The present invention relates to a data search technique, and more specifically, to a data search technique for data including a plurality of items such as table data (hereinafter also simply referred to as a table).

システム統合などに伴って必要となるデータベースの統合処理では、異なるデータベースのテーブル間でデータの移行が必要であり、この際、各カラムの対応関係に従ってデータの内容を一方から他方へ反映するという処理が発生する。
このようなデータ移行をリアルタイムに実施するために、変更差分データのみを検出し、データ移行する方式(Change Data Capture)が利用されている。
このような移行方式では、連携元/連携先のテーブルの主キーのカラムが一致するか、1対1の対応が可能であることが必要となる。
The database integration process required for system integration requires data migration between tables in different databases. At this time, the process of reflecting the data contents from one to the other according to the correspondence of each column Occurs.
In order to carry out such data migration in real time, a method (Change Data Capture) in which only change difference data is detected and data migration is used.
In such a migration method, it is necessary that the columns of the primary key of the linkage source / destination table match or that one-to-one correspondence is possible.

前記データ連携処理を実現するためには、各テーブル間のカラムの対応関係を何らかの手段で検出して対応づける必要がある。
このような対応関係を検出する作業を自動化するために、スキーママッチング技術と呼ばれる技術が利用される。
スキーママッチング技術は、対応関係を検出する2個のテーブルやテーブルの集合体であるスキーマなどの構造を入力として受け取り、これらの2個の構造の間の対応関係を出力する。
以下では一例としてデータベースのテーブルとその子要素であるカラムを比較する場合について説明する。
In order to realize the data linkage processing, it is necessary to detect the correspondence between columns of each table by some means.
In order to automate the operation of detecting such a correspondence relationship, a technique called a schema matching technique is used.
The schema matching technique receives, as an input, a structure such as two tables for detecting correspondence or a schema that is a collection of tables, and outputs the correspondence between these two structures.
As an example, the case of comparing a database table and its child element column will be described below.

スキーママッチング技術において、各テーブルのカラム間の対応関係を検出する際には、カラム名やデータ型、その他の情報を用いて複数の類似判定手法により複数の判定結果を生成し、それらの結果を総合的に判断して最終的な類似度を決定する方法が一般的である。
このため、一般的に処理量が多く時間のかかる処理となる。
社会インフラなどの大規模システム(数千テーブル程度を想定)の場合、データベースのテーブル情報を専用のデータベースなどに格納し、スキーマ情報の一元管理を実施することが一般的であるが、ある連携先テーブルに対して、データ連携可能な連携元テーブルについての情報が事前に得られていない場合、登録されたテーブルすべてに対してスキーママッチングを実施する必要があり、膨大な時間を要してしまう。
In schema matching technology, when detecting the correspondence between columns in each table, multiple determination results are generated by multiple similarity determination methods using column names, data types, and other information. A method of determining the final similarity based on comprehensive judgment is common.
For this reason, the processing is generally large and time-consuming.
In the case of large-scale systems such as social infrastructure (assuming about several thousand tables), it is common to store the database table information in a dedicated database, etc., and perform unified management of schema information. If the information about the linkage source table that can be linked to the table is not obtained in advance, it is necessary to perform schema matching on all the registered tables, which takes a lot of time.

非特許文献1に記載の技術では、すべてのテーブルに対してスキーママッチング実施を避けるために全文検索エンジンを利用して、入力として与えた比較対象テーブルカラムと類似したカラムを持つテーブル群をスキーマ単位でまとめて出力として提供している。
ここでは、テーブル定義情報はデータ定義言語(DDL:Data Definition Language)等で記載されて与えられており、通常の全文検索のように検索キーワードや検索クエリ文のような文字列ではなく、入力データとして構造を持ったデータをそのまま渡している点に特色がある。
非特許文献1では、テーブル構造に含まれるテーブル名、カラム名などを抽出して、これを列挙することにより検索キーワードを作成している。
また、あらかじめスキーマ情報DB内のテーブル情報に対して、全文検索用のインデックスを生成し、上記のとおり生成した検索キーワードを全文検索エンジンの入力として与えている。
出力された比較候補テーブル群に対して集約処理を施して、工夫されたGUI(Graphical User Interface)によってユーザに提示することで、ユーザはスキーママッチングを実施するテーブルを選択する。
In the technique described in Non-Patent Document 1, a full text search engine is used to avoid schema matching for all tables, and a table group having a column similar to the comparison target table column given as an input is schema unit. Are provided as output together.
Here, the table definition information is given in the data definition language (DDL: Data Definition Language) and the like, and is not a character string such as a search keyword or a search query sentence as in a normal full-text search, but input data. The characteristic is that the data with the structure is passed as it is.
In Non-Patent Document 1, a search keyword is created by extracting table names, column names, and the like included in the table structure and listing them.
Also, an index for full text search is generated in advance for the table information in the schema information DB, and the search keyword generated as described above is given as an input to the full text search engine.
By performing aggregation processing on the output comparison candidate table group and presenting it to the user through a devised GUI (Graphical User Interface), the user selects a table for performing schema matching.

Kuang Chen and Jayant Madhavan and Alon Halevy: Schemr: a Schema Search Engine for Information Integration, ACM SIGMOD ’09Kuang Chen and Jayt Madhavan and Alon Halevy: Schemr: a Schema Search Engine for Information Integration, ACM SIGMOD '09

従来技術のスキーマ検索機能では、入力されたテーブル情報よりカラム名などを抽出して、一連の検索キーワードを作成し、全文検索エンジンに提供している。
例えば、注文テーブルが「注文ID、顧客名、商品コード、注文数」というカラムを持つ場合、全文検索エンジンに与えるキーワードは次のようになる。
“注文テーブル OR 注文ID OR 顧客名 OR 商品コード OR 注文数”
このため、検索の入力になるテーブル内の各カラムは併記されているのみで重要度を判断する機能を有していないという課題がある。
データ連携を前提とする場合、主キーのカラムの重要度が高いと考えられるが、一般的に1個のテーブル内で主キーのカラムとなるのは数個程度である。
1カラムでテーブルのレコードが一意に特定されることが望ましいが、実際には複数カラムをあわせて一意となる場合も多く、複数カラムが主キーとなる場合が考えられるので、主キーは必ずしも1カラムで構成されるとはいえない。
大規模システムで使用されるテーブルのカラム数が100カラム以上の場合あるが、全文検索キーワードをカラム名の列挙で示した場合、カラム数が100カラム以上などの場合、相対的に主キーのカラムの重要度が低くなってしまう課題がある。
結果として、比較対象テーブルと属性カラムの一致は多いが、キーとなるカラムが一致していないテーブルが、検索結果として返却されると想定される。
また全文検索エンジンは、一般にキーワードの出現回数を、検索ランキングを決定する情報として利用しているために、例えば外部キーなどの複数テーブルで同名になりやすいキーが含まれている場合、検索ランキングの判断に外部キーが大きな影響を与えてしまうという課題がある。
In the conventional schema search function, column names and the like are extracted from input table information, a series of search keywords are created, and provided to the full-text search engine.
For example, when the order table has columns of “order ID, customer name, product code, number of orders”, keywords given to the full-text search engine are as follows.
“Order table OR Order ID OR Customer name OR Product code OR Number of orders”
For this reason, there is a problem in that each column in the table to be input for the search is only written together and does not have a function of determining the importance.
When data linkage is assumed, it is considered that the importance of the primary key column is high, but generally only about several primary key columns are included in one table.
Although it is desirable to uniquely identify a table record with one column, there are many cases in which a plurality of columns are actually unique, and there are cases where a plurality of columns become the primary key. It cannot be said that it is composed of columns.
There are cases where the number of columns in a table used in a large-scale system is 100 columns or more, but when the full-text search keyword is indicated by enumeration of column names, the number of columns is 100 columns or more, etc., the primary key column is relatively There is a problem that the importance of becomes low.
As a result, it is assumed that a table in which the comparison target table and the attribute column have many matches but the key column does not match is returned as a search result.
In addition, since the full-text search engine generally uses the number of times the keyword appears as information for determining the search ranking, for example, if a key that is likely to have the same name is included in a plurality of tables such as an external key, the search ranking There is a problem that the foreign key has a great influence on the judgment.

この発明は、上記のような課題を解決することを主な目的の一つとしており、主キーや外部キーといった項目に指定されている役割を反映させてデータ検索を行う構成を実現することを主な目的とする。   One of the main objects of the present invention is to solve the above-described problems, and to realize a configuration for performing a data search reflecting the roles specified in items such as a primary key and a foreign key. Main purpose.

本発明に係るデータ検索装置は、
複数の項目を含み、前記複数の項目のうちの任意の項目に、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられる項目データ
に対する検索を行うデータ検索装置であって、
前記複数種の役割の各々に対する係数値が定義される係数値定義情報を記憶する係数値定義情報記憶部と、
検索の対象となる2以上の項目が検索対象項目として指定され、検索対象項目ごとに役割が指定される検索条件を入力する検索条件入力部と、
前記検索条件において特定の役割が指定されている検索対象項目を優先検索対象項目として選択し、優先検索対象項目を前記特定の役割として含む加重対象項目データに対して所定の加重値を係数値に加重して評価値を算出する旨の加重ルールを生成する優先検索対象項目選択部と、
検索対象項目ごとに、検索対象項目を含む項目データを検索し、検索した項目データが前記加重対象項目データに該当しない場合は、検索した項目データにおける検索対象項目の役割を判断し、当該検索対象項目の役割に対応する係数値を用いて評価値を算出し、検索した項目データが前記加重対象項目データに該当する場合は、検索した項目データにおける検索対象項目の役割を判断し、前記加重ルールに従い、当該検索対象項目の役割に対応する係数値に前記加重値を加重して評価値を算出する検索実行部と、
前記検索実行部により算出された評価値に基づき、前記検索実行部により検索された項目データの順位付けを行い、項目データの順位付けの結果を示す検索結果を、前記検索条件の入力元に出力する検索結果出力部とを有することを特徴とする。
The data search apparatus according to the present invention
A data search device that includes a plurality of items, and performs a search for item data in which any of the plurality of items is assigned one of a plurality of roles for data processing,
A coefficient value definition information storage unit for storing coefficient value definition information in which coefficient values for each of the plurality of roles are defined;
A search condition input unit for inputting a search condition in which two or more items to be searched are specified as search target items and a role is specified for each search target item;
A search target item in which a specific role is specified in the search condition is selected as a priority search target item, and a predetermined weight is used as a coefficient value for weight target item data including the priority search target item as the specific role. A priority search target item selection unit that generates a weighting rule for weighting and calculating an evaluation value;
For each search target item, search the item data including the search target item, and if the searched item data does not correspond to the weighted target item data, determine the role of the search target item in the searched item data, and An evaluation value is calculated using a coefficient value corresponding to the role of the item, and when the searched item data corresponds to the weighted item data, the role of the searched item in the searched item data is determined, and the weighting rule A search execution unit that calculates an evaluation value by weighting the weight value to a coefficient value corresponding to the role of the search target item,
Based on the evaluation value calculated by the search execution unit, the item data searched by the search execution unit is ranked, and the search result indicating the result of ranking the item data is output to the input source of the search condition And a search result output unit.

本発明によれば、検索条件において特定の役割が指定されている項目を前記特定の役割として含む項目データに対して加重値を加重して評価値を算出するため、特定の役割が指定されている項目が含まれる項目データの評価値を高くすることができ、項目の役割を反映させたデータ検索を行うことができる。   According to the present invention, the evaluation value is calculated by weighting the item data including the item for which the specific role is specified in the search condition as the specific role, and thus the specific role is specified. It is possible to increase the evaluation value of item data including a certain item, and to perform a data search reflecting the role of the item.

実施の形態1に係るシステム構成例を示す図。FIG. 3 is a diagram illustrating an example of a system configuration according to the first embodiment. 実施の形態1に係る検索サーバ装置の構成例を示す図。FIG. 3 shows a configuration example of a search server device according to the first embodiment. 実施の形態1に係るテーブル定義の入力例を示す図。FIG. 6 is a diagram illustrating an example of inputting a table definition according to the first embodiment. 実施の形態1に係る入力されたテーブル定義の構造を示す図。FIG. 4 is a diagram showing a structure of an input table definition according to the first embodiment. 実施の形態1に係るクエリ分解部の動作例を示すフローチャート図。FIG. 4 is a flowchart showing an operation example of a query decomposition unit according to the first embodiment. 実施の形態1に係る重要度判断表の例を示す図。FIG. 4 is a diagram showing an example of an importance determination table according to the first embodiment. 実施の形態1に係るクエリ分解部の出力イメージを示す図。FIG. 4 shows an output image of a query decomposition unit according to the first embodiment. 実施の形態1に係る検索処理のフローチャート図。FIG. 4 is a flowchart of search processing according to the first embodiment. 実施の形態2に係るテーブル定義の入力例を示す図。FIG. 10 is a diagram illustrating an example of inputting a table definition according to the second embodiment. 実施の形態2に係る重要度判断表及び追加要素判断表の例を示す図。The figure which shows the example of the importance determination table and additional element determination table which concern on Embodiment 2. FIG. 実施の形態1に係る検索インデックスの例を示す図。FIG. 3 shows an example of a search index according to the first embodiment. 実施の形態1に係る検索インデックス重みデータの例を示す図。FIG. 6 is a diagram showing an example of search index weight data according to the first embodiment. 実施の形態1に係る評価値の算出例を示す図。FIG. 6 is a diagram showing an example of calculating an evaluation value according to the first embodiment. 実施の形態1に係る評価値の算出例を示す図。FIG. 6 is a diagram showing an example of calculating an evaluation value according to the first embodiment. 実施の形態2に係るクエリ分解部の出力イメージを示す図。The figure which shows the output image of the query decomposition | disassembly part which concerns on Embodiment 2. FIG. 実施の形態1又は2に係る検索サーバ装置のハードウェア構成例を示す図。The figure which shows the hardware structural example of the search server apparatus which concerns on Embodiment 1 or 2. FIG.

実施の形態1.
本実施の形態では、検索処理への入力としてデータベーステーブルのような構造を受け取り、構造に含まれる項目の重要度を考慮した検索結果を返却する装置および方法を説明する。
そして、本実施の形態では、検索インデックス作成時の重み付加方法、および検索を実行する時の検索インデックスの重み付けのON/OFF操作、および検索自体に付与する重み、さらには検索結果集約時の重みを制御することにより、項目の重要度を検索結果に反映することが可能となる。
以下、図面を参照して、本実施の形態について説明する。
Embodiment 1 FIG.
In the present embodiment, an apparatus and method for receiving a structure such as a database table as an input to search processing and returning a search result considering the importance of items included in the structure will be described.
In this embodiment, the weight addition method at the time of creating the search index, the ON / OFF operation of the search index weight at the time of executing the search, the weight given to the search itself, and the weight at the time of collecting the search results By controlling the item, it is possible to reflect the importance of the item in the search result.
Hereinafter, the present embodiment will be described with reference to the drawings.

図1は、本実施の形態に係るシステム構成例を示す。
図1では、検索サーバ装置3においてテーブルデータを検索し、検索結果を検索クライアント装置1に提示する例を説明する。
つまり、検索クライアント装置1が検索条件としてテーブル定義2を検索サーバ装置3に与え、検索サーバ装置3が、テーブル定義2と類似する1つ以上のテーブルを検索し、検索結果をテーブル群4として、検索クライアント装置1に返却する。
スキーママッチング処理装置5は、検索クライアント装置1にて選択されたテーブル群4の中からユーザが選択した1つのテーブルと、テーブル定義2とのスキーママッチングを実行するものである。
スキーママッチング処理装置5は、本実施の形態に係る検索サーバ装置3の動作とは直接関係しないが、本実施の形態に係る検索サーバ装置3の出力を利用するシステムとして表したものである。
FIG. 1 shows a system configuration example according to the present embodiment.
FIG. 1 illustrates an example in which table data is searched in the search server device 3 and the search result is presented to the search client device 1.
That is, the search client device 1 gives the table definition 2 to the search server device 3 as a search condition, the search server device 3 searches for one or more tables similar to the table definition 2, and sets the search result as the table group 4. Return to the search client device 1.
The schema matching processing device 5 executes schema matching between one table selected by the user from the table group 4 selected by the search client device 1 and the table definition 2.
The schema matching processing device 5 is not directly related to the operation of the search server device 3 according to the present embodiment, but is represented as a system that uses the output of the search server device 3 according to the present embodiment.

検索クライアント装置1は、検索サーバ装置3に対してテーブルの検索を要求する。
テーブル定義2は、検索クライアント装置1が検索サーバ装置3に与える検索条件のデータである。
The search client device 1 requests the search server device 3 to search the table.
The table definition 2 is search condition data that the search client device 1 gives to the search server device 3.

検索サーバ装置3は、検索クライアント装置1からの検索要求をうけて、検索結果を返却する。
より具体的には、検索サーバ装置3は、検索の対象となる2以上のカラム名が指定され、カラム名ごとに主キー、外部キーといった役割が指定されるテーブル定義2を検索条件として入力する。
そして、検索サーバ装置3は、テーブル定義2において特定の役割が指定されているカラム名(例えば、主キーが指定されているカラム名)が含まれるテーブルデータに対して加重値を加重して評価値を算出し、算出したテーブルデータごとの評価値に基づきテーブルデータの順位付けを行い、順位付けの結果をテーブル定義2の入力元である検索クライアント装置1に出力する。
検索サーバ装置3は、図1に示すように、テーブル検索部31とテーブル登録部32に大別される。
テーブル検索部31とテーブル登録部32の詳細は、後述する。
なお、検索サーバ装置3は、データ検索装置の例である。
The search server device 3 receives a search request from the search client device 1 and returns a search result.
More specifically, the search server device 3 inputs, as a search condition, a table definition 2 in which two or more column names to be searched are specified and a role such as a primary key and a foreign key is specified for each column name. .
Then, the search server device 3 evaluates by weighting the table data including the column name (for example, the column name for which the primary key is specified) for which a specific role is specified in the table definition 2. A value is calculated, the table data is ranked based on the calculated evaluation value for each table data, and the ranking result is output to the search client device 1 that is the input source of the table definition 2.
As shown in FIG. 1, the search server device 3 is roughly divided into a table search unit 31 and a table registration unit 32.
Details of the table search unit 31 and the table registration unit 32 will be described later.
The search server device 3 is an example of a data search device.

テーブル群4は、検索サーバ装置3が出力する検索結果である。
スキーママッチング処理装置5は、スキーママッチングを実行する。
The table group 4 is a search result output by the search server device 3.
The schema matching processing device 5 executes schema matching.

本実施の形態において対象とするテーブルデータは、複数のカラム(項目)を含み、複数のカラムのうちの任意のカラムに、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられている。
データ処理のための複数種の役割としては、前述したように、例えば、主キー、外部キー、索引カラム等がある。
本実施の形態において対象とするテーブルデータは、項目データの例に相当する。
The target table data in this embodiment includes a plurality of columns (items), and any one of a plurality of types of roles for data processing is assigned to an arbitrary column among the plurality of columns. It has been.
As described above, the plurality of roles for data processing include, for example, a primary key, a foreign key, an index column, and the like.
The target table data in this embodiment corresponds to an example of item data.

図2は、検索サーバ装置3の内部構成例を示す。
検索サーバ装置3は、テーブル検索部31とテーブル登録部32によって構成される。
FIG. 2 shows an internal configuration example of the search server device 3.
The search server device 3 includes a table search unit 31 and a table registration unit 32.

テーブル検索部31は、クエリ受信部310とクエリ分解部311と検索指示部312とインデックス重み付けON/OFF部と検索実行部314と結果集約部315とクエリ返却部316と検索インデックス記憶部317によって構成される。
テーブル登録部32は、テーブル情報登録部320と重複検出部321とスキーマ情報DB322と検索インデックス作成部323とインデックス重み付け設定部324から構成される。
テーブルデータは、スキーマ情報DB322に保管されている。
以下では、テーブル検索部31から説明する。
The table search unit 31 includes a query reception unit 310, a query decomposition unit 311, a search instruction unit 312, an index weighting ON / OFF unit, a search execution unit 314, a result aggregation unit 315, a query return unit 316, and a search index storage unit 317. Is done.
The table registration unit 32 includes a table information registration unit 320, a duplication detection unit 321, a schema information DB 322, a search index creation unit 323, and an index weight setting unit 324.
The table data is stored in the schema information DB 322.
Below, it demonstrates from the table search part 31. FIG.

テーブル検索部31において、検索インデックス記憶部317は、検索インデックス3140と検索インデックス重みデータ3141を記憶する。
検索インデックス3140は、どのテーブルデータにどのカラム名が含まれているかを示す情報である。
図11は、検索インデックス3140の例である。
図11に示すように、検索インデックス3140では、カラム名ごとに、そのカラム名が含まれているテーブルの識別子と、そのカラム名がいずれのカラム種別(役割)としてテーブルに含まれているかが表される。
例えば、「注文ID」というカラム名は、テーブルA−Aに主キーとして含まれており、また、テーブルA−Cに属性カラムとして含まれている。
検索インデックス重みデータ3141は、複数種のカラム種別(役割)の各々に対する係数値がインデックス重みとして定義される情報である。
図12は、検索インデックス重みデータ3141の例である。
例えば、主キーに対してはインデックス重みとして「2.0」という係数値が定義され、外部キーに対してはインデックス重みとして「1.0」という係数値が定義されている。
なお、インデックス重みの値が大きいカラム種別が、テーブル検索において優先的な取り扱いとなる。
なお、検索インデックス重みデータ3141におけるカラム種別ごとのインデックス重みの値は、後述する重要度判断表33に示されているインデックス重みの値と一致する。
また、重複カラムについては、後述する。
検索インデックス重みデータ3141は係数値定義情報の例に相当し、係数値定義情報たる検索インデックス重みデータ3141を記憶する検索インデックス記憶部317は係数値定義情報記憶部の例に相当する。
また、検索インデックス記憶部317が検索インデックス重みデータ3141を記憶する動作は、係数値定義情報記憶ステップの例に相当する。
In the table search unit 31, the search index storage unit 317 stores a search index 3140 and search index weight data 3141.
The search index 3140 is information indicating which column name is included in which table data.
FIG. 11 is an example of the search index 3140.
As shown in FIG. 11, in the search index 3140, for each column name, a table identifier including the column name and which column type (role) the column name is included in the table are displayed. Is done.
For example, the column name “order ID” is included as a primary key in the table A-A, and is included as an attribute column in the table A-C.
The search index weight data 3141 is information in which coefficient values for each of a plurality of types of columns (role) are defined as index weights.
FIG. 12 is an example of search index weight data 3141.
For example, a coefficient value “2.0” is defined as the index weight for the primary key, and a coefficient value “1.0” is defined as the index weight for the foreign key.
A column type having a large index weight value is preferentially handled in table search.
The index weight value for each column type in the search index weight data 3141 matches the index weight value shown in the importance determination table 33 described later.
The duplicate column will be described later.
The search index weight data 3141 corresponds to an example of coefficient value definition information, and the search index storage unit 317 that stores the search index weight data 3141 that is coefficient value definition information corresponds to an example of a coefficient value definition information storage unit.
The operation in which the search index storage unit 317 stores the search index weight data 3141 corresponds to an example of a coefficient value definition information storage step.

以下では、テーブル検索部31にて検索が実施される際の各要素の動作を説明する。   Below, operation | movement of each element when a search is implemented in the table search part 31 is demonstrated.

検索サーバ装置3は、検索クライアント装置1より検索入力としてテーブル定義2を受け取る。
テーブル定義2は、テーブル検索部31内のクエリ受信部310によって受信される。
テーブル定義2は構造をもった情報であり、実施の形態1においてはデータベースのテーブル定義を想定する。
データベースのテーブル定義2は例えば図3に示すようにデータ定義言語(DDL)にて渡される場合がある。
図3は注文テーブルのテーブル定義2の例(DDLによる記述例)を表しており、カラムとして「注文ID」と「顧客名」と「商品コード」と「注文数」が存在すること、および「注文ID」は単独で主キーであり、「商品コード」は商品テーブルの商品コードを参照する外部キーであること、および「顧客名」に対してデータベースの機能である索引が付与されていることを表している。
テーブル定義2は図3のようにデータ定義言語(DDL)にて表現できるが、構造を表現できる形式であれば、どのような形式でもよく、例えばXML(Extensible Markup Language)の形式であってもよい。
クエリ受信部310は、例えば図3の形式のテーブル定義2を受け取り、これを解釈し、図4のような構造情報を取得する。
図4は図3のテーブル定義2(DDL)の構造を解釈した結果を図として表現したものである。
このように、クエリ受信部310は、検索の対象となる2以上のカラム(項目)が指定され、検索対象のカラムごとに役割(主キー、外部キー等)が指定されるテーブル定義2を検索条件として入力しており、検索条件入力部の例に相当する。
また、クエリ受信部310がテーブル定義2を受信する動作が、検索条件入力ステップの例に相当する。
The search server device 3 receives the table definition 2 from the search client device 1 as a search input.
The table definition 2 is received by the query receiving unit 310 in the table search unit 31.
The table definition 2 is information having a structure, and the database table definition is assumed in the first embodiment.
The table definition 2 of the database may be passed in a data definition language (DDL) as shown in FIG. 3, for example.
FIG. 3 shows an example of the table definition 2 of the order table (description example by DDL), where “order ID”, “customer name”, “product code”, and “number of orders” exist as columns, and “ "Order ID" is a primary key alone, "Product code" is an external key that refers to the product code in the product table, and an index that is a database function is assigned to "Customer name" Represents.
The table definition 2 can be expressed in the data definition language (DDL) as shown in FIG. 3, but any format can be used as long as the structure can be expressed. For example, an XML (Extensible Markup Language) format may be used. Good.
The query receiving unit 310 receives, for example, the table definition 2 in the format of FIG. 3, interprets it, and acquires the structure information as shown in FIG.
FIG. 4 represents the result of interpreting the structure of the table definition 2 (DDL) in FIG. 3 as a diagram.
In this way, the query receiving unit 310 searches the table definition 2 in which two or more columns (items) to be searched are specified and a role (primary key, foreign key, etc.) is specified for each column to be searched. It is input as a condition and corresponds to an example of a search condition input unit.
The operation in which the query receiving unit 310 receives the table definition 2 corresponds to an example of a search condition input step.

クエリ分解部311は、あらかじめ設定された重要度判断表33に従い、クエリ受信部310が抽出した構造情報に含まれるカラム情報を重要度に従いグループ分けを実施し、前記各グループを検索する際の検索重み、および検索結果に対する重みを設定する。   The query decomposition unit 311 groups the column information included in the structure information extracted by the query receiving unit 310 according to the importance according to the importance determination table 33 set in advance, and performs a search when searching each group. Set weights and weights for search results.

図5にクエリ分解部311のフローチャートを示す。
また、重要度判断表33の例を図6に示す。
図6の例では重要度順に主キー、外部キー、索引カラム、属性カラムを指定している。
図6の重要度判断表33を以下にて説明する。
FIG. 5 shows a flowchart of the query decomposition unit 311.
An example of the importance determination table 33 is shown in FIG.
In the example of FIG. 6, a primary key, a foreign key, an index column, and an attribute column are designated in order of importance.
The importance determination table 33 in FIG. 6 will be described below.

重要度順331は、カラム種別332に記載された役割の重要度を示しており、1から開始する連番にて設定されている。
インデックス重み333は、指定された重要度順331の順序に従ってテーブルごとに評価値を算出する際に、テーブルに出現するカラム名の役割に対して設定する重みを指定するものである。
前述したように、検索インデックス重みデータ3141(図12)のインデックス重み3141bの値は、重要度判断表33のインデックス重み333の値と一致している。
The order of importance 331 indicates the importance of the roles described in the column type 332, and is set by serial numbers starting from 1.
The index weight 333 is used to specify a weight to be set for the role of the column name appearing in the table when calculating the evaluation value for each table according to the order of the designated importance order 331.
As described above, the value of the index weight 3141 b of the search index weight data 3141 (FIG. 12) matches the value of the index weight 333 of the importance determination table 33.

図6において表を分けて記載している重複カラムについて説明する。
スキーマ情報DB322に対してテーブル情報を登録する際に、同一スキーマ内で同名のカラムが同一の役割として検出された場合、そのカラムは重複カラムと判断される。
前記重複カラムと判断されたカラムについては、インデックス重みを図6の表に従って、1.0以下に設定する(図6の例では、0.5)。
例えば、スキーマ設計が非効率的な場合は、同じカラム名が同じスキーマの複数のテーブルにおいて同じ役割として重複して出現する場合がある。
このような場合に同じカラム名が同じ役割として出現する度に評価値を計上すると、このようなスキーマのテーブル群の評価値が実態以上に高くなってしまい、適正な検索結果とならない可能性がある。
このため、同一スキーマ内で同名のカラムが同一の役割として検出された場合には、2回目以降の検出に対する係数値を他の係数値よりも低く抑えるようにしている。
A description will be given of the duplicate columns described in FIG.
When registering table information in the schema information DB 322, if a column with the same name is detected as the same role in the same schema, the column is determined to be a duplicate column.
For the column determined to be a duplicate column, the index weight is set to 1.0 or less according to the table of FIG. 6 (0.5 in the example of FIG. 6).
For example, when the schema design is inefficient, the same column name may appear as the same role in multiple tables of the same schema.
In such a case, if the evaluation value is counted each time the same column name appears in the same role, the evaluation value of the table group of such a schema becomes higher than the actual value, and there is a possibility that the appropriate search result is not obtained. is there.
Therefore, when columns with the same name are detected as the same role in the same schema, the coefficient values for the second and subsequent detections are suppressed to be lower than other coefficient values.

重要度判断表33の内容は以下の理由により設定されており、図6の内容をデフォルト値とするが、変更も可能とする。
実施の形態1ではテーブル定義2はデータベーステーブルを想定しており、異なるデータベース間でのデータ移行を変更差分データ抽出技術の利用によって実施することを想定している。
このためデータ連携できるためには連携元と連携先のデータベーステーブルの主キーのカラムが一致しているか、1対1の関係であることが必要となる。
この状況下で最も重要なカラムは主キーのカラムである。
主キーのカラムはあるデータベーステーブルに含まれる各行のレコードデータを一意に識別する値をもったカラムである。
主キーは一般に複数カラムから構成される場合がある。
外部キーは他のデータベーステーブルの主キーを参照しているため、外部キーが存在するということは、これに対応する主キーが存在することになる。
このため外部キーのカラムの重要度を主キーのカラムの次に設定している。
索引カラムは図3のテーブル定義2(DDL)の中では、顧客名に相当する。
データベースに索引を設定する理由は利用頻度の高いカラムについて検索速度を向上するためである。
つまり索引カラムは主キー、外部キーに次いで重要なカラムであると判断できる。
この他にユニークキーと呼ばれるものがあるが、これは主キーと同様にあるテーブルのレコードを一意に識別するという点で主キーと同等と判断しており、本実施の形態では主キーと特に区別しない。
その他のカラム種別を図6では属性カラムと表現しており、主キー、外部キー、索引カラムのいずれにもあてはまらないカラムを前記属性カラムとして分類する。
The contents of the importance determination table 33 are set for the following reason, and the contents of FIG. 6 are set as default values, but can be changed.
In the first embodiment, the table definition 2 is assumed to be a database table, and it is assumed that data migration between different databases is performed by using a change difference data extraction technique.
For this reason, in order to be able to link data, it is necessary that the columns of the primary key of the link source database table and the link destination database table match or have a one-to-one relationship.
The most important column in this situation is the primary key column.
The primary key column is a column having a value that uniquely identifies record data of each row included in a database table.
The primary key may generally consist of multiple columns.
Since the foreign key refers to the primary key of another database table, the existence of the foreign key means that the corresponding primary key exists.
Therefore, the importance of the foreign key column is set next to the primary key column.
The index column corresponds to the customer name in the table definition 2 (DDL) in FIG.
The reason for setting an index in the database is to improve the search speed for a frequently used column.
That is, it can be determined that the index column is the next most important column after the primary key and the foreign key.
In addition to this, there is a so-called unique key, which is determined to be equivalent to the primary key in that it uniquely identifies a record in a table similar to the primary key. I do not distinguish.
Other column types are expressed as attribute columns in FIG. 6, and columns that do not correspond to any of the primary key, foreign key, and index column are classified as the attribute columns.

図5のフローチャートについて以下に説明する。   The flowchart of FIG. 5 will be described below.

クエリ分解部311は、クエリ受信部310が提供する図4の構造情報を受け取る(S3111)。
次に、クエリ分解部311は、図6のような重要度判断表33を参照し(S3112)、この重要度判断表33をもとにして各カラム(注文ID、顧客名等)を重要度別にグループ分けする(S3113)。
図6の例では、主キー、外部キー、索引カラム、属性カラムに分類される。
重要度別に分類されたカラムグループごとに検索処理を実施するため、それぞれの検索処理に必要な情報をクエリ分解部311がS3114とS3115のステップを前記カラムグループ数だけ繰り返し実行することにより作成する。
以下では前記繰り返しの処理内容を説明する。
検索入力データとしては図4のテーブルを使用する。
S3114の最初のループでは、重要度順331が「1」である主キーが処理対象になり、図4の構造情報において主キーに分類されているカラムグループが処理される。
主キーの検索結果を基準として扱うため、S3114では、主キーに対しては、インデックス重みの値「1.0」を付与する。
つまり重み付けは実施しない。
S3115では検索キーワードが作成されるが、主キーについては、主キーのカラムグループに含まれているカラム名を列挙するのみとなる。
S3114の2回目のループでは、重要度順331が「2」である外部キーが処理対象になり、図4の構造情報において外部キーに分類されているカラムグループが処理される。
主キー以外のカラムについては、そのカラム数の逆数を検索集計重みとして割り当てる。
ここでは、外部キーのカラムの数の逆数がS3114にて検索集計重みとして割り当てられる。
主キー以外のカラムが検索において全件検出された場合に主キーが1件検出された場合と同じ効果にするために本重み付けを実施している。
S3115においては、検索キーワードを生成する。
ここでは、主キーが検出されたテーブルに対してインデックス重みに加重値を加重する旨の加重ルールが含まれる検索キーワードを生成する。
具体的には、主キーが含まれるテーブルと同じテーブルに外部キーのカラムが含まれる場合、その検索スコアを重要度判断表33の重要度順331の値が「1」であるインデックス重み333で乗ずる、という検索キーワードとする。
加重するインデックス重み333は、ここでは主キーに対して割り当てるインデックス作成時の重み(つまり、「2.0」)となる。
ただし、S3115を実行している時点では、検索は実施されていないので、前記主キーが含まれるテーブル名はパラメータとして指定しておき、検索実行時に実際のテーブル名にて置換される。
2回目以降のループ処理はS3114とS3115に関する限り、2回目と同じ処理になる。
クエリ分解部311は、S3116にて未処理のカラムグループがないことを確認し、S3117にて処理結果を返却する。
処理結果は例えば図7に示す内容を持つ。
図7の検索実行内容情報について以下に説明する。
The query decomposition unit 311 receives the structure information of FIG. 4 provided by the query reception unit 310 (S3111).
Next, the query decomposing unit 311 refers to the importance determination table 33 as shown in FIG. 6 (S3112), and assigns each column (order ID, customer name, etc.) to the importance based on the importance determination table 33. Separately grouped (S3113).
In the example of FIG. 6, the data is classified into a primary key, a foreign key, an index column, and an attribute column.
In order to perform a search process for each column group classified according to importance, information necessary for each search process is created by the query decomposing unit 311 repeatedly executing steps S3114 and S3115 for the number of column groups.
Hereinafter, the details of the repeated processing will be described.
The table shown in FIG. 4 is used as search input data.
In the first loop of S3114, the primary key whose importance order 331 is “1” is processed, and the column group classified as the primary key in the structure information of FIG. 4 is processed.
In order to handle the search result of the primary key as a reference, in S3114, an index weight value “1.0” is assigned to the primary key.
That is, no weighting is performed.
In S3115, a search keyword is created, but only the column names included in the primary key column group are listed for the primary key.
In the second loop of S3114, the foreign key whose importance order 331 is “2” is processed, and the column group classified as the foreign key in the structure information of FIG. 4 is processed.
For columns other than the primary key, the reciprocal of the number of columns is assigned as a search aggregation weight.
Here, the reciprocal of the number of columns of the foreign key is assigned as the search aggregation weight in S3114.
When all the columns other than the primary key are detected in the search, this weighting is performed in order to obtain the same effect as when one primary key is detected.
In S3115, a search keyword is generated.
Here, a search keyword including a weighting rule for weighting the index weight with a weight value is generated for the table in which the primary key is detected.
Specifically, when a foreign key column is included in the same table as the table including the primary key, the search score is an index weight 333 in which the value of the importance order 331 in the importance determination table 33 is “1”. The search keyword is to multiply.
The index weight 333 to be weighted here is a weight at the time of index creation assigned to the primary key (that is, “2.0”).
However, since the search is not performed at the time of executing S3115, the table name including the primary key is designated as a parameter, and is replaced with the actual table name when the search is executed.
The second and subsequent loop processes are the same as the second process as far as S3114 and S3115 are concerned.
The query decomposition unit 311 confirms that there is no unprocessed column group in S3116, and returns the processing result in S3117.
The processing result has the contents shown in FIG.
The search execution content information in FIG. 7 will be described below.

図7は検索の実行に必要な情報を検索指示部312に渡すためのデータ構造である。
図7の検索実行内容情報は、図4の構造情報に基づいて図5に示すフローが実施されて生成されたものである。
FIG. 7 shows a data structure for passing information necessary for executing the search to the search instruction unit 312.
The search execution content information in FIG. 7 is generated by executing the flow shown in FIG. 5 based on the structure information in FIG.

「検索順」の記載の順番で、検索実行部314による検索が実施される。
「検索カラムリスト」は「カラム種別」の種類別にグルーピングされたカラムグループを示す。
「カラム種別」は検索実行に必須の情報ではないが、図7の各行がどのカラム種別に対応するものであるのかを示すために記載した。
Searches are performed by the search execution unit 314 in the order described in “Search order”.
“Search column list” indicates a column group grouped according to the type of “column type”.
“Column type” is not essential information for search execution, but is described to indicate which column type each line in FIG. 7 corresponds to.

「インデックス重みON/OFF」は、検索時に検索インデックス重みデータ3141に記述されている重みを有効化(ON)するか無効化(OFF)するかを示す。
なお、原則として、主キー、外部キー、索引カラムに対してはインデックス重みをONとし、属性カラムに対してはOFFとする。
また、インデックス重みがOFFとなったカラム種別は、「検索キーワード」に示される評価値の加重ルールも適用されない。
“Index weight ON / OFF” indicates whether the weight described in the search index weight data 3141 is validated (ON) or invalidated (OFF) at the time of retrieval.
In principle, the index weight is set to ON for the primary key, foreign key, and index column, and is set to OFF for the attribute column.
In addition, the weighting rule of the evaluation value indicated by “search keyword” is not applied to the column type for which the index weight is OFF.

「検索集計重み」は検索処理において検出された件数の重みを制御するためのものである。
主キーのカラムが1件検出されたときと、それ以外のカラムが検出されたときは重要度が異なるため、主キー以外については全カラムが検出されたときに、主キー1カラムと同等の評価になるようにカラム数で除算した値を「検索集計重み」として使用している。
本重みを検索実行部314にて返却された検索結果に対するそれぞれの検索ポイント値に対して乗算することにより、各カラム種別に対する検索結果に重みをつけている。
例えば、あるテーブルにおいて、検索カラムリストに記述されているいずれか2つのカラムが、外部キーとして抽出された場合は、外部キーが2つなので、検索集計重みは「0.5」であり、各々のカラムのインデックス重みの値を0.5倍して評価値を算出する。
“Search total weight” is for controlling the weight of the number of cases detected in the search process.
When one column of the primary key is detected and the other columns are detected, the importance level is different. Therefore, when all the columns other than the primary key are detected, it is equivalent to the primary key 1 column. The value divided by the number of columns so as to be evaluated is used as the “search aggregation weight”.
The search result for each column type is weighted by multiplying this weight by each search point value for the search result returned by the search execution unit 314.
For example, in any one table, if any two columns described in the search column list are extracted as foreign keys, there are two foreign keys, so the search aggregation weight is “0.5”. The evaluation value is calculated by multiplying the value of the index weight of each column by 0.5.

「検索キーワード」は、図5のS3115にて作成された検索キーワードを保持する。
「検索キーワード」は、主キーについては、各カラム名をORで区切ったキーワードとしており、図4の例では「注文ID」のみであるため、「注文ID」のみが検索キーワードとして指定される。
但し、テーブル定義2において複数のカラムが主キーとして指定されている場合には、各カラムが検索キーワードとなる。
また、外部キーの「検索キーワード」では、「注文ID」が主キーとして含まれるテーブルで外部キーとなっているカラムに対しては、インデックス重み(図12の例では、「1.5」)を2.0倍する旨が指定されている。
同様に、索引カラムの「検索キーワード」では、「注文ID」が主キーとして含まれるテーブルで索引カラムとなっているカラムに対しては、インデックス重み(図12の例では、「1.2」)を2.0倍する旨が指定されている。
同様に、属性カラムの「検索キーワード」では、「注文ID」が主キーとして含まれるテーブルで属性カラムとなっているカラムに対しては、インデックス重み(図12の例では、「1.0」)を2.0倍する旨が指定されている。
“Search keyword” holds the search keyword created in S3115 of FIG.
The “search keyword” is a keyword in which each column name is separated by OR for the primary key. In the example of FIG. 4, only “order ID” is specified. Therefore, only “order ID” is specified as the search keyword.
However, when a plurality of columns are designated as primary keys in the table definition 2, each column is a search keyword.
In the “search keyword” of the foreign key, an index weight (“1.5” in the example of FIG. 12) is used for a column that is a foreign key in a table that includes “order ID” as a primary key. Is specified to be multiplied by 2.0.
Similarly, in the index column “search keyword”, an index weight (“1.2” in the example of FIG. 12) is used for a column that is an index column in a table including “order ID” as a primary key. ) Is multiplied by 2.0.
Similarly, in the “search keyword” of the attribute column, the index weight (“1.0” in the example of FIG. 12) is used for the column that is the attribute column in the table including “order ID” as the primary key. ) Is multiplied by 2.0.

このように、クエリ分解部311は、テーブル定義2において特定の役割が指定されているカラム、具体的には、主キーの役割が指定されているカラム「注文ID」を選択し、選択した「注文ID」を主キーとして含むテーブル(加重対象項目データに相当)に対して加重値(図7の例では、「2.0」倍)をインデックス重みの係数値に加重して評価値を算出する旨の加重ルールが含まれる検索キーワードを生成する。
本実施の形態では、テーブル定義2において主キーの役割が指定されているカラム「注文ID」は、優先検索対象項目の例に相当する。
また、クエリ分解部311は、優先検索対象項目選択部の例に相当する。
また、クエリ分解部311の動作は、優先検索対象項目選択ステップの例に相当する。
As described above, the query decomposition unit 311 selects the column “order ID” in which the specific role is specified in the table definition 2, specifically, the column “order ID” in which the role of the primary key is specified. An evaluation value is calculated by weighting a table (corresponding to weighted item data) with “order ID” as a primary key (weighted by “2.0” in the example of FIG. 7) to the index weight coefficient value. A search keyword including a weighting rule to generate the search is generated.
In the present embodiment, the column “order ID” in which the role of the primary key is specified in the table definition 2 corresponds to an example of the priority search target item.
The query decomposition unit 311 corresponds to an example of a priority search target item selection unit.
The operation of the query decomposition unit 311 corresponds to an example of a priority search target item selection step.

検索指示部312は、クエリ分解部311が提供する図7の検索実行内容情報を受け取り、図7の内容に従って検索実行部314に検索実行を指示する。
検索指示部312は、クエリ分解部311が与える情報に従い、インデックス重み付けON/OFF部313に指示を出し、検索実行部314が用いる検索インデックス重みデータ3141の有効化と無効化を変更する。
The search instruction unit 312 receives the search execution content information of FIG. 7 provided by the query decomposition unit 311 and instructs the search execution unit 314 to execute search according to the content of FIG.
The search instructing unit 312 issues an instruction to the index weighting ON / OFF unit 313 according to the information given by the query decomposing unit 311, and changes the validation and invalidation of the search index weight data 3141 used by the search execution unit 314.

図8に検索指示部312とインデックス重み付けON/OFF部313と検索実行部314の動作を説明するフローチャートを示す。   FIG. 8 is a flowchart for explaining the operations of the search instruction unit 312, the index weighting ON / OFF unit 313, and the search execution unit 314.

S3121では、検索指示部312が図7の検索実行内容情報を解釈する。
S3122では、検索指示部312が図7の「検索順」に指定された順番に検索実行順を決める。
つまり、検索指示部312は、未処理の検索処理のうち「検索順」が最小ものを選択する。
S3123では、検索指示部312が図7の「インデックス重みON/OFF」に従い、インデックス重み付けON/OFF部313を介して検索インデックス重みデータ3141の有効化もしくは無効化を実施する。
検索インデックス重みデータ3141が有効化されている場合で、インデックスの重みが1.0以下の場合、これを無視する設定も同時に実施する。
検索インデックス重みデータ3141は、後述するテーブル登録部32内のインデックス重み付け設定部324にて設定されるが、同一スキーマ内に同名のカラムが同一の役割で存在した場合、2個目以降のカラムについて、インデックス重みは1.0以下に設定されるようになっており、これは外部キーなど同一スキーマに同名のカラムが多数存在する場合に検索結果に対する影響を防ぐために実施するものである。
S3124では、検索指示部312が図7の「検索キーワード」を検索実行部314に与え、検索実行を指示する。
2回目以降の検索時には1回目の検索で検出されたテーブル、つまり主キーを検索したときに主キーを含むテーブルとして検出されたテーブル名を「検索キーワード」に含める。
つまり、図7の「検索キーワード」内の(主キーと同一テーブル)部分を実際のテーブル名で置き換えることになる。
このため、S3124は1回目の検索結果より検索対象を絞り込むという効果を持つ。
また、2回目以降の検索時では、検索指示部312は、図7の「検索キーワード」とともに「検索カラムリスト」を検索実行部314に与え、「検索カラムリスト」内のカラムの検索を行わせる。
S3125では、検索指示部312が未処理のカラムグループの確認を実施し、S3126にて検索結果および、検索結果に対応する図7の「検索集計重み」の値を返却する。
In step S3121, the search instruction unit 312 interprets the search execution content information in FIG.
In step S312, the search instruction unit 312 determines the search execution order in the order specified in the “search order” in FIG.
That is, the search instruction unit 312 selects a search process having the smallest “search order” among the unprocessed search processes.
In S 3123, the search instruction unit 312 validates or invalidates the search index weight data 3141 via the index weight ON / OFF unit 313 according to “index weight ON / OFF” of FIG.
When the search index weight data 3141 is validated and the index weight is 1.0 or less, a setting for ignoring this is also performed at the same time.
The search index weight data 3141 is set by an index weight setting unit 324 in the table registration unit 32 (to be described later). When columns with the same name exist in the same schema with the same role, the second and subsequent columns are searched. The index weight is set to 1.0 or less, which is performed in order to prevent an influence on the search result when there are many columns having the same name in the same schema such as a foreign key.
In S3124, the search instruction unit 312 gives the “search keyword” of FIG. 7 to the search execution unit 314, and instructs the search execution.
In the second and subsequent searches, the table name detected in the first search, that is, the table name detected as the table including the primary key when the primary key is searched is included in the “search keyword”.
That is, the part (the same table as the primary key) in the “search keyword” in FIG. 7 is replaced with the actual table name.
For this reason, S3124 has an effect of narrowing down the search target from the first search result.
In the second and subsequent searches, the search instruction unit 312 gives the “search column list” together with the “search keyword” in FIG. 7 to the search execution unit 314 to search the columns in the “search column list”. .
In S3125, the search instruction unit 312 confirms an unprocessed column group, and in S3126, returns the search result and the value of “search aggregation weight” in FIG. 7 corresponding to the search result.

ここで、図13を参照して、検索実行部314の動作例を具体的に説明する。
なお、検索実行部314の動作は、検索実行ステップの例に相当する。
Here, an example of the operation of the search execution unit 314 will be specifically described with reference to FIG.
The operation of the search execution unit 314 corresponds to an example of a search execution step.

図13の検索インデックス3140の内容は、図11のものと同じである。
ここでは、検索実行部314は、図13の検索インデックス3140を用いて、図7の検索実行内容情報及び図12の検索インデックス重みデータ3141に従って、テーブルごとの評価値を算出する。
なお、テーブルA−A、テーブルA−B、テーブルA−Cは、同じスキーマのテーブルであるとする。
The contents of the search index 3140 in FIG. 13 are the same as those in FIG.
Here, the search execution unit 314 uses the search index 3140 in FIG. 13 to calculate an evaluation value for each table according to the search execution content information in FIG. 7 and the search index weight data 3141 in FIG.
Table A-A, table AB, and table AC are tables having the same schema.

テーブルA−Aには、カラム「注文ID」が主キーとして含まれている。
図7の検索実行内容情報によれば、主キーに対してはインデックス重みはONなので、検索インデックス重みデータ3141に従って、テーブルA−Aには、評価値「2.0」が計上される。
テーブルA−Cには、カラム「注文ID」が含まれているが、属性カラムである。
図7の検索実行内容情報によれば、属性カラムに対してはインデックス重みはOFFなので、テーブルA−Cには、評価値「1.0」が計上される。
The table AA includes a column “order ID” as a primary key.
According to the search execution content information of FIG. 7, since the index weight is ON for the primary key, the evaluation value “2.0” is recorded in the table AA according to the search index weight data 3141.
The table A-C includes a column “order ID”, but is an attribute column.
According to the search execution content information in FIG. 7, the index weight is OFF for the attribute column, and therefore the evaluation value “1.0” is recorded in the table AC.

テーブルA−Aには、カラム「商品コード」が外部キーとして含まれている。
図7の検索実行内容情報によれば、外部キーに対してはインデックス重みはONである。
また、テーブルA−Aには、カラム「注文ID」が主キーとして含まれるため、図7の「検索キーワード」の評価点の加重ルールに従い、評価値が2.0倍になる。
このため、検索インデックス重みデータ3141に従って、テーブルA−Aには、評価値「1.5×2.0=3.0」が計上される。
テーブルA−Bには、カラム「商品コード」が主キーとして含まれている。
図7の検索実行内容情報によれば、主キーに対してはインデックス重みはONである。
なお、テーブルA−Bには、カラム「注文ID」が主キーとして含まれてはいる訳ではないので、評価点の加重はなく、評価値「2.0」が計上される。
テーブルA−Cには、カラム「商品コード」が外部キーとして含まれている。
図7の検索実行内容情報によれば、外部キーに対してはインデックス重みはONである。
なお、テーブルA−Cには、カラム「注文ID」が主キーとして含まれてはいる訳ではないので、評価点の加重はない。
また、同一スキーマ内のテーブルA−AとテーブルA−Cの両者において、カラム「商品コード」が外部キーとして含まれているので、テーブルA−Cのカラム「商品コード」は重複カラムとなり、重複カラムの評価値「0.5」が計上される。
The table “A-A” includes the column “product code” as an external key.
According to the search execution content information of FIG. 7, the index weight is ON for the foreign key.
In addition, since the column “order ID” is included as a primary key in the table A-A, the evaluation value becomes 2.0 times according to the weighting rule of the evaluation point of “search keyword” in FIG.
Therefore, according to the search index weight data 3141, the evaluation value “1.5 × 2.0 = 3.0” is recorded in the table A-A.
The table “AB” includes a column “product code” as a primary key.
According to the search execution content information in FIG. 7, the index weight is ON for the primary key.
Since the table “AB” does not include the column “order ID” as the primary key, the evaluation point is not weighted and the evaluation value “2.0” is recorded.
The table “A-C” includes a column “product code” as an external key.
According to the search execution content information of FIG. 7, the index weight is ON for the foreign key.
Since the table “AC” does not include the column “order ID” as the primary key, there is no weighting of evaluation points.
In addition, since the column “product code” is included as a foreign key in both the table AA and the table AC in the same schema, the column “product code” in the table A-C becomes a duplicate column and is duplicated. The column evaluation value “0.5” is counted.

テーブルA−Aには、カラム「顧客名」が索引カラムとして含まれている。
図7の検索実行内容情報によれば、索引カラムに対してはインデックス重みはONである。
また、テーブルA−Aには、カラム「注文ID」が主キーとして含まれるため、図7の「検索キーワード」の評価点の加重ルールに従い、評価値が2.0倍になる。
このため、検索インデックス重みデータ3141に従って、テーブルA−Aには、評価値「1.2×2.0=2.4」が計上される。
テーブルA−Bには、カラム「顧客名」が含まれているが、属性カラムである。
図7の検索実行内容情報によれば、属性カラムに対してはインデックス重みはOFFなので、テーブルA−Bには、評価値「1.0」が計上される。
The table “A-A” includes a column “customer name” as an index column.
According to the search execution content information in FIG. 7, the index weight is ON for the index column.
In addition, since the column “order ID” is included as a primary key in the table A-A, the evaluation value becomes 2.0 times according to the weighting rule of the evaluation point of “search keyword” in FIG.
Therefore, in accordance with the search index weight data 3141, the evaluation value “1.2 × 2.0 = 2.4” is recorded in the table A-A.
Table AB includes a column “customer name”, but is an attribute column.
According to the search execution content information in FIG. 7, the index weight is OFF for the attribute column, and therefore the evaluation value “1.0” is recorded in the table AB.

テーブルA−Aには、カラム「注文数」が含まれているが、属性カラムである。
図7の検索実行内容情報によれば、属性カラムに対してはインデックス重みはOFFなので、テーブルA−Aには、評価値「1.0」が計上される。
テーブルA−Cには、カラム「注文数」が索引カラムとして含まれている。
図7の検索実行内容情報によれば、索引カラムに対してはインデックス重みはONである。
なお、テーブルA−Cには、カラム「注文ID」が主キーとして含まれてはいる訳ではないので、評価点の加重はなく、評価値「1.2」が計上される。
The table A-A includes a column “number of orders” but is an attribute column.
According to the search execution content information in FIG. 7, the index weight is OFF for the attribute column, and therefore the evaluation value “1.0” is recorded in the table A-A.
In the table A-C, the column “number of orders” is included as an index column.
According to the search execution content information in FIG. 7, the index weight is ON for the index column.
The table “A-C” does not include the column “order ID” as the primary key, so the evaluation point is not weighted and the evaluation value “1.2” is recorded.

なお、図13を用いた説明では、カラム「注文ID」が主キーとして含まれているテーブルA−Aに、図7において外部キーとして指定されている「商品コード」が外部キーとして含まれている場合(及び図7において索引カラムとして指定されている「顧客名」が索引カラムとして含まれている場合)に、評価値を2.0倍する例を説明した。
これに対して、「検索キーワード」の条件解釈を緩和してもよい。
条件解釈の緩和の例を、図14を用いて説明する。
In the description using FIG. 13, the table A-A in which the column “order ID” is included as the primary key includes the “product code” specified as the external key in FIG. 7 as the external key. In the above example (and the case where “customer name” designated as the index column in FIG. 7 is included as the index column), the example in which the evaluation value is multiplied by 2.0 has been described.
On the other hand, the condition interpretation of the “search keyword” may be relaxed.
An example of relaxation of condition interpretation will be described with reference to FIG.

図14は、検索インデックス3140を示すが、図13と異なり、テーブルA−Aにはカラム「商品コード」が索引カラムとして含まれている例が示されている。
図7では、「商品コード」に対しては外部キーが指定されている。
このため、図13を参照して説明した厳格な条件解釈を図14に適用すると、カラム「商品コード」が外部キーとして含まれている訳ではないので、評価値の加重は行われず、テーブルA−Aには索引カラムのインデックス重み「1.2」が計上される。
一方、緩和された条件解釈では、カラム種別は異なるものの、テーブルA−Aには、図7で定義されているカラム「商品コード」が含まれるので、索引カラムのインデックス重みである「1.2」に加重係数「2.0」を加重して、「1.2×2.0=2.4」が計上される。
このように、「検索キーワード」の加重ルールについて2種類のうちのいずれの方法を採用してもよい。
FIG. 14 shows the search index 3140. Unlike FIG. 13, the table A-A shows an example in which the column “product code” is included as an index column.
In FIG. 7, a foreign key is designated for “product code”.
Therefore, when the strict condition interpretation described with reference to FIG. 13 is applied to FIG. 14, the column “product code” is not included as a foreign key, so the evaluation value is not weighted and the table A -A includes the index weight “1.2” of the index column.
On the other hand, in the relaxed condition interpretation, the column type is different, but the table “A-A” includes the column “product code” defined in FIG. Is weighted with a weighting factor of “2.0” and “1.2 × 2.0 = 2.4” is recorded.
As described above, any one of the two methods for the weighting rule of “search keyword” may be adopted.

検索実行部314が、例えば、図13又は図14に示した手順によりテーブルごとに評価値を算出した後、結果集約部315が、検索実行部314からテーブルごとの評価値を取得し、評価値に対して、図7の「検索集計重み」により、重み付け集計を実施し、検索結果のランキングの最終決定を実施する。
つまり、検索実行部314は、「検索集計重み」による重み付け集計が行われた後の評価値をテーブル単位で合算し、合算値が大きい順にテーブルの順位付けを行い、順位付けに従ってテーブルが一覧表示されるリストをクエリ返却部316に渡す。
クエリ返却部316は、結果集約部315からのリストをテーブル群4として出力し、検索クライアント装置1に渡す。
なお、結果集約部315及びクエリ返却部316は、検索結果出力部の例に相当する。
また、結果集約部315及びクエリ返却部316の動作は、検索結果出力ステップの例に相当する。
For example, after the search execution unit 314 calculates an evaluation value for each table according to the procedure illustrated in FIG. 13 or FIG. 14, the result aggregation unit 315 acquires the evaluation value for each table from the search execution unit 314, and the evaluation value On the other hand, the weighted aggregation is performed by the “search aggregation weight” in FIG. 7, and the final determination of the ranking of the search results is performed.
That is, the search execution unit 314 adds the evaluation values after the weighted aggregation by the “search aggregation weight” is performed in units of tables, ranks the tables in descending order of the total values, and displays the list according to the ranking. The list to be returned to the query return unit 316.
The query return unit 316 outputs the list from the result aggregation unit 315 as the table group 4 and passes it to the search client device 1.
Note that the result aggregation unit 315 and the query return unit 316 correspond to an example of a search result output unit.
In addition, the operations of the result aggregation unit 315 and the query return unit 316 correspond to an example of a search result output step.

検索クライアント装置1では、本システムの使用ユーザが受け取ったテーブル群4より、スキーママッチングを実施するデータベーステーブルを選択し、スキーママッチング処理装置5に渡す。
スキーママッチング処理装置5は、テーブル定義2と前記使用ユーザにより選択された前記データベーステーブルを入力としてスキーママッチング処理を実施する。
In the search client device 1, a database table for performing schema matching is selected from the table group 4 received by the user of this system, and is passed to the schema matching processing device 5.
The schema matching processing device 5 performs schema matching processing with the table definition 2 and the database table selected by the user as inputs.

以下では、テーブル登録部32にてデータベーステーブルが本システムに登録され、検索インデックスが作成される際の各要素の動作を説明する。   Hereinafter, the operation of each element when a database table is registered in the system by the table registration unit 32 and a search index is created will be described.

テーブル情報登録部320は、スキーマ情報DB322にデータベーステーブルを登録する作業の起点となる。
テーブル情報登録部320は、入力としてデータベーステーブル情報をデータ定義言語(DDL)やXMLファイルなどによって受け取り、重複検出部321に前記データベーステーブル情報を渡す。
The table information registration unit 320 is a starting point for the work of registering the database table in the schema information DB 322.
The table information registration unit 320 receives the database table information as an input by a data definition language (DDL) or an XML file, and passes the database table information to the duplication detection unit 321.

重複検出部321では、スキーマ情報DB322の内容を確認し、前記データベーステーブル情報と重複する情報が既に登録されていないか否かを確認する。
このとき、重複検出部321は同一スキーマ内に前記データベーステーブル情報が示すテーブルの重複を確認する。
異なるスキーマに重複するテーブルがあっても問題としない。
スキーマ情報DB322には、データベーステーブル情報が格納される。
検索インデックス作成部323はテーブル情報登録部320より、データベーステーブル情報がスキーマ情報DB322に格納されたことの通知を受け、検索インデックス3140に対して前記データベーステーブル情報を追記するためにインデックス重み付け設定部324に情報を渡す。
The duplicate detection unit 321 confirms the contents of the schema information DB 322 and confirms whether or not information that overlaps the database table information has already been registered.
At this time, the duplication detection unit 321 confirms the duplication of the table indicated by the database table information in the same schema.
It doesn't matter if there are duplicate tables in different schemas.
The schema information DB 322 stores database table information.
The search index creation unit 323 receives a notification from the table information registration unit 320 that the database table information has been stored in the schema information DB 322, and adds an index weight setting unit 324 to add the database table information to the search index 3140. Pass information to.

インデックス重み付け設定部324は、登録された前記データベーステーブル情報の内容から図6に示すようなあらかじめ与えられた重要度判断表33に従い、検索インデックス重みデータ3141に重みデータを書き込む。
このとき重複検出部321が同一スキーマ内に重複するデータベーステーブルを検出している場合は図6の表に従い、重み付けを「1.0」以下にして検索インデックス重みデータ3141に書き込む。
The index weight setting unit 324 writes the weight data into the search index weight data 3141 according to the importance determination table 33 given in advance as shown in FIG. 6 from the contents of the registered database table information.
At this time, if the duplicate detection unit 321 detects duplicate database tables in the same schema, the weight is set to “1.0” or less according to the table of FIG.

以上のように、本実施の形態によれば、データベーステーブルのような構造をもった実体を検索システムの入力として与えた場合に実体内の各項目の重要度を反映した検索が可能となる。
具体例としては、検索入力となったテーブルの主キーカラムに対して、同じく主キーカラムとなっており、さらに前記テーブル内の重要項目である外部キーカラムや索引対象カラムを多く含むテーブルを検索結果として返却することが可能となる。
また、登録されている検索対象のテーブル群の中に前記のようなテーブルがない場合でも、検索入力テーブルの主キーを重要カラムである外部キーカラムや索引対象カラムとなっているテーブルを検出し、さらに前記検索入力テーブルの他のカラムについても同一スキーマ内にできるだけ多く含むようなテーブル群の返却が可能となる。
As described above, according to the present embodiment, when an entity having a structure like a database table is given as an input of the search system, a search reflecting the importance of each item in the entity can be performed.
As a specific example, for the primary key column of the table that is the search input, it is also the primary key column, and a table containing many foreign key columns and index target columns that are important items in the table is returned as the search result. It becomes possible to do.
In addition, even when there is no such table in the table group to be searched, the primary key of the search input table is detected as a foreign key column that is an important column or a table that is an index target column, Furthermore, it is possible to return a table group including as many other columns as possible in the same schema for the other columns of the search input table.

なお、本実施の形態では、検索クライアント装置1は、複数のカラムで構成されるテーブルデータの検索を検索サーバ装置3に要求し、検索サーバ装置3は、検索結果として1つ以上のテーブルデータを検索クライアント装置1に提示する例を説明した。
しかし、テーブルデータ以外にも、複数の項目を含み、複数の項目のうちの任意の項目に、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられる項目データであれば、本実施の形態に係る検索サーバ装置3は適用可能である。
In the present embodiment, the search client device 1 requests the search server device 3 to search for table data composed of a plurality of columns, and the search server device 3 receives one or more table data as a search result. The example presented to the search client device 1 has been described.
However, in addition to the table data, if the item data includes a plurality of items, and any item of the plurality of items can be assigned any one of a plurality of roles for data processing, The search server device 3 according to the present embodiment is applicable.

本実施の形態では、
データベースのテーブルなど構造をもつ実体を入力として受け取り、あらかじめ登録された前記実体の集合の中から指定された手法で類似度を算出し、入力として与えられた前記実体と類似度の高いものの集合を類似度のランキング順にて返却する検索システムであって、
前記実体の集合の定義情報を格納するスキーマ情報DBと、
スキーマ情報DB内の前記実体に対しての検索処理を実現するための検索インデックスを作成する検索インデックス作成部と、
前記検索インデックスを使用して検索を実施する検索実行部と、
入力された前記実体の構造を持つ定義情報より、その構造を解釈してあらかじめ与えられた前記実体のカラム種別の重要度情報をもとに重要な項目を抽出し、前記検索実行部に入力として提供し、あらかじめ設定された複数回の検索作業への入力項目と、前記検索作業に与える重み値を提供するクエリ分解部と、
前記クエリ分解部によって提供された検索作業を検索部に指示する検索指示部と、
検索実行時に検索インデックス上の重み付けの有効化と無効化を切り替える検索重み付けON/OFF部と、
検索結果を集約する結果集約部と、
集約した結果を検索要求元に返却するクエリ返却部を持つスキーマ検索装置および方法を説明した。
In this embodiment,
An entity having a structure such as a database table is received as input, a similarity is calculated from a set of entities registered in advance by a specified method, and a set having high similarity to the entity given as input is obtained. A search system that returns items in order of similarity ranking,
A schema information DB for storing definition information of the set of entities;
A search index creating unit for creating a search index for realizing a search process for the entity in the schema information DB;
A search execution unit that performs a search using the search index;
From the inputted definition information having the structure of the entity, the structure is interpreted to extract important items based on the importance information of the column type of the entity given in advance, and input to the search execution unit A query decomposition unit that provides input items to a plurality of preset search tasks, and provides a weight value to be given to the search tasks;
A search instruction unit for instructing the search unit to perform a search operation provided by the query decomposition unit;
A search weighting ON / OFF unit that switches between enabling and disabling weighting on the search index during search execution;
A result aggregator that aggregates search results;
A schema search apparatus and method having a query return unit that returns aggregated results to a search request source has been described.

また、本実施の形態では、
検索インデックス作成部は、あらかじめ設定された重み付け表に従い、前記実体の重要項目に対しては重み付け情報を付加して、検索インデックスを作成することを説明した。
In the present embodiment,
It has been described that the search index creation unit creates a search index by adding weighting information to important items of the entity according to a preset weighting table.

また、本実施の形態では、
検索インデックス作成部は、検索インデックス作成において重み付けする項目と検索部により一致すると判断される項目が既に存在する場合にはこれを検知し、あらかじめ設定された重み付け表に従い、重み付けを最も低く設定することを説明した。
In the present embodiment,
The search index creation unit detects when there is already an item to be weighted in the search index creation and an item determined to be matched by the search unit, and sets the lowest weight according to a preset weighting table. Explained.

また、本実施の形態では、
検索重み付けON/OFF部は、実行する検索処理が重要項目の検索であるか、その他の項目の検索であるかの情報を受け取り、この情報に従って、検索インデックスの重みの採用、不採用の切り替えを行うことを説明した。
In the present embodiment,
The search weighting ON / OFF unit receives information indicating whether the search process to be executed is a search for an important item or a search for other items, and switches between adopting or not adopting a search index weight according to this information. Explained what to do.

また、本実施の形態では、
検索重み付けON/OFF部は、実行する検索処理が重要項目の検索であるか、その他の項目の検索であるかの情報を受け取り、この情報に従って、検索インデックスの重みがあらかじめ設定した閾値以下であるとき、その検索対象を無視することを説明した。
In the present embodiment,
The search weighting ON / OFF unit receives information indicating whether the search process to be executed is a search for an important item or a search for other items, and according to this information, the search index weight is equal to or less than a preset threshold value. When I explained that I ignored the search target.

また、本実施の形態では、
クエリ分解部は入力がデータベーステーブル情報である場合、主キー制約、外部キー制約にくわえて、テーブル索引制約に含まれるカラム、およびユニーク制約をもつカラムを重要カラムと判断することを説明した。
In the present embodiment,
The query decomposition unit explained that, when the input is database table information, in addition to the primary key constraint and the foreign key constraint, the column included in the table index constraint and the column having the unique constraint are determined as the important columns.

実施の形態2.
実施の形態1では、カラム名と、カラム名に割当てられている役割(主キー、外部キー等)とを用いて検索条件を与える例を説明した。
本実施の形態では、カラム名以外のデータ要素、具体的には、コメントや論理名等を用いて検索条件を与える例を説明する。
Embodiment 2. FIG.
In the first embodiment, the example in which the search condition is given using the column name and the role (primary key, foreign key, etc.) assigned to the column name has been described.
In this embodiment, an example in which a search condition is given using a data element other than a column name, specifically, a comment, a logical name, or the like will be described.

図9は、本実施の形態に係るテーブル定義2の例であり、データ定義言語(DDL)にて提供された例を示す。
図9の例では、データ定義言語のCOMMENT文にてカラムにコメント情報が付加されており、顧客名カラムに対して「客先名称」という情報が付加されている。
このように付加情報が得られる場合、図10に示すように重要度判断表33に情報を付加して記載することが可能である。
図10の追加要素判断表では、コメントに加えて、論理名やテーブル名をカラムの検索情報として利用する際のインデックス重みと重要度順が指定されている。
また重要度判断表33に対して検索ポイントを付加する際の追加重みが定義されている。
図10の例では「0.6」と設定されている。
追加情報の重要度はユーザ判断として利用環境によって値を設定することが想定される。
FIG. 9 is an example of the table definition 2 according to the present embodiment, and shows an example provided in the data definition language (DDL).
In the example of FIG. 9, comment information is added to the column in the COMMENT statement of the data definition language, and information “customer name” is added to the customer name column.
When additional information is obtained in this way, information can be added and described in the importance determination table 33 as shown in FIG.
In the additional element determination table of FIG. 10, in addition to comments, index weights and order of importance when using logical names and table names as column search information are specified.
Further, an additional weight for adding a search point to the importance determination table 33 is defined.
In the example of FIG. 10, “0.6” is set.
It is assumed that the importance level of the additional information is set according to the use environment as a user judgment.

重要度判断表33は、インデックス重み付け設定部324において検索インデックス重みデータ3141を作成する際に使用されるため、図10の追加要素判断表を重要度判断表33の内容と同等に扱うことによって検索インデックス重みデータ3141の作成を実施する。
また、重要度判断表33は検索実行時にクエリ分解部311によって参照されるため、図10の追加要素判断表に従い、追加要素を考慮に含んだ検索が可能となる。
The importance determination table 33 is used when the index weight setting unit 324 creates the search index weight data 3141. Therefore, the importance determination table 33 is searched by treating the additional element determination table in FIG. The index weight data 3141 is created.
In addition, since the importance determination table 33 is referred to by the query decomposition unit 311 at the time of executing the search, the search including the additional elements can be performed according to the additional element determination table of FIG.

本実施の形態では、テーブル定義2においてコメント等がカラム名と対応付けられている場合は(図9の例では、コメント「客先名称」はカラム名「顧客名」と対応付けられている)、クエリ分解部311は、コメント等を、対応付けられているカラム名と同等に扱う。
つまり、クエリ分解部311は、図9のテーブル定義2の場合、図15に示す検索実行内容情報を生成する。
図15の検索実行内容情報では、コメント「客先名称」のレコードが設けられ、「カラム種別」が「顧客名」と同様に「索引カラム」となっている。
また、「インデックス重みON/OFF」、「検索集計重み」及び「検索キーワード」も、「顧客名」のレコードと同様になっている。
検索指示部312とインデックス重み付けON/OFF部313と検索実行部314は、図15の検索実行内容情報に従って、実施の形態1と同様の動作を行う。
In the present embodiment, when a comment or the like is associated with a column name in the table definition 2 (in the example of FIG. 9, the comment “customer name” is associated with the column name “customer name”). The query decomposition unit 311 handles comments and the like equivalent to the associated column names.
That is, in the case of the table definition 2 in FIG. 9, the query decomposition unit 311 generates search execution content information shown in FIG.
In the search execution content information of FIG. 15, a record of a comment “customer name” is provided, and “column type” is “index column” similarly to “customer name”.
In addition, “index weight ON / OFF”, “search aggregation weight”, and “search keyword” are the same as the record of “customer name”.
The search instruction unit 312, the index weighting ON / OFF unit 313, and the search execution unit 314 perform the same operation as in the first embodiment according to the search execution content information of FIG.

一方、テーブル定義2においてコメント等がいずれのカラム名とも対応付けられていない場合は、検索実行部314は、検索インデックス重みデータ3141内の追加要素判断表のインデックス重みの値及び追加重みを用いて、テーブルごとの評価値を算出する。
つまり、本実施の形態に係る検索インデックス重みデータ3141には、図10の追加要素判断表のインデックス重みの値及び追加重みが反映されており、検索実行部314は、テーブル定義2において指定されているコメント等がテーブルに含まれている場合は、当該テーブルに対してコメント等についての評価点を計上する。
例えば、あるテーブルに、テーブル定義2において指定されている論理名が含まれている場合は、検索実行部314は、当該論理名が含まれている位置、カラムに関わらず、当該テーブルに対して「2.0×0.6=1.2」を計上する。
なお、コメント、テーブル名の場合は、それぞれ「0.9」(1.5×0.6=0.9)と「0.72」(1.2×0.6=0.72)となり、「1.0」未満となるので、コメント、テーブル名については、繰り上げて「1.0」と計上してもよい。
また、テーブル定義2において主キーとして指定されているカラム名が主キーとして含まれているテーブルに、同じテーブル定義2において指定されているコメント等が含まれている場合は、評価値を「2.0」倍するようにしてもよい。
On the other hand, when a comment or the like is not associated with any column name in the table definition 2, the search execution unit 314 uses the index weight value and the additional weight of the additional element determination table in the search index weight data 3141. The evaluation value for each table is calculated.
That is, the search index weight data 3141 according to the present embodiment reflects the index weight value and the additional weight of the additional element determination table in FIG. 10, and the search execution unit 314 is specified in the table definition 2. If a comment or the like is included in the table, an evaluation score for the comment or the like is added to the table.
For example, if a certain table includes the logical name specified in the table definition 2, the search execution unit 314 performs the search on the table regardless of the position and column where the logical name is included. Record “2.0 × 0.6 = 1.2”.
In the case of comments and table names, they are “0.9” (1.5 × 0.6 = 0.9) and “0.72” (1.2 × 0.6 = 0.72), respectively. Since it is less than “1.0”, the comment and the table name may be moved up to “1.0”.
In addition, when a comment that is specified in the same table definition 2 is included in a table in which the column name specified as the primary key in the table definition 2 is included as the primary key, the evaluation value is “2”. .0 ”times.

以上のように、本実施の形態によれば、検索対象のテーブルのカラム名の一致もしくは類似に加えて、追加の情報への考慮を追加することが可能であり、実施の形態1の効果をカラム名比較に限定せずに拡張することが可能である。   As described above, according to the present embodiment, it is possible to add consideration to additional information in addition to the match or similarity of column names in the table to be searched. It is possible to extend without limiting to column name comparison.

本実施の形態では、
入力のデータベーステーブル情報がコメントや論理名などを含んでいる場合、クエリ分解部と検索インデックス作成部はこれを項目一致のための情報として、検索クエリ作成や検索インデックス作成にするスキーマ検索装置および方法を説明した。
In this embodiment,
When the input database table information includes a comment, a logical name, etc., a schema search device and method for creating a search query and creating a search index using the query decomposition unit and the search index creation unit as information for matching items Explained.

最後に、実施の形態1及び2に示した検索サーバ装置3のハードウェア構成例について説明する。
図16は、実施の形態1及び2に示す検索サーバ装置3のハードウェア資源の一例を示す図である。
なお、図16の構成は、あくまでも検索サーバ装置3のハードウェア構成の一例を示すものであり、検索サーバ装置3のハードウェア構成は図16に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the search server device 3 shown in the first and second embodiments will be described.
FIG. 16 is a diagram illustrating an example of hardware resources of the search server device 3 illustrated in the first and second embodiments.
The configuration in FIG. 16 is merely an example of the hardware configuration of the search server device 3, and the hardware configuration of the search server device 3 is not limited to the configuration shown in FIG. Also good.

図16において、検索サーバ装置3は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、SSD(Solid State Drive)、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1及び2で説明した「検索インデックス記憶部317」は、例えば、RAM914、磁気ディスク装置920により実現される。
また、実施の形態1及び2で説明した「スキーマ情報DB322」は、例えば、磁気ディスク装置920により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 16, the search server device 3 includes a CPU 911 (also referred to as a central processing unit, a central processing unit, a processing unit, a processing unit, a microprocessor, a microcomputer, and a processor) that executes a program.
The CPU 911 is connected to, for example, a ROM (Read Only Memory) 913, a RAM (Random Access Memory) 914, a communication board 915, a display device 901, a keyboard 902, a mouse 903, and a magnetic disk device 920 via a bus 912. Control hardware devices.
Further, the CPU 911 may be connected to an FDD 904 (Flexible Disk Drive), a compact disk device 905 (CDD), a printer device 906, and a scanner device 907. Further, instead of the magnetic disk device 920, a storage device such as an SSD (Solid State Drive), an optical disk device, or a memory card (registered trademark) read / write device may be used.
The RAM 914 is an example of a volatile memory. The storage media of the ROM 913, the FDD 904, the CDD 905, and the magnetic disk device 920 are an example of a nonvolatile memory. These are examples of the storage device.
The “search index storage unit 317” described in the first and second embodiments is realized by the RAM 914 and the magnetic disk device 920, for example.
The “schema information DB 322” described in the first and second embodiments is realized by the magnetic disk device 920, for example.
A communication board 915, a keyboard 902, a mouse 903, a scanner device 907, an FDD 904, and the like are examples of input devices.
The communication board 915, the display device 901, the printer device 906, and the like are examples of output devices.

通信ボード915は、ネットワークに接続されている。
例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されている。
The communication board 915 is connected to the network.
For example, the communication board 915 is connected to a LAN (local area network), the Internet, a WAN (wide area network), a SAN (storage area network), and the like.

磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The magnetic disk device 920 stores an operating system 921 (OS), a window system 922, a program group 923, and a file group 924.
The programs in the program group 923 are executed by the CPU 911 using the operating system 921 and the window system 922.

また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The RAM 914 temporarily stores at least part of the operating system 921 program and application programs to be executed by the CPU 911.
The RAM 914 stores various data necessary for processing by the CPU 911.

また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
検索サーバ装置3の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The ROM 913 stores a BIOS (Basic Input Output System) program, and the magnetic disk device 920 stores a boot program.
When the search server device 3 is activated, the BIOS program in the ROM 913 and the boot program in the magnetic disk device 920 are executed, and the operating system 921 is activated by the BIOS program and the boot program.

上記プログラム群923には、実施の形態1及び2の説明において「〜部」(「検索インデックス記憶部317」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。   The program group 923 stores programs that execute the functions described as “˜parts” (except for “search index storage unit 317” in the following) in the description of the first and second embodiments. The program is read and executed by the CPU 911.

ファイル群924には、実施の形態1及び2の説明において、「〜の判断」、「〜の検索」、「〜の抽出」、「〜の計算」、「〜の算出」、「〜の計上」、「〜の指定」、「〜の評価」、「〜の生成」、「〜の作成」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各要素として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。
ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出される。
そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1及び2で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。
データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。
また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the file group 924, in the description of the first and second embodiments, “determination of”, “retrieval of”, “extraction of”, “calculation of”, “calculation of”, “accounting of” ”,“ Specify ”,“ evaluate ”,“ generate ”,“ create ”,“ update ”,“ set ”,“ register ”,“ select ”, Information, data, signal values, variable values, and parameters indicating the results of the processing described as "~ input", "~ output", etc. are stored as elements of "~ file" and "~ database". ing.
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory.
Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the CPU 911 via a read / write circuit.
The read information, data, signal value, variable value, and parameter are used for CPU operations such as extraction, search, reference, comparison, calculation, calculation, processing, editing, output, printing, and display.
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
In addition, the arrows in the flowcharts described in the first and second embodiments mainly indicate input / output of data and signals.
Data and signal values are recorded on a recording medium such as a memory of the RAM 914, a flexible disk of the FDD 904, a compact disk of the CDD 905, a magnetic disk of the magnetic disk device 920, other optical disks, a mini disk, and a DVD.
Data and signals are transmitted online via a bus 912, signal lines, cables, or other transmission media.

また、実施の形態1及び2の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態1及び2で説明したステップ、手順、処理により、本発明に係る「データ検索方法」を実現することができる。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。
或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。
プログラムはCPU911により読み出され、CPU911により実行される。
すなわち、プログラムは、実施の形態1及び2の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1及び2の「〜部」の手順や方法をコンピュータに実行させるものである。
In addition, what is described as “˜unit” in the description of the first and second embodiments may be “˜circuit”, “˜device”, “˜device”, and “˜step”, It may be “˜procedure” or “˜processing”.
That is, the “data search method” according to the present invention can be realized by the steps, procedures, and processes described in the first and second embodiments.
Further, what is described as “˜unit” may be realized by firmware stored in the ROM 913.
Alternatively, it may be implemented only by software, or only by hardware such as elements, devices, substrates, and wirings, by a combination of software and hardware, or by a combination of firmware.
Firmware and software are stored as programs in a recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, and a DVD.
The program is read by the CPU 911 and executed by the CPU 911.
That is, the program causes the computer to function as “to part” in the first and second embodiments. Alternatively, the computer executes the procedure and method of “to unit” in the first and second embodiments.

このように、実施の形態1及び2に示す検索サーバ装置3は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。
そして、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the search server device 3 shown in the first and second embodiments includes a CPU as a processing device, a memory as a storage device, a magnetic disk, a keyboard as an input device, a mouse, a communication board, a display device as an output device, a communication device, and the like. A computer including a board or the like.
Then, as described above, the functions indicated as “˜units” are realized using these processing devices, storage devices, input devices, and output devices.

1 検索クライアント装置、2 テーブル定義、3 検索サーバ装置、4 テーブル群、5 スキーママッチング処理装置、31 テーブル検索部、32 テーブル登録部、33 重要度判断表、310 クエリ受信部、311 クエリ分解部、312 検索指示部、313 インデックス重み付けON/OFF部、314 検索実行部、315 結果集約部、316 クエリ返却部、317 検索インデックス記憶部、320 テーブル情報登録部、321 重複検出部、322 スキーマ情報DB、323 検索インデックス作成部、324 インデックス重み付け設定部、3140 検索インデックス、3141 検索インデックス重みデータ。   DESCRIPTION OF SYMBOLS 1 Search client apparatus, 2 Table definition, 3 Search server apparatus, 4 Table group, 5 Schema matching processing apparatus, 31 Table search part, 32 Table registration part, 33 Importance judgment table, 310 Query reception part, 311 Query decomposition part, 312 Search instruction unit, 313 Index weighting ON / OFF unit, 314 Search execution unit, 315 Result aggregation unit, 316 Query return unit, 317 Search index storage unit, 320 Table information registration unit, 321 Duplicate detection unit, 322 Schema information DB, 323 Search index creation unit, 324 Index weight setting unit, 3140 Search index, 3141 Search index weight data.

Claims (12)

複数の項目を含み、前記複数の項目のうちの任意の項目に、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられる項目データ
に対する検索を行うデータ検索装置であって、
前記複数種の役割の各々に対する係数値が定義される係数値定義情報を記憶する係数値定義情報記憶部と、
検索の対象となる2以上の項目が検索対象項目として指定され、検索対象項目ごとに役割が指定される検索条件を入力する検索条件入力部と、
前記検索条件において特定の役割が指定されている検索対象項目を優先検索対象項目として選択し、優先検索対象項目を前記特定の役割として含む加重対象項目データに対して所定の加重値を係数値に加重して評価値を算出する旨の加重ルールを生成する優先検索対象項目選択部と、
検索対象項目ごとに、検索対象項目を含む項目データを検索し、検索した項目データが前記加重対象項目データに該当しない場合は、検索した項目データにおける検索対象項目の役割を判断し、当該検索対象項目の役割に対応する係数値を用いて評価値を算出し、検索した項目データが前記加重対象項目データに該当する場合は、検索した項目データにおける検索対象項目の役割を判断し、前記加重ルールに従い、当該検索対象項目の役割に対応する係数値に前記加重値を加重して評価値を算出する検索実行部と、
前記検索実行部により算出された評価値に基づき、前記検索実行部により検索された項目データの順位付けを行い、項目データの順位付けの結果を示す検索結果を、前記検索条件の入力元に出力する検索結果出力部とを有することを特徴とするデータ検索装置。
A data search device that includes a plurality of items, and performs a search for item data in which any of the plurality of items is assigned one of a plurality of roles for data processing,
A coefficient value definition information storage unit for storing coefficient value definition information in which coefficient values for each of the plurality of roles are defined;
A search condition input unit for inputting a search condition in which two or more items to be searched are specified as search target items and a role is specified for each search target item;
A search target item in which a specific role is specified in the search condition is selected as a priority search target item, and a predetermined weight is used as a coefficient value for weight target item data including the priority search target item as the specific role. A priority search target item selection unit that generates a weighting rule for weighting and calculating an evaluation value;
For each search target item, search the item data including the search target item, and if the searched item data does not correspond to the weighted target item data, determine the role of the search target item in the searched item data, and An evaluation value is calculated using a coefficient value corresponding to the role of the item, and when the searched item data corresponds to the weighted item data, the role of the searched item in the searched item data is determined, and the weighting rule A search execution unit that calculates an evaluation value by weighting the weight value to a coefficient value corresponding to the role of the search target item,
Based on the evaluation value calculated by the search execution unit, the item data searched by the search execution unit is ranked, and the search result indicating the result of ranking the item data is output to the input source of the search condition And a search result output unit.
前記優先検索対象項目選択部は、
前記加重対象項目データに含まれる検索対象項目の役割が前記検索条件において当該検索対象項目に指定されている役割と一致する場合に、当該役割に対応する係数値に前記加重値を加重して評価値を算出する旨の加重ルールを生成し、
前記検索実行部は、
検索した項目データが前記加重対象項目データに該当する場合に、検索した項目データにおける検索対象項目の役割が前記検索条件において当該検索対象項目に指定されている役割と一致するか否かを判断し、役割が一致する場合に、当該役割に対応する係数値に前記加重値を加重して評価値を算出することを特徴とする請求項1に記載のデータ検索装置。
The priority search target item selection unit
When the role of the search target item included in the weight target item data matches the role specified for the search target item in the search condition, the weight value is weighted to the coefficient value corresponding to the role and evaluated Generate a weight rule to calculate the value,
The search execution unit
When the searched item data corresponds to the weighted item data, it is determined whether the role of the search item in the searched item data matches the role specified for the search item in the search condition. 2. The data search apparatus according to claim 1, wherein when the roles match, the evaluation value is calculated by weighting the weight value to a coefficient value corresponding to the role.
前記優先検索対象項目選択部は、
前記検索条件において各検索対象項目に指定されている役割のうち、前記加重ルールを適用しない役割をルール適用外役割として指定し、
前記検索実行部は、
検索した項目データが前記加重対象項目データに該当する場合であっても、検索した項目データにおける検索対象項目の役割が前記ルール適用外役割に該当する場合は、当該役割に対応する係数値には前記加重値を加重しないことを特徴とする請求項1又は2に記載のデータ検索装置。
The priority search target item selection unit
Among the roles specified for each search target item in the search condition, specify a role that does not apply the weighting rule as a rule non-applicable role,
The search execution unit
Even if the searched item data corresponds to the weighted item data, if the role of the search target item in the searched item data corresponds to the role not applicable to the rule, the coefficient value corresponding to the role 3. The data search apparatus according to claim 1, wherein the weight value is not weighted.
前記係数値定義情報記憶部は、
前記複数種の役割に設けられている優先順位に従い、優先順位が高い役割ほど係数値が高くなる係数値定義情報を記憶し、
前記優先検索対象項目選択部は、
前記検索条件において最も優先順位が高い役割が指定されている検索対象項目を優先検索対象項目として選択することを特徴とする請求項1〜3のいずれかに記載のデータ検索装置。
The coefficient value definition information storage unit
According to the priority order provided for the plurality of types of roles, storing coefficient value definition information in which the higher the priority order, the higher the coefficient value,
The priority search target item selection unit
The data search device according to any one of claims 1 to 3, wherein a search target item for which a role having the highest priority is specified in the search condition is selected as a priority search target item.
前記検索実行部は、
評価値の算出に用いる係数値が所定の閾値未満であれば、検索した項目データについて当該係数値を用いずに評価値を算出することを特徴とする請求項1〜4のいずれかに記載のデータ検索装置。
The search execution unit
The evaluation value is calculated without using the coefficient value for the retrieved item data if the coefficient value used for calculation of the evaluation value is less than a predetermined threshold value. Data retrieval device.
係数値定義情報記憶部は、
相互に関連する2以上の項目データにおいて同一の検索対象項目が同一の役割として含まれている場合の係数値を重複係数値とし、前記重複係数値を他の係数値よりも低い値として定義する係数値定義情報を記憶しており、
前記検索実行部は、
検索した項目データに含まれている検索対象項目が、当該項目データと関連する検索済みの他の項目データに含まれており、当該検索対象項目の両項目データにおける役割が同一である場合に、検索した項目データについて、当該役割に対して前記重複係数値を適用して評価値を算出することを特徴とする請求項1〜5のいずれかに記載のデータ検索装置。
The coefficient value definition information storage unit
The coefficient value when the same search target item is included in the same role in two or more item data that are related to each other is defined as a duplicate coefficient value, and the duplicate coefficient value is defined as a value lower than other coefficient values. Stores coefficient value definition information,
The search execution unit
When the search target item included in the searched item data is included in other searched item data related to the item data, and the role of the search target item in both item data is the same, 6. The data search apparatus according to claim 1, wherein an evaluation value is calculated for the retrieved item data by applying the duplicate coefficient value to the role.
前記検索実行部は、
前記重複係数値が所定の閾値未満であれば、検索した項目データについて前記重複係数値を用いずに評価値を算出することを特徴とする請求項6に記載のデータ検索装置。
The search execution unit
7. The data search device according to claim 6, wherein if the overlap coefficient value is less than a predetermined threshold, an evaluation value is calculated for the searched item data without using the overlap coefficient value.
前記検索条件入力部は、
項目以外のデータ要素が検索データ要素として指定される検索条件を入力し、
前記検索実行部は、
検索データ要素を含む項目データを検索し、検索した項目データが前記加重対象項目データに該当しない場合は、検索した項目データにおける当該検索データ要素の役割を判断し、当該検索データ要素の役割に対応する係数値を用いて評価値を算出し、検索した項目データが前記加重対象項目データに該当する場合は、検索した項目データにおける当該検索データ要素の役割を判断し、前記加重ルールに従い、当該検索データ要素の役割に対応する係数値に前記加重値を加重して評価値を算出することを特徴とする請求項1〜7のいずれかに記載のデータ検索装置。
The search condition input unit
Enter search conditions that specify data elements other than items as search data elements,
The search execution unit
Search for item data including the search data element, and if the searched item data does not correspond to the weighted item data, determine the role of the search data element in the searched item data and correspond to the role of the search data element If the retrieved item data corresponds to the weighted item data, the role of the retrieved data element in the retrieved item data is determined, and the retrieval is performed according to the weighting rule. The data search apparatus according to claim 1, wherein an evaluation value is calculated by weighting the weight value to a coefficient value corresponding to a role of a data element.
前記データ検索装置は、
複数のカラムを含み、前記複数のカラムのうちの任意のカラムに、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられるテーブルデータ
に対する検索を行うことを特徴とする請求項1〜8のいずれかに記載のデータ検索装置。
The data search device includes:
The table data including a plurality of columns, wherein any one of the plurality of roles for data processing is assigned to any column of the plurality of columns is searched. The data search device according to any one of 1 to 8.
前記検索条件入力部は、
検索の対象となる2以上のカラムが検索対象カラムとして指定され、いずれかの検索対象カラムに主キーとしての役割が指定される検索条件を入力し、
前記優先検索対象項目選択部は、
前記検索条件において主キーとしての役割が指定されている検索対象項目を優先検索対象項目として選択し、優先検索対象項目を主キーとして含む加重対象項目データに対して所定の加重値を係数値に加重して評価値を算出する旨の加重ルールを生成することを特徴とする請求項9に記載のデータ検索装置。
The search condition input unit
Enter two or more search target columns as search target columns, and enter a search condition that specifies the role as the primary key in one of the search target columns.
The priority search target item selection unit
A search target item whose role as a primary key is specified in the search condition is selected as a priority search target item, and a predetermined weight value is used as a coefficient value for weight target item data including the priority search target item as a primary key. The data search apparatus according to claim 9, wherein a weighting rule for calculating an evaluation value by weighting is generated.
コンピュータが、
複数の項目を含み、前記複数の項目のうちの任意の項目に、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられる項目データ
に対する検索を行うデータ検索方法であって、
前記コンピュータが、前記複数種の役割の各々に対する係数値が定義される係数値定義情報を記憶する係数値定義情報記憶ステップと、
前記コンピュータが、検索の対象となる2以上の項目が検索対象項目として指定され、検索対象項目ごとに役割が指定される検索条件を入力する検索条件入力ステップと、
前記コンピュータが、前記検索条件において特定の役割が指定されている検索対象項目を優先検索対象項目として選択し、優先検索対象項目を前記特定の役割として含む加重対象項目データに対して所定の加重値を係数値に加重して評価値を算出する旨の加重ルールを生成する優先検索対象項目選択ステップと、
前記コンピュータが、検索対象項目ごとに、検索対象項目を含む項目データを検索し、検索した項目データが前記加重対象項目データに該当しない場合は、検索した項目データにおける検索対象項目の役割を判断し、当該検索対象項目の役割に対応する係数値を用いて評価値を算出し、検索した項目データが前記加重対象項目データに該当する場合は、検索した項目データにおける検索対象項目の役割を判断し、前記加重ルールに従い、当該検索対象項目の役割に対応する係数値に前記加重値を加重して評価値を算出する検索実行ステップと、
前記コンピュータが、前記検索実行ステップにより算出された評価値に基づき、前記検索実行ステップにより検索された項目データの順位付けを行い、項目データの順位付けの結果を示す検索結果を、前記検索条件の入力元に出力する検索結果出力ステップとを有することを特徴とするデータ検索方法。
Computer
A data search method including a plurality of items, and performing a search for item data in which any of the plurality of items is assigned one of a plurality of roles for data processing,
A coefficient value definition information storage step in which the computer stores coefficient value definition information in which coefficient values for each of the plurality of roles are defined;
A search condition input step in which the computer inputs a search condition in which two or more items to be searched are specified as search target items and a role is specified for each search target item;
The computer selects, as a priority search target item, a search target item for which a specific role is specified in the search condition, and a predetermined weight value for weight target item data including the priority search target item as the specific role A priority search target item selection step for generating a weighting rule for calculating an evaluation value by weighting
The computer searches the item data including the search target item for each search target item, and when the searched item data does not correspond to the weighted target item data, determines the role of the search target item in the searched item data. The evaluation value is calculated using the coefficient value corresponding to the role of the search target item, and when the searched item data corresponds to the weighted target item data, the role of the search target item in the searched item data is determined. In accordance with the weight rule, a search execution step of calculating an evaluation value by weighting the weight value to a coefficient value corresponding to the role of the search target item;
The computer ranks the item data retrieved by the search execution step based on the evaluation value calculated by the search execution step, and obtains a search result indicating the result of ranking the item data as the search condition. And a search result output step of outputting to an input source.
複数の項目を含み、前記複数の項目のうちの任意の項目に、データ処理のための複数種の役割のうちのいずれかの役割が割り当てられる項目データ
に対する検索を行うコンピュータに、
前記複数種の役割の各々に対する係数値が定義される係数値定義情報を記憶する係数値定義情報記憶ステップと、
検索の対象となる2以上の項目が検索対象項目として指定され、検索対象項目ごとに役割が指定される検索条件を入力する検索条件入力ステップと、
前記検索条件において特定の役割が指定されている検索対象項目を優先検索対象項目として選択し、優先検索対象項目を前記特定の役割として含む加重対象項目データに対して所定の加重値を係数値に加重して評価値を算出する旨の加重ルールを生成する優先検索対象項目選択ステップと、
検索対象項目ごとに、検索対象項目を含む項目データを検索し、検索した項目データが前記加重対象項目データに該当しない場合は、検索した項目データにおける検索対象項目の役割を判断し、当該検索対象項目の役割に対応する係数値を用いて評価値を算出し、検索した項目データが前記加重対象項目データに該当する場合は、検索した項目データにおける検索対象項目の役割を判断し、前記加重ルールに従い、当該検索対象項目の役割に対応する係数値に前記加重値を加重して評価値を算出する検索実行ステップと、
前記検索実行ステップにより算出された評価値に基づき、前記検索実行ステップにより検索された項目データの順位付けを行い、項目データの順位付けの結果を示す検索結果を、前記検索条件の入力元に出力する検索結果出力ステップとを実行させることを特徴とするプログラム。
A computer that includes a plurality of items, and searches for item data in which any one of the plurality of roles for data processing is assigned to any of the plurality of items.
A coefficient value definition information storage step for storing coefficient value definition information in which coefficient values for each of the plurality of roles are defined;
A search condition input step for inputting a search condition in which two or more items to be searched are specified as search target items and a role is specified for each search target item;
A search target item in which a specific role is specified in the search condition is selected as a priority search target item, and a predetermined weight is used as a coefficient value for weight target item data including the priority search target item as the specific role. A priority search target item selection step for generating a weighting rule for weighting and calculating an evaluation value;
For each search target item, search the item data including the search target item, and if the searched item data does not correspond to the weighted target item data, determine the role of the search target item in the searched item data, and An evaluation value is calculated using a coefficient value corresponding to the role of the item, and when the searched item data corresponds to the weighted item data, the role of the searched item in the searched item data is determined, and the weighting rule A search execution step of calculating an evaluation value by weighting the weight value to a coefficient value corresponding to the role of the search target item,
Based on the evaluation value calculated by the search execution step, the item data searched by the search execution step is ranked, and the search result indicating the result of ranking the item data is output to the input source of the search condition A search result output step is executed.
JP2011076275A 2011-03-30 2011-03-30 Data retrieval device, data retrieval method and program Withdrawn JP2012212212A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011076275A JP2012212212A (en) 2011-03-30 2011-03-30 Data retrieval device, data retrieval method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011076275A JP2012212212A (en) 2011-03-30 2011-03-30 Data retrieval device, data retrieval method and program

Publications (1)

Publication Number Publication Date
JP2012212212A true JP2012212212A (en) 2012-11-01

Family

ID=47266129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011076275A Withdrawn JP2012212212A (en) 2011-03-30 2011-03-30 Data retrieval device, data retrieval method and program

Country Status (1)

Country Link
JP (1) JP2012212212A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020042722A (en) * 2018-09-13 2020-03-19 東芝情報システム株式会社 Data search system and data searching program
CN111079165A (en) * 2019-12-18 2020-04-28 深圳我家云网络科技有限公司 Data processing method, data processing device, equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020042722A (en) * 2018-09-13 2020-03-19 東芝情報システム株式会社 Data search system and data searching program
CN111079165A (en) * 2019-12-18 2020-04-28 深圳我家云网络科技有限公司 Data processing method, data processing device, equipment and storage medium

Similar Documents

Publication Publication Date Title
US11379506B2 (en) Techniques for similarity analysis and data enrichment using knowledge sources
US10740304B2 (en) Data virtualization across heterogeneous formats
US10296192B2 (en) Dynamic visual profiling and visualization of high volume datasets and real-time smart sampling and statistical profiling of extremely large datasets
JP2022505237A (en) Techniques for ranking content item recommendations
Nguyen et al. Synthesizing products for online catalogs
US10210461B2 (en) Ranking data analytics results using composite validation
JP5791149B2 (en) Computer-implemented method, computer program, and data processing system for database query optimization
US11556590B2 (en) Search systems and methods utilizing search based user clustering
US20230078177A1 (en) Multiple stage filtering for natural language query processing pipelines
US9002824B1 (en) Query plan management in shared distributed data stores
Koehler et al. Incorporating data context to cost-effectively automate end-to-end data wrangling
Izquierdo et al. Keyword search over schema-less RDF datasets by SPARQL query compilation
Deffayet et al. Evaluating the robustness of click models to policy distributional shift
JP2012212212A (en) Data retrieval device, data retrieval method and program
JP6733481B2 (en) Search means selection program, search means selection method, and search means selection device
Lomotey et al. Terms mining in document-based nosql: Response to unstructured data
US20190265954A1 (en) Apparatus and method for assisting discovery of design pattern in model development environment using flow diagram
Wong Advanced Elasticsearch 7.0: A practical guide to designing, indexing, and querying advanced distributed search engines
US10409871B2 (en) Apparatus and method for searching information
Fu et al. Cosi: Context-sensitive keyword query interpretation on rdf databases
TWI742568B (en) Computer program product and apparatus for fuzzy search with universal databases
WO2016103409A1 (en) Search system
Lee et al. Scalable entity matching computation with materialization
Yang Improving the Relevance, Speed, and Computational Efficiency of Semantic Search Through Database Indexing: A Review
US20220377088A1 (en) Data management computer and data management method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140603