IP Library Granted Patent US 10,558,626
Granted Patent B2
US 10,558,626 · App. 15/345,355 · Granted Feb 11, 2020

Merging and unmerging objects using graphical representation

Inventor: Parth Vijay Vaishnav (Cupertino, CA)
Assignee: salesforce.com, inc.
G06F16/215G06F16/258G06F16/289G06F16/9024
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,558,626
App. No.
15/345,355
Granted
Feb 11, 2020
Kind
B2
Abstract

Some embodiments of the present invention include a method for merging records associated with objects in an object database and include generating, by a database system, a graph database corresponding to an object database, wherein objects in the object database are represented as nodes of graphs in the graph database, and wherein relationships among the objects in the object database are represented as edges of the graphs in the graph database; receiving, by the database system, information about a first object and information about a dimension based on a first relationship associated with the first object; and performing, by the database system, a merge operation using the information about the first object and the information about the dimension on the graph database instead of on the object database.

Claims (32)

1. A method comprising:

generating, by a database system, a graph database corresponding to an object database that includes a plurality of objects, each object having a relationship with one or more other objects in the database, the objects in the object database being represented as nodes of graphs in the graph database, the relationships among the objects in the object database being represented as edges of the graphs in the graph database;

receiving, by the database system, information about a first object and information about a first dimension based on a first relationship associated with the first object; and

performing, by the database system, a merge operation using the information about the first object and the information about the first dimension only on the graph database, the object database remaining unaffected by the merge operation.

2. The method of claim 1 , wherein performing the merge operation on the graph database comprises merging nodes representing duplicate records associated with the first object.

3. The method of claim 2 , where the duplicate records associated with the first object are determined based on applying a duplicate detection algorithm to the first object.

4. The method of claim 3 , further comprising generating, by the database system, a merged node to represent a result of said merging the nodes representing the duplicate records associated with the first object.

5. The method of claim 4 , further comprising storing details of the merge operation.

6. The method of claim 5 , wherein performing the merge operation on the graph database comprises merging nodes representing duplicate records associated with a second object related to the first object by the first relationship.

7. The method of claim 5 , wherein said performing the merge operation on the graph database does not affect nodes associated with the first object based on a second relationship.

8. The method of claim 5 , further comprising:

performing, by the database system, a merge operation using the information about the first object and information about a second dimension based on the second relationship associated with the first object.

9. The method of claim 5 , wherein the graph database is stored as a separate database from the object database, wherein the graph database is configured to be synchronized with the object database, and wherein said performing the merge operation on the graph database is committed based on expiration of a commitment period such that said merge operation cannot be unmerged.

10. An apparatus comprising:

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which when executed, cause the one or more processors to:

generate a graph database corresponding to an object database that includes a plurality of objects, each object having a relationship with one or more other objects in the database, the objects in the object database being represented as nodes of graphs in the graph database, the relationships among the objects in the object database being represented as edges of the graphs in the graph database;

receive information about a first object and information about a dimension based on a first relationship associated with the first object; and

perform a merge operation using the information about the first object and the information about the dimension only on the graph database, the object database remaining unaffected by the merge operation.

11. The apparatus of claim 10 , wherein said executing the instructions to perform the merge operation on the graph database comprises executing instructions to merge nodes representing duplicate records associated with the first object.

12. The apparatus of claim 11 , where the duplicate records associated with the first object are determined based on applying a duplicate detection algorithm to the first object.

13. The apparatus of claim 12 , further comprising executing instructions to generate a merged node to represent a result of said merging the nodes representing the duplicate records associated with the first object.

14. The apparatus of claim 13 , further comprising executing instructions to store details of the merge operation.

15. The apparatus of claim 14 , wherein the graph database is stored as a separate database from the object database, and wherein the graph database is configured to be synchronized with the object database.

16. A computer program product comprising computer-readable program code to be executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code including instructions to:

generate a graph database corresponding to an object database that includes a plurality of objects, each object having a relationship with one or more other objects in the database, the objects in the object database being represented as nodes of graphs in the graph database, the relationships among the objects in the object database being represented as edges of the graphs in the graph database;

receive information about a first object and information about a dimension based on a first relationship associated with the first object; and

perform a merge operation using the information about the first object and the information about the dimension only on the graph database, the object database remaining unaffected by the merge operation.

17. The computer program product of claim 16 , wherein the instructions to perform the merge operation on the graph database comprises instructions to merge nodes representing duplicate records associated with the first object.

18. The computer program product of claim 17 , where the duplicate records associated with the first object are determined based on applying a duplicate detection algorithm to the first object.

19. The computer program product of claim 18 , further comprising instructions to generate a merged node to represent a result of said merging the nodes representing the duplicate records associated with the first object.

20. The computer program product of claim 19 , further comprising instructions to store details of the merge operation, to prevent the merge operation to be unmerged after expiration of a commitment period, wherein the graph database is configured to be synchronized with the object database, and wherein the graph database is stored as a separate database from the object database.

Assignments (2)
CHANGE OF NAME Recorded Oct 3, 2023
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 065114/0983 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2016
From: VAISHNAV, PARTH VIJAY
To: SALESFORCE.COM, INC.
Reel/Frame 040252/0670 →
Continuity (1)
Related Publication 20180129686A1 · May 10, 2018
Cited By (1)
US 12,260,434