IP Library Granted Patent US 11,360,953
Granted Patent B2
US 11,360,953 · App. 16/938,207 · Granted Jun 14, 2022

Techniques for database entries de-duplication

Inventors: Rohit Mahajan (Iselin, NJ); Winnie Cheng (West New York, NJ)
Assignee: HITACHI VANTARA LLC
G06F16/215G06F16/285G06F16/9024G06F16/951G06N7/023G06N20/00
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 11,360,953
App. No.
16/938,207
Granted
Jun 14, 2022
Kind
B2
Abstract

A system and method for data entries deduplication are provided. The method includes indexing an input data set, wherein the input data set is in a tabular formant and the indexing includes providing a unique Row identifier (RowID), wherein rows are the data entries; computing attribute similarity for each column across each pair of rows; computing, for each pair of rows, row-to-row similarity as a weighted sum of attribute similarities; clustering pairs of rows based on their row-to-row similarities; and providing an output data set including at least the clustered pairs of rows.

Claims (62)

1. A method for data entries deduplication, comprising:

indexing an input data set, wherein the input data set is in a tabular format and the indexing includes providing a unique Row identifier (RowID), wherein rows are the data entries;

standardizing the input data set into a predefined and unified format;

segmenting the standardized input data set, wherein each segment includes a subset of the rows included in the input data set;

indexing each segment using a text search engine;

computing attribute similarity for each column across each pair of rows;

computing, for each pair of rows, row-to-row similarity as a weighted sum of attribute similarities;

clustering pairs of rows based on their row-to-row similarities;

determine clusters that are substantially related based on a cluster signature;

iteratively merging clusters that are substantially related;

providing an output data set including at least the clustered pairs of rows; and

wherein the output data set further includes the input data set, a cluster identification indicating the deduplicated group to which a corresponding row belongs, a cluster anchor information including the RowID, and a confidence score indicating a confidence or likelihood that the row belongs to the cluster.

2. The method of claim 1 , wherein computing attribute similarity further comprises:

utilizing a comparator based on a type of an attribute to compute the attribute similarity, wherein the comparator is any one of: exact matching and fuzzy matching.

3. The method of claim 2 , wherein row-to-row similarity demonstrates pairs of rows are similar, and wherein the weights are determined based on a machine learning model.

4. The method of claim 1 , wherein clustering the pairs of rows further comprises:

generating a graph including nodes and edges, wherein the nodes represent rows and edges represent the row-to-row similarities; and

applying a greedy algorithm on the graph to cluster rows, wherein each cluster includes at two similar data entries.

5. The method of claim 4 , wherein the clustering results in isolated rows, wherein each isolated row is individually clustered.

6. The method of claim 4 , wherein the format of the output data set is any one of: a table and a graph.

7. The method of claim 6 , wherein the input data set is sourced from a plurality of data sources.

8. The method of claim 4 , wherein the cluster signature is a combination of a cluster anchor, a cluster ID, and a neighbor vector, where the cluster anchor is the row that has the most connections with other rows in a particular cluster, and where the neighbor vector includes rows that are part of the particular cluster in addition to rows that are “N” hops away, “N” being a non-negative integer, in the generated graph, from rows within the particular cluster.

9. A non-transitory computer readable medium having stored thereon instructions for causing a processing circuitry to perform a process method for data entries deduplication, the process comprising:

indexing an input data set, wherein the input data set is in a tabular format and the indexing includes providing a unique row identifier (ID);

standardizing the input data set into a predefined and unified format;

segmenting the standardized input data set, wherein each segment includes a subset of the rows included in the input data set;

indexing each segment using a text search engine;

computing attribute similarity for each column across each pair of rows;

computing, for each pair of rows, row-to-row similarity as a weighted sum of attribute similarities;

clustering pairs of rows based on their row-to-row similarities;

determine clusters that are substantially related based on a cluster signature;

iteratively merging clusters that are substantially related;

providing an output data set including at least the clustered data entries and clustered data entries; and

wherein the output data set further includes the input data set, a cluster identification indicating the deduplicated group to which a corresponding row belongs, a cluster anchor information including the RowID, and a confidence score indicating a confidence or likelihood that the row belongs to the cluster.

10. The non-transitory computer readable medium according to claim 9 ,

wherein the process further comprises:

generating a graph including nodes and edges, wherein the nodes represent rows and edges represent the row-to-row similarities; and

applying a greedy algorithm on the graph to cluster rows, wherein each cluster includes at two similar data entries,

wherein the cluster signature is a combination of a cluster anchor, a cluster ID, and a neighbor vector, where the cluster anchor is the row that has the most connections with other rows in a particular cluster, and where the neighbor vector includes rows that are part of the particular cluster in addition to rows that are “N” hops away, “N” being a non-negative integer, in the generated graph, from rows within the particular cluster.

11. A system for data entries deduplication, comprising:

a processing circuitry; and

a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:

index an input data set, wherein the input data set is in a tabular formant and the indexing includes providing a unique row identifier (ID);

standardize the input data set into a predefined and unified format;

segment the standardized input data set, wherein each segment includes a subset of the rows included in the input data set;

index each segment using a text search engine;

compute attribute similarity for each column across each pair of rows;

compute, for each pair of rows, row-to-row similarity as a weighted sum of attribute similarities;

cluster pairs of rows based on their row-to-row similarities;

determine clusters that are substantially related based on a cluster signature;

iteratively merge clusters that are substantially related;

provide an output data set including at least the clustered data entries and clustered data entries; and

wherein the output data set further includes the input data set, a cluster identification indicating the deduplicated group to which a corresponding row belongs, a cluster anchor information including the RowID, and a confidence score indicating a confidence or likelihood that the row belongs to the cluster.

12. The system of claim 10 , wherein the system is further configured to:

utilize a comparator based on a type of an attribute to compute the attribute similarity, wherein the comparator is any one of: exact matching and fuzzy matching.

13. The system of claim 12 , wherein row-to-row similarity demonstrates pairs of rows are similar, and wherein the weights are determined based on a machine learning model.

14. The system of claim 11 , wherein the system is further configured to:

generate a graph including nodes and edges, wherein the nodes represent rows and edges represent the row-to-row similarities; and

apply a greedy algorithm on the graph to cluster rows, wherein each cluster includes at two similar data entries.

15. The system of claim 14 , wherein the format of the output data set is any one of: a table and a graph.

16. The system of claim 15 , wherein the input data set is sourced from a plurality of data sources.

17. The system of claim 14 , wherein the cluster signature is a combination of a cluster anchor, a cluster ID, and a neighbor vector, where the cluster anchor is the row that has the most connections with other rows in a particular cluster, and where the neighbor vector includes rows that are part of the particular cluster in addition to rows that are “N” hops away, “N” being a non-negative integer, in the generated graph, from rows within the particular cluster.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2021
From: IO-TAHOE LLC
To: HITACHI VANTARA LLC
Reel/Frame 057323/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2021
From: MAHAJAN, ROHIT; CHENG, WINNIE
To: IO-TAHOE LLC
Reel/Frame 056216/0708 →
Continuity (2)
Provisional Application 62878923 · Jul 26, 2019
Related Publication 20210026820A1 · Jan 28, 2021