WO2014192116A1 - データ連携支援装置及びデータ連携支援方法 - Google Patents

データ連携支援装置及びデータ連携支援方法 Download PDF

Info

Publication number
WO2014192116A1
WO2014192116A1 PCT/JP2013/065026 JP2013065026W WO2014192116A1 WO 2014192116 A1 WO2014192116 A1 WO 2014192116A1 JP 2013065026 W JP2013065026 W JP 2013065026W WO 2014192116 A1 WO2014192116 A1 WO 2014192116A1
Authority
WO
WIPO (PCT)
Prior art keywords
column
information
unit
tables
primary key
Prior art date
Application number
PCT/JP2013/065026
Other languages
English (en)
French (fr)
Inventor
佐藤 彰洋
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2013/065026 priority Critical patent/WO2014192116A1/ja
Priority to US14/783,384 priority patent/US20160042022A1/en
Priority to GB1518688.5A priority patent/GB2529095A/en
Priority to CN201380076749.8A priority patent/CN105229618A/zh
Priority to SG11201508822WA priority patent/SG11201508822WA/en
Priority to JP2015519559A priority patent/JP5972461B2/ja
Publication of WO2014192116A1 publication Critical patent/WO2014192116A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2272Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating

Definitions

  • the present invention relates to a data linkage support apparatus and a data linkage support method.
  • a so-called schema matching technique exists as a technique for automatically extracting the correspondence between similar columns (for example, see Non-Patent Document 2).
  • a data linkage support apparatus includes: A device that supports data linkage of a database having a plurality of tables, Primary key information indicating whether or not each of the plurality of columns included in each of the plurality of tables is a primary key, and attributes of data stored in each of the plurality of columns included in each of the plurality of tables An information storage unit for storing attribute information indicating A table selection unit that selects one table among the plurality of tables as a linkage destination of data linkage; For each table other than the table selected by the table selection unit among the plurality of tables, based on the primary key information stored in the information storage unit, from the plurality of columns included in the corresponding table, to the primary key A column specifying unit for specifying the first column and the second column that is not the primary key; The column specifying unit specifies the table selected by the table selecting unit from the tables other than the table selected by the table selecting unit among the plurality of tables based on the attribute information stored in the information storage unit.
  • FIG. 6 is a table showing an example of a schema matching result according to the first embodiment.
  • 4 is a table showing an example of cooperation relationship information according to the first embodiment.
  • 5 is a flowchart showing an example of the operation of the data linkage support apparatus according to the first embodiment.
  • 4 is a table showing an example of an extraction result according to the first embodiment.
  • 5 is a flowchart showing an example of the operation of the data linkage support apparatus according to the first embodiment.
  • 4 is a table showing examples of input information and recommended information according to the first embodiment.
  • FIG. 3 is a diagram illustrating an example of a hardware configuration of the data cooperation support apparatus according to the first embodiment.
  • FIG. 1 is a block diagram showing a configuration of a data cooperation support apparatus 100 according to the present embodiment.
  • the information storage unit 101 stores the cooperation source information 111 and the cooperation destination information 112 using a storage device.
  • the cooperation destination information 112 is information that defines a plurality of tables (that is, cooperation destination tables) of a database (that is, a cooperation destination database) that is a cooperation destination of data cooperation.
  • the cooperation destination information 112 includes primary key information and attribute information of the cooperation destination database.
  • the primary key information of the cooperation destination database is information indicating whether each of a plurality of columns included in each of the plurality of cooperation destination tables is a primary key.
  • the attribute information of the cooperation destination database is information indicating data attributes (for example, column names and data types) stored in each of a plurality of columns included in each of the plurality of cooperation destination tables.
  • the column specifying unit 103 includes each of the tables other than the cooperation destination table selected by the table selection unit 102 among the plurality of tables of the cooperation source database and the cooperation destination database based on the above-described primary key information.
  • the first column that is the primary key and the second column that is not the primary key are identified from the plurality of columns.
  • the table extraction unit 104 uses the following (1) and (1) for each of the tables other than the cooperation destination table selected by the table selection unit 102 among the plurality of tables of the cooperation source database and the cooperation destination database. A table satisfying the condition (2) is extracted, and an extraction result 141 is output.
  • the cooperation destination table selected by the table selection unit 102 includes a third column similar to the first column specified by the column specification unit 103.
  • the cooperation destination table selected by the table selection unit 102 includes a fourth column similar to the second column specified by the column specification unit 103.
  • the table extraction unit 104 has the second largest number of second destination columns selected by the table selection unit 102 for the tables for which two or more second columns are specified by the column specification unit 103. Only the table in which the fourth column exists for each column is included in the extraction result 141. For example, assume that there are five second columns in a certain collaboration source table. In the cooperation destination table selected by the table selection unit 102, a fourth column similar to one of the five second columns, and another fourth column similar to the other of the five second columns, Is present. For other linkage source tables, more than two fourth columns do not exist, and for a linkage destination table different from the linkage destination table selected by the table selection unit 102, more than two fourth columns are provided. If the column does not exist, the link source table satisfies the condition (2). Note that not only the collaboration source table but also a collaboration destination table different from the collaboration destination table selected by the table selection unit 102 may satisfy the condition (2).
  • the table extraction unit 104 belongs to a table belonging to the same schema as the cooperation destination table selected by the table selection unit 102 and a different schema of the same instance as the cooperation destination table selected by the table selection unit 102.
  • Three types of tables, that is, a table and a table belonging to a schema of a different instance from the cooperation destination table selected by the table selection unit 102 can be included in the extraction result 141.
  • the reference relationship information 151 and the linkage relationship information 152 are created by the table extraction unit 104 and stored in the information storage unit 105.
  • the reference relationship information 151 and the linkage relationship information 152 may be output as the final extraction result 141 by the table extraction unit 104, or are temporarily stored in the information storage unit 105 to determine the final extraction result 141. May be used for
  • the information output unit 106 uses a combination of the cooperation destination table selected by the table selection unit 102 and the table extracted by the table extraction unit 104 for data linkage. Recommendation information 161 that recommends this is generated. The information output unit 106 outputs the generated recommended information 161 via an output device.
  • the information output unit 106 uses the table selection unit 102 for each table type.
  • Information recommending that the combination of the selected cooperation destination table and the table extracted by the table extraction unit 104 be used for data cooperation is output as recommendation information 161.
  • the cooperation destination information 112 is also in the same format as the cooperation source information 111 shown in FIG.
  • step S11 the table selection unit 102 reads the cooperation destination information 112 from the information storage unit 101.
  • the table selection unit 102 displays a list of cooperation destination tables defined by the cooperation destination information 112 on the screen via the output device.
  • the table selection unit 102 receives a user's operation of viewing this list via the input device.
  • the table selection unit 102 selects one cooperation destination table in accordance with a user operation.
  • the table selection unit 102 generates reference source information 211 that defines the selected cooperation destination table in the same format as the table definition information 202.
  • the table selection unit 102 generates reference source information 211 as shown in FIG. 4 for the “order details table” in “SVR001” of the “ordering system”.
  • the “order details table” in “SVR001” of the “ordering system” includes columns of “order details ID”, “order ID”, “store ID”, “number of orders”, and “store name”. And “order detail ID” and “order ID” are defined as primary keys.
  • the column specifying unit 103 generates primary key definition information 212 as shown in FIG. 4 for the “store” table in “SVR001” of the “ordering system”.
  • this primary key definition information 212 it is defined that the “store” table in “SVR001” of “ordering system” includes a column of “store ID” as a primary key.
  • the column identification unit 103 delivers the primary key definition information 212 to the table extraction unit 104 for each linkage source table.
  • the column specifying unit 103 performs the same process for the cooperation destination information 112 and generates primary key definition information 212 for each cooperation destination table. However, the column specifying unit 103 does not generate primary key definition information 212 for the cooperation destination table selected in step S11.
  • the column identification unit 103 delivers the primary key definition information 212 to the table extraction unit 104 for each linkage destination table.
  • step S13 the table extraction unit 104 sets a set of reference source information 211 delivered from the table selection unit 102 and primary key definition information 212 delivered from the column identification unit 103 for each linkage source table.
  • the table extraction unit 104 also sets a set of reference source information 211 delivered from the table selection unit 102 and primary key definition information 212 delivered from the column specifying unit 103 for each cooperation destination table.
  • step S15 the table extraction unit 104 determines a set of columns whose similarity is higher than a predetermined threshold (that is, a set of the first column and the third column) from the schema matching result 221 obtained in step S14. Extract.
  • a predetermined threshold that is, a set of the first column and the third column
  • the table extraction unit 104 must extract a set of columns so that there is no duplication in the columns of the reference source information 211 for all the columns of the primary key definition information 212. I must.
  • the table extraction unit 104 selects the column pair having the highest similarity.
  • the table extracting unit 104 proceeds to step S18 without extracting the column pair.
  • the table extraction unit 104 extracts a set of the “store ID” column of the primary key definition information 212 and the “store ID” column of the reference source information 211. Become.
  • step S16 the table extraction unit 104 generates reference relationship information 151 indicating the extracted set of columns.
  • the table extraction unit 104 stores the reference relationship information 151 in the information storage unit 105.
  • step S17 the data linkage support apparatus 100 performs the operation shown in FIG.
  • FIG. 7 is a flowchart showing an example of the operation of the data cooperation support apparatus 100 in step S17.
  • FIG. 8 is a table showing examples of non-foreign key definition information 231 and non-primary key definition information 232 described later.
  • FIG. 9 is a table showing an example of the result 241 of schema matching.
  • FIG. 10 is a table showing an example of the cooperation relationship information 152.
  • the column specifying unit 103 reads the reference relationship information 151 from the information storage unit 105.
  • the column specifying unit 103 refers to the table definition information 202 included in the cooperation source information 111 or the cooperation destination information 112 read in step S12 for the reference destination table defined in the reference relationship information 151.
  • the column specifying unit 103 specifies a column (that is, the second column) that is not the primary key of the reference destination table from the table definition information 202 of the reference destination table.
  • the column specifying unit 103 generates non-primary key definition information 232 by narrowing down the table definition information 202 to only the specified column.
  • step S23 the table extraction unit 104 sets a set of non-foreign key definition information 231 delivered from the table selection unit 102 and non-primary key definition information 232 delivered from the column specifying unit 103.
  • step S24 the table extraction unit 104 executes schema matching between the non-foreign key definition information 231 and the non-primary key definition information 232 of the set set in step S23.
  • the table extraction unit 104 obtains a schema matching result 241 as shown in FIG.
  • the schema matching result 241 indicates the similarity between the column of the non-primary key definition information 232 and the column of the non-foreign key definition information 231 between 0 and 1.0, as in the example of FIG. It is in the form of a table.
  • the similarity between the “store name” column of the non-primary key definition information 232 and the “order detail ID” column of the non-foreign key definition information 231 is zero.
  • the similarity between the “store name” column of the non-primary key definition information 232 and the “store name” column of the non-foreign key definition information 231 is 1.0.
  • step S25 the table extraction unit 104 determines a set of columns whose similarity is higher than a predetermined threshold (that is, a set of the second column and the fourth column) from the schema matching result 241 obtained in step S24. Extract.
  • a predetermined threshold that is, a set of the second column and the fourth column
  • the table extraction unit 104 must extract a set of columns so that the columns of the non-foreign key definition information 231 do not overlap.
  • the table extraction unit 104 selects a column pair having the highest similarity.
  • the table extracting unit 104 ends the process without extracting the column pair.
  • the table extraction unit 104 extracts a combination of the “store name” column of the non-primary key definition information 232 and the “store name” column of the non-foreign key definition information 231. Will do.
  • the table extraction unit 104 does not extract a set of columns for the “address” column and the “store manager ID” column of the non-primary key definition information 232.
  • the table extraction unit 104 generates cooperation relationship information 152 as shown in FIG.
  • the cooperation relationship information 152 includes information on the cooperation source column name and the cooperation destination column name.
  • the cooperation relationship information 152 is combined with the reference relationship information 151 shown in FIG. That is, the information obtained by combining the reference relationship information 151 and the linkage relationship information 152 includes a reference destination instance name, a reference destination schema name, a reference destination table name, a reference destination column name, a linkage source column name, a reference source instance name, and a reference. Contains information on the original schema name, reference source table name, reference source column name, and linkage destination column name.
  • FIG. 11 is a flowchart showing an example of the operation of the data cooperation support apparatus 100 after the operation of FIG.
  • FIG. 12 is a table showing an example of the extraction result 141.
  • the table extraction unit 104 reads the reference relationship information 151 and the cooperation relationship information 152 from the information storage unit 105.
  • the table extraction unit 104 sets the reference destination column and the reference source column set indicated by the reference relationship information 151 and the linkage relationship information 152 (that is, the set of the first column and the third column) as the reference destination table and the reference. Group according to which schema the original table belongs to. Specifically, the table extraction unit 104 sets a combination of a reference destination column and a reference source column, a group in which the reference destination table and the reference source table belong to the same schema, and an instance in which the reference destination table and the reference source table are the same. Are classified into three groups: a group belonging to different schemas and a group belonging to schemas of different instances of the reference destination table and the reference source table.
  • step S32 the table extraction unit 104 selects a group that has not yet executed the processes in steps S32 and S33 from the three groups described above.
  • step S31 the table extraction unit 104 extracts the group having the largest number of pairs of the corresponding cooperation source column and the cooperation destination column from the groups classified into the selected group.
  • step S ⁇ b> 33 the table extraction unit 104 uses an extraction result 141 indicating a pair of the reference destination column and the reference source column extracted in step S ⁇ b> 32 in the same format as the information obtained by combining the reference relationship information 151 and the linkage relationship information 152. Output.
  • the table extraction unit 104 outputs an extraction result 141 as shown in FIG.
  • This extraction result 141 indicates that there is a reference relationship between the “store” table in “SVR001” of “ordering system” and the “order details” table in “SVR001” of “ordering system”.
  • the “store ID” column of the “store” table is the reference destination
  • the “store name” is the link source
  • the “store ID” column of the “order details” table is the reference source (ie, the external key)
  • the “store name” "Is shown to be a partner is the “store name” "Is shown to be a partner.
  • step S34 the table extraction unit 104 determines whether there is a group that has not yet executed the processes in steps S32 and S33 among the three groups described above. If there is such a group, the table extraction unit 104 returns to step S32. If there is no such group, the table extraction unit 104 ends the process.
  • FIG. 13 is a flowchart showing an example of the operation of the data cooperation support apparatus 100 after the operation of FIG.
  • FIG. 14 is a table showing examples of input information 251 and recommendation information 161 described later.
  • step S41 the information output unit 106 acquires the input information 251 input from the user to search for a reference destination via the input device.
  • the information output unit 106 acquires input information 251 as shown in FIG.
  • This input information 251 indicates that the user wants to search for a reference destination in the “store ID” column of the “order details” table in “SVR001” of “ordering system”.
  • the information output unit 106 may interpret that the user wants to search for a reference destination for all the columns in the “order details” table.
  • the information output unit 106 refers to the extraction result 141 output from the table extraction unit 104 in step S33.
  • the information output unit 106 extracts information that matches the input information 251 acquired in step S41 from the extraction result 141. Specifically, the information output unit 106 selects the instance and schema indicated by the input information 251 from the combination of the reference source instance, reference source schema, reference source table, and reference source column indicated by the extraction result 141. , Extract the one that matches the combination of table and column.
  • step S43 the information output unit 106 determines whether there is information extracted in step S42. If there is extracted information, the information output unit 106 proceeds to step S44. If there is no extracted information, the information output unit 106 proceeds to step S45.
  • step S44 the information output unit 106 generates recommended information 161 that recommends a reference destination corresponding to the input information 251 for each of the three groups described above based on the information extracted in step S42.
  • the information output unit 106 outputs the recommended information 161 via the output device, and ends the process.
  • step S45 the information output unit 106 outputs information notifying that there is no reference destination corresponding to the input information 251 via the output device, and ends the process.
  • this embodiment it is possible to specify a reference relationship between tables and a column that is a foreign key from only the definition information of the database by the operation described above. Furthermore, it is possible to identify a column that is common between tables having a reference relationship, and to extract a table that is optimal for use in data linkage (that is, a table having the largest number of columns that can be used for data linkage). That is, according to the present embodiment, in data linkage, it is possible to efficiently detect which table has a reference relationship and which table is a linkage destination. Furthermore, it is possible to efficiently detect from which table column the data to be stored in the column of the table to be linked is extracted.
  • the table extraction unit 104 adds, to the cooperation destination table selected by the table selection unit 102, the table for which two or more second columns are specified by the column specifying unit 103. Only the table having the fourth column individually for the most second columns is included in the extraction result 141.
  • the table extraction unit 104 adds the second table to the cooperation destination table selected by the table selection unit 102 for the table for which two or more second columns are specified by the column specifying unit 103.
  • a table in which the fourth column is individually present for many second columns can also be included in the extraction result 141.
  • “N” can be set to any number greater than 2.
  • FIG. 15 is a diagram illustrating an example of a hardware configuration of the data cooperation support apparatus 100 according to the first embodiment.
  • the data linkage support apparatus 100 is a computer, and includes an LCD 901 (Liquid / Crystal / Display), a keyboard 902 (K / B), a mouse 903, an FDD 904 (Flexible / Disk / Drive), and a CDD 905 (Compact / Disc / Disk / Drive) and a hardware device such as a printer 906 are provided. These hardware devices are connected by cables and signal lines. Instead of the LCD 901, a CRT (Cathode / Ray / Tube) or other display device may be used. Instead of the mouse 903, a touch panel, a touch pad, a trackball, a pen tablet, or other pointing devices may be used.
  • the data linkage support apparatus 100 includes a CPU 911 (Central Processing Unit) that executes a program.
  • the CPU 911 is an example of a processing device.
  • the CPU 911 includes a ROM 913 (Read / Only / Memory), a RAM 914 (Random / Access / Memory), a communication board 915, an LCD 901, a keyboard 902, a mouse 903, an FDD 904, a CDD 905, a printer 906, and an HDD 920 (Hard / Disk) via a bus 912. Connected with Drive) to control these hardware devices.
  • an SSD Solid State Drive
  • a flash memory an optical disk device
  • a memory card reader / writer or other recording medium
  • the RAM 914 is an example of a volatile memory.
  • the ROM 913, the FDD 904, the CDD 905, and the HDD 920 are examples of nonvolatile memories. These are examples of storage devices.
  • the communication board 915, the keyboard 902, the mouse 903, the FDD 904, and the CDD 905 are examples of input devices.
  • the communication board 915, the LCD 901, and the printer 906 are examples of output devices.
  • the communication board 915 is connected to a LAN (Local / Area / Network) or the like.
  • the communication board 915 is not limited to a LAN, but includes an IP-VPN (Internet / Protocol / Virtual / Private / Network), a wide area LAN, an ATM (Asynchronous / Transfer / Mode) network, a WAN (Wide / Area / Network), or the Internet. It does not matter if it is connected to.
  • LAN, WAN, and the Internet are examples of networks.
  • the HDD 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, the operating system 921, and the window system 922.
  • the program group 923 includes programs that execute the functions described as “unit” in the description of the embodiment of the present invention.
  • the program is read and executed by the CPU 911.
  • the file group 924 includes data and information described as “ ⁇ data”, “ ⁇ information”, “ ⁇ ID (identifier)”, “ ⁇ flag”, and “ ⁇ result” in the description of the embodiment of the present invention. Signal values, variable values, and parameters are included as " ⁇ file", " ⁇ database”, and " ⁇ table” items.
  • “ ⁇ file”, “ ⁇ database”, and “ ⁇ table” are stored in a recording medium such as the RAM 914 and the HDD 920.
  • Data, information, signal values, variable values, and parameters stored in a recording medium such as the RAM 914 and the HDD 920 are read out to the main memory and the cache memory by the CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. It is used for processing (operation) of the CPU 911 such as calculation, control, output, printing, and display.
  • processing of the CPU 911 such as extraction, search, reference, comparison, calculation, calculation, control, output, printing, and display, data, information, signal values, variable values, and parameters are temporarily stored in the main memory, cache memory, and buffer memory.
  • the arrow portions in the block diagrams and flowcharts mainly indicate input / output of data and signals.
  • Data and signals are recorded in memory such as RAM 914, FDD904 flexible disk (FD), CDD905 compact disk (CD), HDD920 magnetic disk, optical disk, DVD (Digital Versatile Disc), or other recording media Is done.
  • Data and signals are transmitted by a bus 912, a signal line, a cable, or other transmission media.
  • what is described as “to part” may be “to circuit”, “to device”, and “to device”, and “to step” and “to process”.
  • Firmware and software are stored as programs in a recording medium such as a flexible disk, a compact disk, a magnetic disk, an optical disk, and a DVD.
  • the program is read by the CPU 911 and executed by the CPU 911.
  • the program causes the computer to function as “ ⁇ unit” described in the description of the embodiment of the present invention.
  • the program causes a computer to execute the procedures and methods of “unit” described in the description of the embodiment of the present invention.
  • 100 data linkage support device 101 information storage unit, 102 table selection unit, 103 column identification unit, 104 table extraction unit, 105 information storage unit, 106 information output unit, 111 linkage source information, 112 linkage destination information, 141 extraction result, 151 reference relationship information, 152 linkage relationship information, 161 recommended information, 201 table location information, 202 table definition information, 211 reference source information, 212 primary key definition information, 221 result, 231 non-foreign key definition information, 232 non-primary key definition Information, 241 result, 251 input information, 901 LCD, 902 keyboard, 903 mouse, 904 FDD, 905 CDD, 906 printer, 911 CPU, 912 bus, 913 ROM, 914 RAM, 915 communication board, 920 HDD, 921 operating system, 922 window system, 923 programs, 924 files.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 データ連携において、連携先となるテーブルと、どのテーブルとの間に参照関係があるかを、効率よく検出するために、データ連携支援装置を提供する。データ連携支援装置は、連携先となるテーブル以外のテーブルのそれぞれについて、該当するテーブルに含まれる複数のカラムから、主キーになっている第1カラムと、主キーになっていない第2カラムとを特定する。データ連携支援装置は、連携先となるテーブル以外のテーブルから、連携先となるテーブルに、第1カラムと類似する第3カラムが含まれ、かつ、連携先となるテーブルに、第2カラムと類似する第4カラムが含まれるテーブルを抽出する。データ連携支援装置は、連携先となるテーブルと、抽出したテーブルとの組み合わせをデータ連携に利用することを推奨する推奨情報を出力する。

Description

データ連携支援装置及びデータ連携支援方法
 本発明は、データ連携支援装置及びデータ連携支援方法に関するものである。
 システム間の連携、あるいは、システム同士の統合に伴って、システム別のデータベース間のデータ連携、あるいは、同じデータベース内の別々のテーブル間のデータ連携が必要となる。データ連携では、連携先となるテーブル(即ち、連携先テーブル)のカラムに格納するデータを、どのテーブル(即ち、連携元テーブル)のカラムから抽出すればよいかというデータ連携関係を定義する必要がある。
 データ連携関係を定義するためには、テーブル間のカラムの対応関係を何らかの手段で検出する必要がある。さらに、連携元テーブルから連携先テーブルのカラムの組み合わせであるテーブルレイアウトがテーブル操作によって作成できる必要がある。このようなデータ構造の変換が実施できないと、連携先テーブルにデータを格納することができない。連携先テーブルとレイアウトが一致する連携元テーブルがなく、2つ以上の連携元テーブルからデータを集めて連携先テーブルを作成する場合には、テーブル間のカラムの類似性によって対応関係を判断するだけでは不十分である。実際にそれら2つ以上の連携元テーブルに対して結合(例えば、JOIN)操作を実施できることが必要である。
 上記のように、データ連携では、連携元テーブルを結合(例えば、JOIN)して連携先テーブルを生成する必要がある。よって、データ連携関係を定義するためには、事前にテーブル間の参照関係を特定する必要がある。しかし、一般的なデータベースでは、主キー制約は付与されているものの、外部参照制約が付与されておらず、テーブル間の参照関係が明らかでないことが多い。そのため、従来は、テーブル間の参照関係を人手で抽出していた。その作業は、データベース技術と業務内容を理解した高度な技術者が労働集約的に実施する必要があった。
 テーブル間の参照関係を自動抽出する技術として、データベースのテーブルのレコード(即ち、実データ)を利用する技術が存在する(例えば、非特許文献1参照)。
 類似するカラムの対応関係を自動抽出する技術として、いわゆるスキーママッチング技術が存在する(例えば、非特許文献2参照)。
Ling Ling Yan, Renee J. Miller, Laura M. Haas, and Ronald Fagin, "Data-Driven Understanding and Refinement of Schema Mappings", SIGMOD ’01 Proceedings of the 2001 ACM SIGMOD international conference on Management of data, 2001 Ronald Fagin, Laura M. Haas, Mauricio Hernandez, Renee J. Miller, Lucian Popa, and Yannis Velegrakis, "Clio: Schema Mapping Creation and Data Exchange", Lecture Notes in Computer Science Volume 5600, 2009
 非特許文献1では、データベースのテーブルのレコードを読み込み、レコード間の関係性及びテーブル間の結合関係を推測して、テーブル間の参照関係を自動抽出する。参照関係の抽出精度を高めるためには、全てのレコードを利用することが必要である。その場合、大量のレコードに対する処理が必要となる。そのような処理を大規模なシステムに対して実行した場合、処理時間が実用的な時間に収まらない可能性が高い。必然的に処理の対象とするシステムを絞り込まざるを得ない。
 利用するレコードの数を減らすためにサンプリング技術を活用することも可能である。しかし、テーブル間の参照関係を考慮しながらサンプリングを行うことは困難である。サンプリングの結果、本来は参照関係のあるテーブルが、参照関係のないように見えてしまう可能性がある。
 以上のように、非特許文献1のようなレコードの利用が必須となる技術は、レコードの量によって適用できるシステムの範囲が制限されるという課題がある。
 非特許文献2のようなスキーママッチング技術では、テーブル定義情報のようなメタデータのみから、類似するカラムの対応関係を抽出できる。そのため、レコードを利用する技術と比較すると、扱うデータ量が少なくて済むという利点がある。大規模なシステム全体を処理の対象とすることができる。
 しかし、スキーママッチング技術は、類似するカラムを見つけ出す技術である。そのため、テーブル間の参照関係を自動抽出するために、そのまま利用することはできない。特に、データベース内に同義のカラムが多数存在する場合、スキーママッチング技術の観点からは正しい対応関係であっても、参照関係ではない対応関係が多数検出されてしまう。
 また、スキーママッチング技術では、データ連携を行うために連携元テーブルから連携先テーブルのレイアウトをテーブル操作によって作成する必要がある点について考慮されていないという課題がある。
 本発明は、例えば、データ連携において、連携先となるテーブルと、どのテーブルとの間に参照関係があるかを、効率よく検出することを目的とする。
 本発明の一の態様に係るデータ連携支援装置は、
 複数のテーブルを有するデータベースのデータ連携を支援する装置であり、
 前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれが主キーになっているかどうかを示す主キー情報と、前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれに格納されるデータの属性を示す属性情報とを記憶する情報記憶部と、
 前記複数のテーブルのうち、データ連携の連携先となる1つのテーブルを選択するテーブル選択部と、
 前記複数のテーブルのうち前記テーブル選択部により選択されたテーブル以外のテーブルのそれぞれについて、前記情報記憶部に記憶された主キー情報に基づき、該当するテーブルに含まれる複数のカラムから、主キーになっている第1カラムと、主キーになっていない第2カラムとを特定するカラム特定部と、
 前記複数のテーブルのうち前記テーブル選択部により選択されたテーブル以外のテーブルから、前記情報記憶部に記憶された属性情報に基づき、前記テーブル選択部により選択されたテーブルに、前記カラム特定部により特定された第1カラムと類似する第3カラムが含まれ、かつ、前記テーブル選択部により選択されたテーブルに、前記カラム特定部により特定された第2カラムと類似する第4カラムが含まれるテーブルを抽出するテーブル抽出部と、
 前記テーブル選択部により選択されたテーブルと前記テーブル抽出部により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する推奨情報を出力する情報出力部とを備える。
 本発明の一の態様によれば、データ連携支援装置が、データ連携において、連携先となるテーブルと、どのテーブルとの間に参照関係があるかを、効率よく検出することができる。
実施の形態1に係るデータ連携支援装置の構成を示すブロック図。 実施の形態1に係る連携元情報の例を示す表。 実施の形態1に係るデータ連携支援装置の動作の例を示すフローチャート。 実施の形態1に係る参照元情報及び主キー定義情報の例を示す表。 実施の形態1に係るスキーママッチングの結果の例を示す表。 実施の形態1に係る参照関係情報の例を示す表。 実施の形態1に係るデータ連携支援装置の動作の例を示すフローチャート。 実施の形態1に係る非外部キー定義情報及び非主キー定義情報の例を示す表。 実施の形態1に係るスキーママッチングの結果の例を示す表。 実施の形態1に係る連携関係情報の例を示す表。 実施の形態1に係るデータ連携支援装置の動作の例を示すフローチャート。 実施の形態1に係る抽出結果の例を示す表。 実施の形態1に係るデータ連携支援装置の動作の例を示すフローチャート。 実施の形態1に係る入力情報及び推奨情報の例を示す表。 実施の形態1に係るデータ連携支援装置のハードウェア構成の例を示す図。
 以下、本発明の実施の形態について、図を用いて説明する。
 実施の形態1.
 図1は、本実施の形態に係るデータ連携支援装置100の構成を示すブロック図である。
 図1において、データ連携支援装置100は、複数のテーブルを有するデータベースのデータ連携を支援する装置である。データ連携支援装置100により支援されるデータ連携は、データベースの異なるインスタンス間のデータ連携であってもよいし、同じインスタンスの異なるスキーマ間のデータ連携であってもよいし、同じスキーマの異なるテーブル間のデータ連携であってもよい。
 データ連携支援装置100は、情報記憶部101、テーブル選択部102、カラム特定部103、テーブル抽出部104、情報蓄積部105、情報出力部106を備える。
 図1には示していないが、データ連携支援装置100は、処理装置、記憶装置、入力装置、出力装置等のハードウェアを備える。ハードウェアはデータ連携支援装置100の各部によって利用される。例えば、処理装置は、データ連携支援装置100の各部でデータ又は情報の演算、加工、読み取り、書き込み等を行うために利用される。記憶装置は、そのデータ又は情報を記憶するために利用される。入力装置は、そのデータ又は情報を入力するために利用される。出力装置は、そのデータ又は情報を出力するために利用される。
 情報記憶部101は、連携元情報111、連携先情報112を、記憶装置を利用して記憶する。
 連携元情報111は、データ連携の連携元となるデータベース(即ち、連携元データベース)の複数のテーブル(即ち、連携元テーブル)を定義する情報である。連携元情報111には、連携元データベースの主キー情報及び属性情報が含まれる。連携元データベースの主キー情報とは、複数の連携元テーブルのそれぞれに含まれる複数のカラムのそれぞれが主キーになっているかどうかを示す情報である。連携元データベースの属性情報とは、複数の連携元テーブルのそれぞれに含まれる複数のカラムのそれぞれに格納されるデータの属性(例えば、カラム名、データ型)を示す情報である。
 連携先情報112は、データ連携の連携先となるデータベース(即ち、連携先データベース)の複数のテーブル(即ち、連携先テーブル)を定義する情報である。連携先情報112には、連携先データベースの主キー情報及び属性情報が含まれる。連携先データベースの主キー情報とは、複数の連携先テーブルのそれぞれに含まれる複数のカラムのそれぞれが主キーになっているかどうかを示す情報である。連携先データベースの属性情報とは、複数の連携先テーブルのそれぞれに含まれる複数のカラムのそれぞれに格納されるデータの属性(例えば、カラム名、データ型)を示す情報である。
 連携元情報111及び連携先情報112は、入力装置を介して入力され、情報記憶部101に記憶される。
 テーブル選択部102は、複数の連携先テーブルのうち、1つの連携先テーブルを選択する。
 例えば、テーブル選択部102は、情報記憶部101に記憶された連携先情報112を読み取る。テーブル選択部102は、読み取った連携先情報112により定義された連携先テーブルから、1つの連携先テーブルを選択する。
 カラム特定部103は、連携元データベース及び連携先データベースの複数のテーブルのうちテーブル選択部102により選択された連携先テーブル以外のテーブルのそれぞれについて、前述した主キー情報に基づき、該当するテーブルに含まれる複数のカラムから、主キーになっている第1カラムと、主キーになっていない第2カラムとを特定する。
 例えば、カラム特定部103は、情報記憶部101に記憶された連携元情報111及び連携先情報112を読み取る。カラム特定部103は、読み取った連携元情報111により定義された連携元テーブルのそれぞれについて、読み取った連携元情報111に含まれる主キー情報に基づき、第1カラムと第2カラムとを特定する。また、カラム特定部103は、読み取った連携先情報112により定義された連携先テーブルのうちテーブル選択部102により選択された連携先テーブル以外の連携先テーブルのそれぞれについて、読み取った連携先情報112に含まれる主キー情報に基づき、第1カラムと第2カラムとを特定する。
 テーブル抽出部104は、連携元データベース及び連携先データベースの複数のテーブルのうちテーブル選択部102により選択された連携先テーブル以外のテーブルのそれぞれについて、前述した属性情報に基づき、以下の(1)及び(2)の条件を満たすテーブルを抽出し、抽出結果141を出力する。
(1)テーブル選択部102により選択された連携先テーブルに、カラム特定部103により特定された第1カラムと類似する第3カラムが含まれる。
(2)テーブル選択部102により選択された連携先テーブルに、カラム特定部103により特定された第2カラムと類似する第4カラムが含まれる。
 本実施の形態において、テーブル抽出部104は、カラム特定部103により2つ以上の第1カラムが特定されたテーブルについては、テーブル選択部102により選択された連携先テーブルに、全ての第1カラムに対して個別に第3カラムが存在するテーブルを抽出する。例えば、ある連携元テーブルに2個の第1カラムが存在していたとする。テーブル選択部102により選択された連携先テーブルに、当該2個の第1カラムの一方と類似する第3カラムと、当該2個の第1カラムの他方と類似する別の第3カラムとが存在していれば、その連携元テーブルは上記(1)の条件を満たしていることになる。なお、連携元テーブルだけでなく、テーブル選択部102により選択された連携先テーブルとは別の連携先テーブルが上記(1)の条件を満たすこともあり得る。
 本実施の形態において、テーブル抽出部104は、カラム特定部103により2つ以上の第2カラムが特定されたテーブルについては、テーブル選択部102により選択された連携先テーブルに、最も多くの第2カラムに対して個別に第4カラムが存在するテーブルのみを抽出結果141に含める。例えば、ある連携元テーブルに5個の第2カラムが存在していたとする。テーブル選択部102により選択された連携先テーブルに、当該5個の第2カラムのうち1個と類似する第4カラムと、当該5個の第2カラムの他方と類似する別の第4カラムとが存在していたとする。他の連携元テーブルについて、2個より多くの第4カラムが存在せず、また、テーブル選択部102により選択された連携先テーブルとは別の連携先テーブルについても、2個より多くの第4カラムが存在しなければ、その連携元テーブルは上記(2)の条件を満たしていることになる。なお、連携元テーブルだけでなく、テーブル選択部102により選択された連携先テーブルとは別の連携先テーブルが上記(2)の条件を満たすこともあり得る。
 本実施の形態において、テーブル抽出部104は、テーブル選択部102により選択された連携先テーブルと同じスキーマに属するテーブルと、テーブル選択部102により選択された連携先テーブルと同じインスタンスの異なるスキーマに属するテーブルと、テーブル選択部102により選択された連携先テーブルと異なるインスタンスのスキーマに属するテーブルとの3種類のテーブルを抽出結果141に含めることができる。
 情報蓄積部105は、参照関係情報151、連携関係情報152を、記憶装置を利用して記憶する。
 参照関係情報151は、テーブル選択部102により選択された連携先テーブルとテーブル抽出部104により抽出されたテーブルとの間で、参照関係をもたらすカラムの組を示す情報である。即ち、参照関係情報151は、第1カラムと第3カラムとの組を示す情報である。
 連携関係情報152は、テーブル選択部102により選択された連携先テーブルとテーブル抽出部104により抽出されたテーブルとの間で、参照関係をもたらすカラム以外に、対応するカラムの組を示す情報である。即ち、参照関係情報151は、第2カラムと第4カラムとの組を示す情報である。
 参照関係情報151及び連携関係情報152は、テーブル抽出部104により作成されて情報蓄積部105に記憶される。参照関係情報151及び連携関係情報152は、テーブル抽出部104により最終的な抽出結果141として出力されてもよいし、一時的に情報蓄積部105に保存されて最終的な抽出結果141を決定するために利用されてもよい。
 情報出力部106は、テーブル抽出部104から出力された抽出結果141に基づき、テーブル選択部102により選択された連携先テーブルとテーブル抽出部104により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する推奨情報161を生成する。情報出力部106は、生成した推奨情報161を、出力装置を介して出力する。
 情報出力部106は、テーブル抽出部104から出力された抽出結果141に、前述した3種類のテーブルのうち少なくとも2種類のテーブルが含まれている場合、テーブルの種類ごとに、テーブル選択部102により選択された連携先テーブルとテーブル抽出部104により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する情報を推奨情報161として出力する。
 出力装置は、推奨情報161を画面に表示する表示装置であってもよいし、推奨情報161を利用して何らかの処理を実行するコンピュータであってもよい。
 以下では、データ連携支援装置100の動作(即ち、本実施の形態に係るデータ連携支援方法)の例を説明する。
 図2は、連携元情報111の例を示す表である。
 図2において、連携元情報111は、前述したように、連携元テーブルを定義する情報である。連携元情報111は、DDL(Data・Definition・Language)又はXML(eXtensible・Markup・Language)で記述されたファイルとして予め情報記憶部101に記憶される。あるいは、連携元情報111は、SQL文の発行等によって連携元データベースから取得されて情報記憶部101に記憶される。連携元情報111には、テーブル所在情報201、テーブル定義情報202が含まれる。
 テーブル所在情報201には、インスタンス名、スキーマ名、テーブル名の情報が含まれる。例えば、テーブル所在情報201では、「発注システム」というインスタンスの「SVR001」というスキーマに「店舗」テーブルがあることが定義されている。
 テーブル定義情報202は、テーブル所在情報201で定義されている連携元テーブルごとに記憶される。テーブル定義情報202には、カラム名、データ型、主キーの情報(即ち、属性情報及び主キー情報)が含まれる。例えば、「発注システム」の「SVR001」にある「店舗」テーブルのテーブル定義情報202では、その「店舗」テーブルが「店舗ID」、「店舗名」、「住所」、「店長社員ID」というカラムを含み、「店舗ID」が単独で主キーになっていることが定義されている。
 図示していないが、連携先情報112も、図2に示した連携元情報111と同様の形式の情報である。
 図3は、データ連携支援装置100の動作の例を示すフローチャートである。図4は、後述する参照元情報211及び主キー定義情報212の例を示す表である。図5は、スキーママッチングの結果221の例を示す表である。図6は、参照関係情報151の例を示す表である。
 ステップS11において、テーブル選択部102は、情報記憶部101から連携先情報112を読み取る。テーブル選択部102は、連携先情報112により定義された連携先テーブルの一覧を、出力装置を介して画面に表示する。テーブル選択部102は、この一覧を見たユーザの操作を、入力装置を介して受け付ける。テーブル選択部102は、ユーザの操作に従って、1つの連携先テーブルを選択する。テーブル選択部102は、テーブル定義情報202と同様の形式で、選択した連携先テーブルを定義する参照元情報211を生成する。
 例えば、テーブル選択部102は、「発注システム」の「SVR001」にある「注文明細テーブル」について、図4に示すような参照元情報211を生成する。この参照元情報211では、「発注システム」の「SVR001」にある「注文明細テーブル」が「注文詳細ID」、「注文ID」、「店舗ID」、「注文数」、「店舗名」というカラムを含み、「注文詳細ID」及び「注文ID」が主キーになっていることが定義されている。
 テーブル選択部102は、参照元情報211をテーブル抽出部104に引き渡す。
 ステップS12において、カラム特定部103は、情報記憶部101から連携元情報111を読み取る。カラム特定部103は、連携元情報111に含まれるテーブル所在情報201で定義されている連携元テーブルごとに、連携元情報111に含まれるテーブル定義情報202を参照する。カラム特定部103は、各連携元テーブルのテーブル定義情報202から、各連携元テーブルの主キーになっているカラム(即ち、第1カラム)を特定する。カラム特定部103は、テーブル定義情報202を、特定したカラムのみに絞り込んだ主キー定義情報212を生成する。
 例えば、カラム特定部103は、「発注システム」の「SVR001」にある「店舗」テーブルについて、図4に示すような主キー定義情報212を生成する。この主キー定義情報212では、「発注システム」の「SVR001」にある「店舗」テーブルが主キーとして「店舗ID」というカラムを含むことが定義されている。
 カラム特定部103は、各連携元テーブルについて、主キー定義情報212をテーブル抽出部104に引き渡す。
 カラム特定部103は、連携先情報112についても同様の処理を行って、連携先テーブルごとに主キー定義情報212を生成する。ただし、カラム特定部103は、ステップS11で選択された連携先テーブルについては、主キー定義情報212を生成しない。
 カラム特定部103は、各連携先テーブルについて、主キー定義情報212をテーブル抽出部104に引き渡す。
 ステップS13において、テーブル抽出部104は、各連携元テーブルについて、テーブル選択部102から引き渡された参照元情報211と、カラム特定部103から引き渡された主キー定義情報212との組を設定する。テーブル抽出部104は、各連携先テーブルについても、テーブル選択部102から引き渡された参照元情報211と、カラム特定部103から引き渡された主キー定義情報212との組を設定する。
 ステップS14において、テーブル抽出部104は、ステップS13で設定した組のうち、ステップS14~S17の処理を未だ実行していない組を選択する。テーブル抽出部104は、選択した組の参照元情報211と主キー定義情報212とのスキーママッチングを実行する。例えば、テーブル抽出部104は、図5に示すようなスキーママッチングの結果221を得る。図5では、スキーママッチングの結果221が、主キー定義情報212のカラムと参照元情報211のカラムとの類似度を0~1.0の間で示した表の形式になっている。図5の例において、主キー定義情報212の「店舗ID」カラムと参照元情報211の「注文数」カラムとの類似度は0である。一方、主キー定義情報212の「店舗ID」カラムと参照元情報211の「店舗ID」カラムとの類似度は1.0である。
 ステップS15において、テーブル抽出部104は、ステップS14で得たスキーママッチングの結果221から、類似度が予め定められた閾値より高いカラムの組(即ち、第1カラムと第3カラムとの組)を抽出する。主キー定義情報212に複数のカラムがある場合、テーブル抽出部104は、主キー定義情報212のカラムの全てについて、参照元情報211のカラムに重複がないように、カラムの組を抽出しなければならない。主キー定義情報212の同じカラムに対して、類似度が閾値より高いカラムの組が2つ以上ある場合、テーブル抽出部104は、類似度が最も高いカラムの組を選択する。類似度が閾値より高いカラムの組が1つもない場合、テーブル抽出部104は、カラムの組を抽出しないでステップS18に進む。図5の例において、閾値を0.8とすると、テーブル抽出部104は、主キー定義情報212の「店舗ID」カラムと参照元情報211の「店舗ID」カラムとの組を抽出することになる。
 ステップS15で抽出されたカラムの組がある場合、ステップS16において、テーブル抽出部104は、抽出したカラムの組を示す参照関係情報151を生成する。テーブル抽出部104は、参照関係情報151を情報蓄積部105に保存する。
 例えば、テーブル抽出部104は、図6に示すような参照関係情報151を生成する。この参照関係情報151には、参照先インスタンス名、参照先スキーマ名、参照先テーブル名、参照先カラム名、参照元インスタンス名、参照元スキーマ名、参照元テーブル名、参照元カラム名の情報が含まれる。この参照関係情報151では、「発注システム」の「SVR001」にある「店舗」テーブルと「発注システム」の「SVR001」にある「注文明細」テーブルとの間に参照関係があることが定義されている。また、「店舗」テーブルの「店舗ID」カラムが参照先であり、「注文明細」テーブルの「店舗ID」カラムが参照元(即ち、外部キー)であることが定義されている。
 ステップS17において、データ連携支援装置100は、図7に示す動作を行う。
 ステップS18において、テーブル抽出部104は、ステップS13で設定した組のうち、ステップS14~S17の処理を未だ実行していない組があるかどうかを判定する。そのような組がある場合、テーブル抽出部104は、ステップS14に戻る。そのような組がない場合、テーブル抽出部104は、処理を終了する。
 図7は、ステップS17におけるデータ連携支援装置100の動作の例を示すフローチャートである。図8は、後述する非外部キー定義情報231及び非主キー定義情報232の例を示す表である。図9は、スキーママッチングの結果241の例を示す表である。図10は、連携関係情報152の例を示す表である。
 ステップS21において、テーブル選択部102は、情報蓄積部105から参照関係情報151を読み取る。テーブル選択部102は、ステップS11で生成した参照元情報211を、参照関係情報151で定義されている参照元カラム以外のカラムのみに絞り込んだ非外部キー定義情報231を生成する。
 例えば、テーブル選択部102は、「発注システム」の「SVR001」にある「注文明細テーブル」について、図8に示すような非外部キー定義情報231を生成する。この非外部キー定義情報231では、「発注システム」の「SVR001」にある「注文明細テーブル」が非外部キーとして「注文詳細ID」、「注文ID」、「注文数」、「店舗名」というカラムを含み、「注文詳細ID」及び「注文ID」が主キーになっていることが定義されている。
 テーブル選択部102は、非外部キー定義情報231をテーブル抽出部104に引き渡す。
 ステップS22において、カラム特定部103は、情報蓄積部105から参照関係情報151を読み取る。カラム特定部103は、参照関係情報151で定義されている参照先テーブルについて、ステップS12で読み取った連携元情報111又は連携先情報112に含まれるテーブル定義情報202を参照する。カラム特定部103は、参照先テーブルのテーブル定義情報202から、参照先テーブルの主キーになっていないカラム(即ち、第2カラム)を特定する。カラム特定部103は、テーブル定義情報202を、特定したカラムのみに絞り込んだ非主キー定義情報232を生成する。
 例えば、カラム特定部103は、「発注システム」の「SVR001」にある「店舗」テーブルについて、図8に示すような非主キー定義情報232を生成する。この非主キー定義情報232では、「発注システム」の「SVR001」にある「店舗」テーブルが非主キーとして「店舗名」、「住所」、「店長社員ID」というカラムを含むことが定義されている。
 カラム特定部103は、非主キー定義情報232をテーブル抽出部104に引き渡す。
 ステップS23において、テーブル抽出部104は、テーブル選択部102から引き渡された非外部キー定義情報231と、カラム特定部103から引き渡された非主キー定義情報232との組を設定する。
 ステップS24において、テーブル抽出部104は、ステップS23で設定した組の非外部キー定義情報231と非主キー定義情報232とのスキーママッチングを実行する。例えば、テーブル抽出部104は、図9に示すようなスキーママッチングの結果241を得る。図9では、スキーママッチングの結果241が、図5の例と同様に、非主キー定義情報232のカラムと非外部キー定義情報231のカラムとの類似度を0~1.0の間で示した表の形式になっている。図9の例において、非主キー定義情報232の「店舗名」カラムと非外部キー定義情報231の「注文詳細ID」カラムとの類似度は0である。一方、非主キー定義情報232の「店舗名」カラムと非外部キー定義情報231の「店舗名」カラムとの類似度は1.0である。
 ステップS25において、テーブル抽出部104は、ステップS24で得たスキーママッチングの結果241から、類似度が予め定められた閾値より高いカラムの組(即ち、第2カラムと第4カラムとの組)を抽出する。非主キー定義情報232に複数のカラムがある場合、テーブル抽出部104は、非外部キー定義情報231のカラムに重複がないように、カラムの組を抽出しなければならない。非主キー定義情報232の同じカラムに対して、類似度が閾値より高いカラムの組が2つ以上ある場合、テーブル抽出部104は、類似度が最も高いカラムの組を選択する。類似度が閾値より高いカラムの組が1つもない場合、テーブル抽出部104は、カラムの組を抽出しないで処理を終了する。図9の例において、閾値を0.8とすると、テーブル抽出部104は、非主キー定義情報232の「店舗名」カラムと非外部キー定義情報231の「店舗名」カラムとの組を抽出することになる。テーブル抽出部104は、非主キー定義情報232の「住所」カラム及び「店長社員ID」カラムについては、カラムの組を抽出しない。
 ステップS25で抽出されたカラムの組がある場合、ステップS26において、テーブル抽出部104は、抽出したカラムの組を示す連携関係情報152を生成する。テーブル抽出部104は、連携関係情報152を情報蓄積部105に保存する。
 例えば、テーブル抽出部104は、図10に示すような連携関係情報152を生成する。この連携関係情報152には、連携元カラム名、連携先カラム名の情報が含まれる。連携関係情報152は、図6に示した参照関係情報151と合成される。即ち、参照関係情報151及び連携関係情報152が合成された情報には、参照先インスタンス名、参照先スキーマ名、参照先テーブル名、参照先カラム名、連携元カラム名、参照元インスタンス名、参照元スキーマ名、参照元テーブル名、参照元カラム名、連携先カラム名の情報が含まれる。この合成された情報では、「発注システム」の「SVR001」にある「店舗」テーブルの「店舗名」カラムが連携元であり、「発注システム」の「SVR001」にある「注文明細」テーブルの「店舗名」カラムが連携先であることが定義されている。連携元と連携先との組が2つ以上ある場合、連携元カラム名、連携先カラム名が同じ順番で記憶される。例えば、「店舗」テーブルの「店舗名」カラムと「注文明細」テーブルの「店舗名」カラムとが組であり、「店舗」テーブルの「住所」カラムと「注文明細」テーブルの「住所」カラムとが組であるとする。連携元カラム名が「店舗名」、「住所」の順番で記憶されていれば、連携先カラム名も「店舗名」、「住所」の順番で記憶される。
 図11は、図3の動作の後におけるデータ連携支援装置100の動作の例を示すフローチャートである。図12は、抽出結果141の例を示す表である。
 ステップS31において、テーブル抽出部104は、情報蓄積部105から参照関係情報151及び連携関係情報152を読み取る。テーブル抽出部104は、参照関係情報151及び連携関係情報152により示された参照先カラムと参照元カラムとの組(即ち、第1カラムと第3カラムとの組)を、参照先テーブルと参照元テーブルとがどのスキーマに属するかによってグループ分けする。具体的には、テーブル抽出部104は、参照先カラムと参照元カラムとの組を、参照先テーブルと参照元テーブルとが同じスキーマに属するグループと、参照先テーブルと参照元テーブルとが同じインスタンスの異なるスキーマに属するグループと、参照先テーブルと参照元テーブルとが異なるインスタンスのスキーマに属するグループとの3つのグループに分類する。
 ステップS32において、テーブル抽出部104は、前述した3つのグループのうち、ステップS32及びS33の処理を未だ実行していないグループを選択する。テーブル抽出部104は、ステップS31で、選択したグループに分類した組のうち、対応する連携元カラムと連携先カラムとの組の個数が最も多いものを抽出する。
 ステップS33において、テーブル抽出部104は、参照関係情報151及び連携関係情報152を合成した情報と同様の形式で、ステップS32で抽出した参照先カラムと参照元カラムとの組を示す抽出結果141を出力する。
 例えば、テーブル抽出部104は、図12に示すような抽出結果141を出力する。この抽出結果141では、「発注システム」の「SVR001」にある「店舗」テーブルと「発注システム」の「SVR001」にある「注文明細」テーブルとの間に参照関係があることが示されている。また、「店舗」テーブルの「店舗ID」カラムが参照先、「店舗名」が連携元であり、「注文明細」テーブルの「店舗ID」カラムが参照元(即ち、外部キー)、「店舗名」が連携先であることが示されている。
 ステップS34において、テーブル抽出部104は、前述した3つのグループのうち、ステップS32及びS33の処理を未だ実行していないグループがあるかどうかを判定する。そのようなグループがある場合、テーブル抽出部104は、ステップS32に戻る。そのようなグループがない場合、テーブル抽出部104は、処理を終了する。
 図13は、図11の動作の後におけるデータ連携支援装置100の動作の例を示すフローチャートである。図14は、後述する入力情報251及び推奨情報161の例を示す表である。
 ステップS41において、情報出力部106は、参照先を検索するためにユーザから入力される入力情報251を、入力装置を介して取得する。
 例えば、情報出力部106は、図14に示すような入力情報251を取得する。この入力情報251では、「発注システム」の「SVR001」にある「注文明細」テーブルの「店舗ID」カラムに対して、ユーザが参照先を検索したいことが示されている。カラム名が省略されている場合、情報出力部106は、「注文明細」テーブルの全てのカラムに対して、ユーザが参照先を検索したいことが示されていると解釈してもよい。
 ステップS42において、情報出力部106は、ステップS33でテーブル抽出部104から出力された抽出結果141を参照する。情報出力部106は、抽出結果141から、ステップS41で取得した入力情報251に一致する情報を抽出する。具体的には、情報出力部106は、抽出結果141で示されている参照元インスタンス、参照元スキーマ、参照元テーブル、参照元カラムの組み合わせのうち、入力情報251で示されているインスタンス、スキーマ、テーブル、カラムの組み合わせに一致するものを抽出する。
 ステップS43において、情報出力部106は、ステップS42で抽出した情報があるかどうかを判定する。抽出した情報がある場合、情報出力部106は、ステップS44に進む。抽出した情報がない場合、情報出力部106は、ステップS45に進む。
 ステップS44において、情報出力部106は、ステップS42で抽出した情報に基づき、前述した3つのグループのそれぞれについて、入力情報251に対応する参照先を推奨する推奨情報161を生成する。情報出力部106は、推奨情報161を、出力装置を介して出力し、処理を終了する。
 例えば、情報出力部106は、図14に示すような推奨情報161を画面に表示する。この推奨情報161では、参照先テーブルと参照元テーブルとが同じスキーマに属するグループ(即ち、「同一スキーマ」)について、「発注システム」の「SVR001」にある「店舗」テーブルの「店舗ID」カラムを参照先として推奨することが示されている。また、入力情報251で示されている「注文明細」テーブルの「店舗名」カラムに格納するデータを、「発注システム」の「SVR001」にある「店舗」テーブルの「店舗名」カラムから抽出すればよいことが示されている。
 ステップS45において、情報出力部106は、入力情報251に対応する参照先がないことを通知する情報を、出力装置を介して出力し、処理を終了する。
 本実施の形態では、以上説明した動作により、データベースの定義情報のみから、テーブル間の参照関係及び外部キーとなるカラムを特定することができる。さらに、参照関係のあるテーブル間で共通するカラムを特定し、データ連携に利用するのに最適なテーブル(即ち、データ連携に利用できるカラムの数が最も多いテーブル)を抽出することができる。つまり、本実施の形態によれば、データ連携において、連携先となるテーブルと、どのテーブルとの間に参照関係があるかを、効率よく検出することができる。さらに、連携先となるテーブルのカラムに格納するデータを、どのテーブルのカラムから抽出すればよいかを、効率よく検出することができる。
 前述したように、本実施の形態では、テーブル抽出部104が、カラム特定部103により2つ以上の第2カラムが特定されたテーブルについては、テーブル選択部102により選択された連携先テーブルに、最も多くの第2カラムに対して個別に第4カラムが存在するテーブルのみを抽出結果141に含める。本実施の形態の変形例において、テーブル抽出部104は、カラム特定部103により2つ以上の第2カラムが特定されたテーブルについて、テーブル選択部102により選択された連携先テーブルに、2番目に多くの第2カラムに対して個別に第4カラムが存在するテーブルも抽出結果141に含めることができる。あるいは、「2番目」だけでなく、「上位n番目」まで含めることができる。「n」には、2より大きい任意の数を設定可能である。
 図15は、実施の形態1に係るデータ連携支援装置100のハードウェア構成の例を示す図である。
 図15において、データ連携支援装置100は、コンピュータであり、LCD901(Liquid・Crystal・Display)、キーボード902(K/B)、マウス903、FDD904(Flexible・Disk・Drive)、CDD905(Compact・Disc・Drive)、プリンタ906といったハードウェアデバイスを備えている。これらのハードウェアデバイスはケーブルや信号線で接続されている。LCD901の代わりに、CRT(Cathode・Ray・Tube)、あるいは、その他の表示装置が用いられてもよい。マウス903の代わりに、タッチパネル、タッチパッド、トラックボール、ペンタブレット、あるいは、その他のポインティングデバイスが用いられてもよい。
 データ連携支援装置100は、プログラムを実行するCPU911(Central・Processing・Unit)を備えている。CPU911は、処理装置の例である。CPU911は、バス912を介してROM913(Read・Only・Memory)、RAM914(Random・Access・Memory)、通信ボード915、LCD901、キーボード902、マウス903、FDD904、CDD905、プリンタ906、HDD920(Hard・Disk・Drive)と接続され、これらのハードウェアデバイスを制御する。HDD920の代わりに、SSD(Solid・State・Drive)、フラッシュメモリ、光ディスク装置、メモリカードリーダライタ、あるいは、その他の記録媒体が用いられてもよい。
 RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、HDD920は、不揮発性メモリの一例である。これらは、記憶装置の例である。通信ボード915、キーボード902、マウス903、FDD904、CDD905は、入力装置の一例である。また、通信ボード915、LCD901、プリンタ906は、出力装置の一例である。
 通信ボード915は、LAN(Local・Area・Network)等に接続されている。通信ボード915は、LANに限らず、IP-VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークといったWAN(Wide・Area・Network)、あるいは、インターネットに接続されていても構わない。LAN、WAN、インターネットは、ネットワークの例である。
 HDD920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。プログラム群923には、本発明の実施の形態の説明において「~部」として説明する機能を実行するプログラムが含まれている。プログラムは、CPU911により読み出され実行される。ファイル群924には、本発明の実施の形態の説明において、「~データ」、「~情報」、「~ID(識別子)」、「~フラグ」、「~結果」として説明するデータや情報や信号値や変数値やパラメータが、「~ファイル」や「~データベース」や「~テーブル」の各項目として含まれている。「~ファイル」や「~データベース」や「~テーブル」は、RAM914やHDD920等の記録媒体に記憶される。RAM914やHDD920等の記録媒体に記憶されたデータや情報や信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出、検索、参照、比較、演算、計算、制御、出力、印刷、表示といったCPU911の処理(動作)に用いられる。抽出、検索、参照、比較、演算、計算、制御、出力、印刷、表示といったCPU911の処理中、データや情報や信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
 本発明の実施の形態の説明において用いるブロック図やフローチャートの矢印の部分は主としてデータや信号の入出力を示す。データや信号は、RAM914等のメモリ、FDD904のフレキシブルディスク(FD)、CDD905のコンパクトディスク(CD)、HDD920の磁気ディスク、光ディスク、DVD(Digital・Versatile・Disc)、あるいは、その他の記録媒体に記録される。また、データや信号は、バス912、信号線、ケーブル、あるいは、その他の伝送媒体により伝送される。
 本発明の実施の形態の説明において「~部」として説明するものは、「~回路」、「~装置」、「~機器」であってもよく、また、「~ステップ」、「~工程」、「~手順」、「~処理」であってもよい。即ち、「~部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。あるいは、「~部」として説明するものは、ソフトウェアのみ、あるいは、素子、デバイス、基板、配線といったハードウェアのみで実現されていても構わない。あるいは、「~部」として説明するものは、ソフトウェアとハードウェアとの組み合わせ、あるいは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実現されていても構わない。ファームウェアとソフトウェアは、プログラムとして、フレキシブルディスク、コンパクトディスク、磁気ディスク、光ディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。即ち、プログラムは、本発明の実施の形態の説明で述べる「~部」としてコンピュータを機能させるものである。あるいは、プログラムは、本発明の実施の形態の説明で述べる「~部」の手順や方法をコンピュータに実行させるものである。
 以上、本発明の実施の形態について説明したが、本発明は、この実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
 100 データ連携支援装置、101 情報記憶部、102 テーブル選択部、103 カラム特定部、104 テーブル抽出部、105 情報蓄積部、106 情報出力部、111 連携元情報、112 連携先情報、141 抽出結果、151 参照関係情報、152 連携関係情報、161 推奨情報、201 テーブル所在情報、202 テーブル定義情報、211 参照元情報、212 主キー定義情報、221 結果、231 非外部キー定義情報、232 非主キー定義情報、241 結果、251 入力情報、901 LCD、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、920 HDD、921 オペレーティングシステム、922 ウィンドウシステム、923 プログラム群、924 ファイル群。

Claims (5)

  1.  複数のテーブルを有するデータベースのデータ連携を支援するデータ連携支援装置において、
     前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれが主キーになっているかどうかを示す主キー情報と、前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれに格納されるデータの属性を示す属性情報とを記憶する情報記憶部と、
     前記複数のテーブルのうち、データ連携の連携先となる1つのテーブルを選択するテーブル選択部と、
     前記複数のテーブルのうち前記テーブル選択部により選択されたテーブル以外のテーブルのそれぞれについて、前記情報記憶部に記憶された主キー情報に基づき、該当するテーブルに含まれる複数のカラムから、主キーになっている第1カラムと、主キーになっていない第2カラムとを特定するカラム特定部と、
     前記複数のテーブルのうち前記テーブル選択部により選択されたテーブル以外のテーブルから、前記情報記憶部に記憶された属性情報に基づき、前記テーブル選択部により選択されたテーブルに、前記カラム特定部により特定された第1カラムと類似する第3カラムが含まれ、かつ、前記テーブル選択部により選択されたテーブルに、前記カラム特定部により特定された第2カラムと類似する第4カラムが含まれるテーブルを抽出するテーブル抽出部と、
     前記テーブル選択部により選択されたテーブルと前記テーブル抽出部により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する推奨情報を出力する情報出力部と
    を備えることを特徴とするデータ連携支援装置。
  2.  前記テーブル抽出部は、前記カラム特定部により2つ以上の第1カラムが特定されたテーブルについては、前記テーブル選択部により選択されたテーブルに、全ての第1カラムに対して個別に前記第3カラムが存在するテーブルを抽出することを特徴とする請求項1のデータ連携支援装置。
  3.  前記テーブル抽出部は、前記カラム特定部により2つ以上の第2カラムが特定されたテーブルについては、前記テーブル選択部により選択されたテーブルに、最も多くの第2カラムに対して個別に前記第4カラムが存在するテーブルを抽出することを特徴とする請求項1のデータ連携支援装置。
  4.  前記テーブル抽出部は、前記テーブル選択部により選択されたテーブルと同じスキーマに属するテーブルと、前記テーブル選択部により選択されたテーブルと同じインスタンスの異なるスキーマに属するテーブルと、前記テーブル選択部により選択されたテーブルと異なるインスタンスのスキーマに属するテーブルとの3種類のテーブルのうち少なくとも2種類のテーブルを抽出し、
     前記情報出力部は、前記テーブル抽出部により抽出されたテーブルの種類ごとに、前記テーブル選択部により選択されたテーブルと前記テーブル抽出部により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する情報を前記推奨情報として出力することを特徴とする請求項1のデータ連携支援装置。
  5.  複数のテーブルを有するデータベースのデータ連携を支援するデータ連携支援方法において、
     前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれが主キーになっているかどうかを示す主キー情報と、前記複数のテーブルのそれぞれに含まれる複数のカラムのそれぞれに格納されるデータの属性を示す属性情報とを記憶する情報記憶部を備えるコンピュータを用いて、
     前記複数のテーブルのうち、データ連携の連携先となる1つのテーブルを選択し、
     前記複数のテーブルのうち前記選択により選択されたテーブル以外のテーブルのそれぞれについて、前記情報記憶部に記憶された主キー情報に基づき、該当するテーブルに含まれる複数のカラムから、主キーになっている第1カラムと、主キーになっていない第2カラムとを特定し、
     前記複数のテーブルのうち前記選択により選択されたテーブル以外のテーブルから、前記情報記憶部に記憶された属性情報に基づき、前記選択により選択されたテーブルに、前記特定により特定された第1カラムと類似する第3カラムが含まれ、かつ、前記選択により選択されたテーブルに、前記特定により特定された第2カラムと類似する第4カラムが含まれるテーブルを抽出し、
     前記選択により選択されたテーブルと前記抽出により抽出されたテーブルとの組み合わせをデータ連携に利用することを推奨する推奨情報を出力することを特徴とするデータ連携支援方法。
PCT/JP2013/065026 2013-05-30 2013-05-30 データ連携支援装置及びデータ連携支援方法 WO2014192116A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
PCT/JP2013/065026 WO2014192116A1 (ja) 2013-05-30 2013-05-30 データ連携支援装置及びデータ連携支援方法
US14/783,384 US20160042022A1 (en) 2013-05-30 2013-05-30 Data coordination support apparatus and data coordination support method
GB1518688.5A GB2529095A (en) 2013-05-30 2013-05-30 Data link assistance device and data link assistance method
CN201380076749.8A CN105229618A (zh) 2013-05-30 2013-05-30 数据协调支援装置和数据协调支援方法
SG11201508822WA SG11201508822WA (en) 2013-05-30 2013-05-30 Data coordination support apparatus and data coordination support method
JP2015519559A JP5972461B2 (ja) 2013-05-30 2013-05-30 データ連携支援装置及びデータ連携支援方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/065026 WO2014192116A1 (ja) 2013-05-30 2013-05-30 データ連携支援装置及びデータ連携支援方法

Publications (1)

Publication Number Publication Date
WO2014192116A1 true WO2014192116A1 (ja) 2014-12-04

Family

ID=51988188

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/065026 WO2014192116A1 (ja) 2013-05-30 2013-05-30 データ連携支援装置及びデータ連携支援方法

Country Status (6)

Country Link
US (1) US20160042022A1 (ja)
JP (1) JP5972461B2 (ja)
CN (1) CN105229618A (ja)
GB (1) GB2529095A (ja)
SG (1) SG11201508822WA (ja)
WO (1) WO2014192116A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016136354A (ja) * 2015-01-23 2016-07-28 三菱電機株式会社 データ連携推定装置、データ連携推定方法及びプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10650050B2 (en) * 2016-12-06 2020-05-12 Microsoft Technology Licensing, Llc Synthesizing mapping relationships using table corpus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188343A (ja) * 2006-01-13 2007-07-26 Mitsubishi Electric Corp スキーマ統合支援装置、スキーマ統合支援方法およびスキーマ統合支援プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721727B2 (en) * 1999-12-02 2004-04-13 International Business Machines Corporation XML documents stored as column data
US6957225B1 (en) * 2002-05-07 2005-10-18 Oracle International Corporation Automatic discovery and use of column correlations in tables
JP4893130B2 (ja) * 2005-08-05 2012-03-07 セイコーエプソン株式会社 情報処理装置、データ処理方法およびプログラム
CN100383881C (zh) * 2005-12-08 2008-04-23 杭州海康威视数字技术有限公司 一种嵌入式设备中硬盘关键信息区的保护方法
US7860903B2 (en) * 2005-12-23 2010-12-28 Teradata Us, Inc. Techniques for generic data extraction
WO2007127956A2 (en) * 2006-04-28 2007-11-08 Business Objects, S.A. Apparatus and method for merging metadata within a repository
US20080294673A1 (en) * 2007-05-25 2008-11-27 Microsoft Corporation Data transfer and storage based on meta-data
JP5054065B2 (ja) * 2009-05-14 2012-10-24 株式会社エヌ・ティ・ティ・ドコモ データベース装置、データベース整合システム、及び、データベース整合方法
US8868621B2 (en) * 2010-10-21 2014-10-21 Rillip, Inc. Data extraction from HTML documents into tables for user comparison
JP2012185765A (ja) * 2011-03-08 2012-09-27 Nec Corp 情報処理装置、情報処理装置の管理方法、情報処理装置の管理プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188343A (ja) * 2006-01-13 2007-07-26 Mitsubishi Electric Corp スキーマ統合支援装置、スキーマ統合支援方法およびスキーマ統合支援プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LING LING YAN: "Data-driven understanding and refinement of schema mappings, SIGMOD '01", PROCEEDINGS OF THE 2001 ACM SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, June 2001 (2001-06-01), pages 485 - 496 *
RONALD FAGIN: "Clio: Schema Mapping Creation and Data Exchange", LECTURE NOTES IN COMPUTER SCIENCE, vol. 5600, 2009, pages 198 - 236 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016136354A (ja) * 2015-01-23 2016-07-28 三菱電機株式会社 データ連携推定装置、データ連携推定方法及びプログラム

Also Published As

Publication number Publication date
GB2529095A (en) 2016-02-10
JPWO2014192116A1 (ja) 2017-02-23
CN105229618A (zh) 2016-01-06
JP5972461B2 (ja) 2016-08-17
GB201518688D0 (en) 2015-12-02
SG11201508822WA (en) 2015-12-30
US20160042022A1 (en) 2016-02-11

Similar Documents

Publication Publication Date Title
US10229655B2 (en) Contextual zoom
US20090319494A1 (en) Field mapping for data stream output
US10733361B2 (en) Content reproducing apparatus
JP4832952B2 (ja) データベース解析システム及びデータベース解析方法及びプログラム
US20200334274A1 (en) Quick data structuring computing system and related methods
US20240143634A1 (en) System and methods for categorizing captured data
JP5972461B2 (ja) データ連携支援装置及びデータ連携支援方法
JP2018106556A (ja) 画面情報生成装置、画面情報生成方法、及びプログラム
JP2009146084A (ja) テーブル管理装置
JP6017055B2 (ja) データ連携支援装置及びデータ連携支援方法
WO2016199466A1 (ja) Rdbシステム
JP2013152580A (ja) コード生成装置及びコード生成方法及びプログラム
US20150066994A1 (en) Managing sharing relationship of tables
JP5855989B2 (ja) データ処理装置及びデータ処理方法及びデータ処理プログラム
US10255260B2 (en) System and framework for transforming domain data
JP2015114896A (ja) 文書処理システム
WO2023281605A1 (ja) 情報処理方法、情報処理装置、およびプログラム
US20230031202A1 (en) Method and system for generating document field predictions
JP2024088830A (ja) 情報処理プログラム、情報処理方法および情報処理装置
US9792092B2 (en) Method of unifying information and tool from a plurality of information sources and computer program product and matterizer using the same
JP6455229B2 (ja) ストレージ装置、読出記憶装置決定方法、読出記憶装置決定プログラム、およびストレージシステム
US20140095984A1 (en) Information processing device, method and program recording medium
JP2019040261A (ja) 情報処理装置及びプログラム
US20120259848A1 (en) System and method for automatically building a search database for digital data of mediums
JP2018073116A (ja) 検索プログラム、検索装置および検索方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201380076749.8

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13885758

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015519559

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14783384

Country of ref document: US

ENP Entry into the national phase

Ref document number: 1518688

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20130530

WWE Wipo information: entry into national phase

Ref document number: 1518688.5

Country of ref document: GB

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13885758

Country of ref document: EP

Kind code of ref document: A1

ENPC Correction to former announcement of entry into national phase, pct application did not enter into the national phase

Ref country code: GB