IP Library Granted Patent US 10,025,846
Granted Patent B2
US 10,025,846 · App. 14/853,823 · Granted Jul 17, 2018

Identifying entity mappings across data assets

Inventors: Prasad M. Deshpande (Bangalore, IN); Atreyee Dey (Bangalore, IN); Rajeev Gupta (Noida, IN); Sanjeev K. Gupta (Loa Altos, CA); Salil Joshi (Pune, IN); Sriram K. Padmanabhan (San Jose, CA)
Assignee: International Business Machines Corporation
G06F17/30604G06F17/30303G06F17/30622G06F17/30867G06F17/30908G06F17/30917
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,025,846
App. No.
14/853,823
Granted
Jul 17, 2018
Kind
B2
Abstract

Entity mappings that produce matching entities for a first data asset having attributes and a second data asset having attributes are generated by: generating entity mappings that produce matching entities for a first data asset having attributes with attribute values and a second data asset having attributes with attribute values by: matching the attribute values of the attributes of the first data asset with the attribute values of the attributes of the second data asset, using the matching attribute values to generate matching attribute pairs, and using the matching attribute pairs to identify entity mappings; computing an entity mapping score for each of the entity mappings based on a combination of factors; ranking the entity mappings based on each entity mapping score; and using some of the ranked entity mappings to determine whether a same real-world entity is described by the first data asset and the second data asset.

Claims (44)

1. A computer program product, the computer program product comprising a computer readable storage medium having program code embodied therewith, the program code executable by at least one processor to perform:

generating entity mappings that produce matching entities for a first data asset having attributes with attribute values and a second data asset having attributes with attribute values by:

matching the attribute values of the attributes of the first data asset with the attribute values of the attributes of the second data asset;

using the matching attribute values to generate matching attribute pairs; and

using the matching attribute pairs to identify entity mappings;

computing an entity mapping score for each of the entity mappings based on a combination of factors;

ranking the entity mappings based on each entity mapping score; and

using the ranked entity mappings to determine which of the entity mappings are to be used to determine whether a same real-world entity is described by the first data asset and the second data asset.

2. The computer program product of claim 1 , wherein the program code is executable by the at least one processor to perform:

generating a first inverted index of entity identifier pairs for the first data asset;

generating a second inverted index of entity identifier pairs for the second data asset; and

using the first inverted index and the second inverted index to generate the matching attribute pairs based on matching attribute values that form the entity mappings.

3. The computer program product of claim 1 , wherein values match fuzzily for the matching entities.

4. The computer program product of claim 1 , wherein, for computing the entity mapping score for each of the entity mappings comprises, the program code is executable by the at least one processor to perform wherein:

generating an entity mapping score for factors selected from: a number of attributes involved in an entity mapping, a cardinality of that individual entity mapping, support of that entity mapping, a probability of one to one matching for that entity mapping, a join utility measure for that entity mapping, and a probability of previous user selections for that entity mapping; and

adding the entity mapping score for each of the factors to generate the entity mapping score for that entity mapping.

5. The computer program product of claim 1 , wherein one of the first data asset and the second data asset is semi-structured data having hierarchical data that is flattened.

6. The computer program product of claim 1 , wherein one of the first data asset and the second data asset is an unstructured data asset formed by a collection of documents and is modelled based one of a bag of words and annotated words.

7. The computer program product of claim 1 , wherein the program code is executable by the at least one processor to perform:

integrating the first data asset and the second data asset using ranked entity mappings by performing one of a join operation, a merge operation, and a union operation.

8. The computer program product of claim 1 , wherein a Software as a Service (SaaS) is configured to perform computer program product operations.

9. A computer system, comprising:

one or more processors, one or more computer-readable memories and one or more computer-readable, tangible storage devices; and

program instructions, stored on at least one of the one or more computer-readable, tangible storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, to perform operations comprising:

generating entity mappings that produce matching entities for a first data asset having attributes with attribute values and a second data asset having attributes with attribute values by:

matching the attribute values of the attributes of the first data asset with the attribute values of the attributes of the second data asset;

using the matching attribute values to generate matching attribute pairs; and

using the matching attribute pairs to identify entity mappings;

computing an entity mapping score for each of the entity mappings based on a combination of factors;

ranking the entity mappings based on each entity mapping score; and

using the ranked entity mappings to determine which of the entity mappings are to be used to determine whether a same real-world entity is described by the first data asset and the second data asset.

10. The computer system of claim 9 , wherein the operations further comprise:

generating a first inverted index of entity identifier pairs for the first data asset;

generating a second inverted index of entity identifier pairs for the second data asset; and

using the first inverted index and the second inverted index to generate the matching attribute pairs based on matching attribute values that form the entity mappings.

11. The computer system of claim 9 , wherein values match fuzzily for the matching entities.

12. The computer system of claim 9 , wherein the operations for computing the entity mapping score for each of the entity mappings further comprise:

generating an entity mapping score for factors selected from: a number of attributes involved in an entity mapping, a cardinality of that individual entity mapping, support of that entity mapping, a probability of one to one matching for that entity mapping, a join utility measure for that entity mapping, and a probability of previous user selections for that entity mapping; and

adding the entity mapping score for each of the factors to generate the entity mapping score for that entity mapping.

13. The computer system of claim 9 , wherein one of the first data asset and the second data asset is semi-structured data having hierarchical data that is flattened.

14. The computer system of claim 9 , wherein one of the first data asset and the second data asset is an unstructured data asset formed by a collection of documents and is modelled based one of a bag of words and annotated words.

15. The computer system of claim 9 , wherein the operations further comprise:

integrating the first data asset and the second data asset using ranked entity mappings by performing one of a join operation, a merge operation, and a union operation.

16. The computer system of claim 9 , wherein a Software as a Service (SaaS) is configured to perform computer system operations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2015
From: DESHPANDE, PRASAD M.; DEY, ATREYEE; GUPTA, RAJEEV; GUPTA, SANJEEV K.; JOSHI, SALIL; PADMANABHAN, SRIRAM K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036664/0044 →
Continuity (1)
Related Publication 20170075984A1 · Mar 16, 2017