IP Library › Granted Patent US 12,223,085
Granted Patent B2
US 12,223,085 · App. 18/497,205 · Granted Feb 11, 2025

Identity resolution and data enrichment application framework

Inventors: Marcus A. Henderson (San Marcos, CA); Justin Langseth (Kailua, HI)
Assignee: Snowflake Inc.
G06F21/6227G06F16/2255G06F21/30G06F21/6245G06F2221/2113
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 12,223,085
App. No.
18/497,205
Granted
Feb 11, 2025
Kind
B2
Abstract

Techniques for identity resolution and data enrichment include instantiating, at an account of a data consumer, an identity resolution application using an installer stored procedure. A data object is configured, at the account of the data consumer, to share log data generated by the identity resolution application with an account of a data provider. The identity resolution application is enabled, at the account of the data consumer, for an identity resolution process using source data based on an instruction originating from the account of the data provider. The instruction is based on the configuring of the data object.

Claims (84)

1. A system comprising:

at least one hardware processor; and

at least one memory storing instructions that cause the at least one hardware processor to perform operations comprising:

instantiating, at an account of a data consumer, an identity resolution application using an installer stored procedure;

configuring, at the account of the data consumer, a data object to share log data generated by the identity resolution application with an account of a data provider;

enabling, at the account of the data consumer, the identity resolution application for an identity resolution process using source data based on an instruction originating from the account of the data provider, the instruction based on the configuring of the data object; and

performing the identity resolution process at the account of the data consumer using the source data based at least on granting a record enrichment stored procedure of the identity resolution application, a write access privilege to a result data table being stored at the account of the data consumer.

2. The system of claim 1 , wherein the operations to configure the data object further comprise:

configuring the data object as an outbound share, the outbound share designating a share at the account of the data provider as a receiving share to receive the log data.

3. The system of claim 1 , wherein the operations to enable the identity resolution application further comprise:

enabling, at the account of the data consumer, a record enrichment stored procedure of the identity resolution application for the identity resolution process based on the instruction.

4. The system of claim 3 , the operations further comprising:

accessing using the record enrichment stored procedure, the source data from the account of the data provider, the source data associated with the identity resolution process.

5. The system of claim 1 , the operations further comprising:

performing the identity resolution process at the account of the data consumer using the source data based on:

granting the record enrichment stored procedure, first read access privileges to an input data table stored at the account of the data consumer; and

granting the record enrichment stored procedure, second read access privileges to the source data managed by the account of the data provider.

6. The system of claim 5 , the operations further comprising:

retrieving by the record enrichment stored procedure, personally identifiable information (PII) from the input data table, using the first read access privileges.

7. The system of claim 6 , the operations further comprising:

generating, by the record enrichment stored procedure, a secure identifier of a user associated with the PII based on the source data.

8. The system of claim 7 , the operations further comprising:

updating, by the record enrichment stored procedure, the result data table with the secure identifier using the write access privilege.

9. The system of claim 1 , the operations further comprising:

generating an application log of the identity resolution application as the log data, the application log being based on one or more functions performed by the identity resolution application during the identity resolution process.

10. The system of claim 9 , the operations further comprising:

generating at the account of the data consumer, a hash of the application log using a hash function associated with the account of the data provider;

revising the application log with the hash to generate a revised application log; and

sharing the revised application log with a log verification procedure at the account of the data provider using the data object.

11. A method comprising:

performing, by at least one hardware processor, operations comprising:

instantiating, at an account of a data consumer, an identity resolution application using an installer stored procedure;

configuring, at the account of the data consumer, a data object to share log data generated by the identity resolution application with an account of a data provider;

enabling, at the account of the data consumer, the identity resolution application for an identity resolution process using source data based on an instruction originating from the account of the data provider, the instruction based on the configuring of the data object; and

performing the identity resolution process at the account of the data consumer using the source data based at least on granting a record enrichment stored procedure of the identity resolution application, a write access privilege to a result data table being stored at the account of the data consumer.

12. The method of claim 11 , wherein the configuring of the data object further comprises:

configuring the data object as an outbound share, the outbound share designating a share at the account of the data provider as a receiving share to receive the log data.

13. The method of claim 11 , wherein the enabling of the identity resolution application further comprises:

enabling, at the account of the data consumer, a record enrichment stored procedure of the identity resolution application for the identity resolution process based on the instruction.

14. The method of claim 13 , further comprising:

accessing using the record enrichment stored procedure, the source data from the account of the data provider, the source data associated with the identity resolution process.

15. The method of claim 11 , further comprising:

performing the identity resolution process at the account of the data consumer using the source data based on:

granting the record enrichment stored procedure, first read access privileges to an input data table stored at the account of the data consumer; and

granting the record enrichment stored procedure, second read access privileges to the source data managed by the account of the data provider.

16. The method of claim 15 , further comprising:

retrieving by the record enrichment stored procedure, personally identifiable information (PII) from the input data table, using the first read access privileges.

17. The method of claim 16 , further comprising:

generating, by the record enrichment stored procedure, a secure identifier of a user associated with the PII based on the source data.

18. The method of claim 17 , further comprising:

updating, by the record enrichment stored procedure, the result data table with the secure identifier using the write access privilege.

19. The method of claim 11 , further comprising:

generating an application log of the identity resolution application as the log data, the application log being based on one or more functions performed by the identity resolution application during the identity resolution process.

20. The method of claim 19 , further comprising:

generating at the account of the data consumer, a hash of the application log using a hash function associated with the account of the data provider;

revising the application log with the hash to generate a revised application log; and

sharing the revised application log with a log verification procedure at the account of the data provider using the data object.

21. A computer-storage medium comprising instructions that, when executed by one or more processors of a machine, configure the machine to perform operations comprising:

instantiating, at an account of a data consumer, an identity resolution application using an installer stored procedure;

configuring, at the account of the data consumer, a data object to share log data generated by the identity resolution application with an account of a data provider;

enabling, at the account of the data consumer, the identity resolution application for an identity resolution process using source data based on an instruction originating from the account of the data provider, the instruction based on the configuring of the data object; and

performing the identity resolution process at the account of the data consumer using the source data based at least on granting a record enrichment stored procedure of the identity resolution application, a write access privilege to a result data table being stored at the account of the data consumer.

22. The computer-storage medium of claim 21 , wherein the operations to configure the data object further comprise:

configuring the data object as an outbound share, the outbound share designating a share at the account of the data provider as a receiving share to receive the log data.

23. The computer-storage medium of claim 21 , wherein the operations to enable the identity resolution application further comprise:

enabling, at the account of the data consumer, a record enrichment stored procedure of the identity resolution application for the identity resolution process based on the instruction.

24. The computer-storage medium of claim 23 , the operations further comprising:

accessing using the record enrichment stored procedure, the source data from the account of the data provider, the source data associated with the identity resolution process.

25. The computer-storage medium of claim 21 , the operations further comprising:

performing the identity resolution process at the account of the data consumer using the source data based on:

granting the record enrichment stored procedure, first read access privileges to an input data table stored at the account of the data consumer; and

granting the record enrichment stored procedure, second read access privileges to the source data managed by the account of the data provider.

26. The computer-storage medium of claim 25 , the operations further comprising:

retrieving by the record enrichment stored procedure, personally identifiable information (PII) from the input data table, using the first read access privileges.

27. The computer-storage medium of claim 26 , the operations further comprising:

generating, by the record enrichment stored procedure, a secure identifier of a user associated with the PII based on the source data.

28. The computer-storage medium of claim 27 , the operations further comprising:

updating, by the record enrichment stored procedure, the result data table with the secure identifier using the write access privilege.

29. The computer-storage medium of claim 21 , the operations further comprising:

generating an application log of the identity resolution application as the log data, the application log being based on one or more functions performed by the identity resolution application during the identity resolution process.

30. The computer-storage medium of claim 29 , the operations further comprising:

generating at the account of the data consumer, a hash of the application log using a hash function associated with the account of the data provider;

revising the application log with the hash to generate a revised application log; and

sharing the revised application log with a log verification procedure at the account of the data provider using the data object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2023
From: HENDERSON, MARCUS A.; LANGSETH, JUSTIN
To: SNOWFLAKE INC.
Reel/Frame 065386/0685 →
Continuity (5)
Continuation 18321974 · May 23, 2023
Continuation 18162696 · Jan 31, 2023
Continuation 18161030 · Jan 27, 2023
Provisional Application 63477601 · Dec 29, 2022
Related Publication 20240220649A1 · Jul 4, 2024
References Cited (31)
US 9397983B2 · Moffat · 2016 [cited by applicant]
US 10044654B2 · Papa et al. · 2018 [cited by applicant]
US 11861033B1 · Henderson et al. · 2024 [cited by applicant]
US 20050267847A1 · Blechman · 2005 [cited by examiner]
US 20170300627A1 · Giordano · 2017 [cited by examiner]
US 20180159884A1 · Meier · 2018 [cited by examiner]
US 20180349894A1 · Patrinos et al. · 2018 [cited by applicant]
US 20190258820A1 · Gaspar et al. · 2019 [cited by applicant]
US 20200137058A1 · Allen et al. · 2020 [cited by applicant]
US 20200336489A1 · Wuest · 2020 [cited by examiner]
US 20210385069A1 · Reid et al. · 2021 [cited by applicant]
US 20220365789A1 · Oikawa et al. · 2022 [cited by applicant]
CA 2801659A1 · 2013 [cited by examiner]
CA 3061638C · 2022 [cited by examiner]
CN 113015138 · 2021 [cited by applicant]
JP 2004302623 · 2004 [cited by applicant]
WO 02073456 · 2002 [cited by applicant]
“U.S. Appl. No. 18/162,696, Preliminary Amendment filed Feb. 2, 2023”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 18/162,696, Notice of Allowance mailed Apr. 26, 2023”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Non Final Office Action mailed May 24, 2023”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 18/162,696, Notice of Allowance mailed Jul. 25, 2023”, 5 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Response filed Aug. 14, 2023 to Non Final Office Action mailed May 24, 2023”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 18/321,974, Notice of Allowance mailed Aug. 16, 2023”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Final Office Action mailed Sep. 6, 2023”, 13 pgs. [cited by applicant]
“U.S. Appl. No. 18/162,696, Notice of Allowance mailed Oct. 18, 2023”, 5 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Response filed Nov. 17, 2023 to Final Office Action mailed Sep. 6, 2023”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Notice of Allowance mailed Dec. 13, 2023”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 18/161,030, Corrected Notice of Allowability mailed Jan. 2, 2024”, 9 pgs. [cited by applicant]
U.S. Appl. No. 18/161,030, filed Jan. 27, 2023, Identity Resolution and Data Enrichment Application Framework. [cited by applicant]
U.S. Appl. No. 18/321,974 U.S. Pat. No. 11,861,033, filed May 23, 2023, Identity Resolution and Data Enrichment Application Framework. [cited by applicant]
U.S. Appl. No. 18/162,696, filed Jan. 31, 2023, Identity Resolution and Data Enrichment Application Framework Using Shared Data Objects (As Amended). [cited by applicant]