Systems and methods for real-time de-duplication

US9542428B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9542428-B2
Application numberUS-201213647714-A
CountryUS
Kind codeB2
Filing dateOct 9, 2012
Priority dateOct 10, 2011
Publication dateJan 10, 2017
Grant dateJan 10, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Disclosed are systems, apparatus, and methods for identifying and processing duplicative records in one or more database systems. In various implementations, a first data object may be created and stored in a first database system, where the first data object includes a plurality of data fields capable of storing a plurality of data values. A trigger function may be executed in response to creating the first data object, where the trigger function causes one or more servers to determine if one or more existing data objects stored in the second database system match the first data object, and where the trigger function further causes one or more servers in the first database system to retrieve one or more data values from the one or more existing data objects. The retrieved one or more data values may be stored in one or more data fields of the first data object.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: creating a first data object in a first database system, wherein the first data object includes a first plurality of data fields capable of storing a corresponding first plurality of data values; executing a trigger function in response to creating the first data object, wherein the trigger function causes one or more servers in a second database system to determine if one or more existing data objects stored in the second database system include a combination of a second plurality of data values corresponding to a second plurality of data fields that match the combination of the first corresponding plurality of data values included in the first plurality of data fields, and wherein the trigger function further causes one or more servers in the first database system to retrieve one or more data values of the second plurality of data values from the one or more existing data objects, wherein the first data object and the one or more existing data objects are different types of records; storing the retrieved one or more data values of the second plurality of data values in one or more data fields of the first plurality of data fields; storing the first data object in the first database system; automatically creating a link between the stored first data object and the one or more existing data objects stored in the second database system that include the matching combination of the second plurality of data values, the link being automatically created in response to storing the retrieved one or more data values of the second plurality of data values in the data fields of the first plurality of data fields of the first data object; periodically checking the linked one or more existing data objects to identify whether or not any subsequent changes have been made to the one or more existing data objects; and automatically updating, using the created link, the stored first data object in response to identifying a subsequent change made to any of the one or more linked existing data objects. 2. The method of claim 1 , wherein the executing and storing the retrieved one or more data values are part of an automated process executed by one or more servers of the first database system. 3. The method of claim 1 , wherein the first plurality of data fields are capable of being displayed as display fields in a user interface of a computer system. 4. The method of claim 3 , wherein the retrieved one or more data values are displayed to a user of the computer system via the user interface. 5. The method of claim 4 , wherein the first plurality of data fields store data for a form capable of receiving information from a user, and wherein the retrieved one or more data values are displayed to the user in one or more display fields of the form prior to the user completing the form. 6. The method of claim 1 , wherein the first data object is a record stored in a multi-tenant database system and is capable of storing one or more data values contributed by a user of the multi-tenant database system. 7. The method of claim 6 , wherein the types of records of the first data object and the linked one or more existing data objects are selected from the group of record types consisting of an account, contact, lead, and opportunity, each of the linked one or more existing data objects having a different record type from the first data object. 8. The method of claim 7 , wherein the determining is based on one or more data values selected from the group consisting of a phone number, a name, an address, a company name, a professional organization name, an employee identifier, and an email address. 9. The method of claim 1 , wherein the retrieved one or more data values include information aggregated from a distributed group of users and entities. 10. The method of claim 1 , wherein the first database system and the second database system are operated by the same entity. 11. The method of claim 1 , further comprising comparing the stored first data object and the one or more existing data objects, stored in the second database system that include the combination of the second plurality of data values after a predetermined time to determine if either the first data object or the one or more existing data objects is a duplicate record, and automatically deleting one of the first data object and the one or more existing data objects in response to the determination that one of the first data object and the one or more existing data objects is a duplicate record. 12. A non-transitory machine-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to carry out the steps of: creating a first data object in a first database system, wherein the first data object includes a first plurality of data fields capable of storing a corresponding first plurality of data values; executing a trigger function in response to creating the first data object, wherein the trigger function causes one or more servers in a second database system to determine if one or more existing data objects stored in the second database system include a combination of a second plurality of data values corresponding to a second plurality of data fields that match the combination of the first corresponding plurality of data values included in the first plurality of data fields, and wherein the trigger function further causes one or more servers in the first database system to retrieve one or more data values from the one or more existing data objects, wherein the first data object and the one or more existing data objects are different types of records; storing the retrieved one or more data values of the second plurality of data values in one or more data fields of the first plurality of data fields; storing the first data object in the first database system; automatically creating a link between the stored first data object and the one or more existing data objects stored in the second database system that include the matching combination of the second plurality of data values, the link being automatically created in response to storing the retrieved one or more data values of the second plurality of data values in the data fields of the first plurality of data fields of the first data object; periodically checking the one or more existing data objects to identify whether or not any subsequent changes have been made to the one or more existing data objects; and automatically updating, using the created link, the stored first data object in response to identifying a subsequent change made to any of the one or more linked existing data objects. 13. The machine-readable medium of claim 12 , wherein the first plurality of data fields store data for a form capable of receiving information from a user, and wherein the retrieved one or more data values are displayed to the user in one or more display fields of the form prior to the user completing the form. 14. The machine-readable medium of claim 12 , wherein the first data object is a record stored in a multi-tenant data base system, and wherein the types of records of the first data object and the linked one or more existing data objects are selected from the group of record types consisting of an account, contact, lead, and opportunity, each of the linked one or more existing data objects having a different record type from the first data object. 15. The machine-readable medium of claim 14 , wherein the determining is based on one or more data values selected from the group consisting of a phone number, a name, an

Assignees

Inventors

Classifications

  • Physics · mapped topic

  • Physics · mapped topic

  • G06F16/23Primary

    Updating · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9542428B2 cover?
Disclosed are systems, apparatus, and methods for identifying and processing duplicative records in one or more database systems. In various implementations, a first data object may be created and stored in a first database system, where the first data object includes a plurality of data fields capable of storing a plurality of data values. A trigger function may be executed in response to crea…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F17/30345. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 10 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).