IP Library Granted Patent US 11,888,950
Granted Patent B2
US 11,888,950 · App. 17/549,734 · Granted Jan 30, 2024

Systems and methods for securely using cloud services on on-premises data

Inventors: Niraj Deo (Sammamish, WA); Saurabh Pandey (San Jose, CA); Johanna Christina Brugman (Seattle, WA)
Assignee: Oracle International Corporation
H04L67/535H04L12/4641H04L41/0893H04L67/1001H04L67/133H04L67/306
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,888,950
App. No.
17/549,734
Granted
Jan 30, 2024
Kind
B2
Abstract

The present disclosure relates to systems and methods for providing cloud-based services securely to on-premises networks or other infrastructure. More particularly, the present disclosure relates to systems and methods for enriching first-party data (e.g., data collected directly by an on-premises server) stored within on-premises networks by enabling the on-premises networks to retrieve and process third-party data stored on cloud-based networks. As a technical benefit, cloud-based services can be performed on the first-party data within the on-premises networks.

Claims (46)

1. A computer-implemented method comprising:

detecting a communication over a communication channel between a first network storing a plurality of first-party user records and a cloud network storing a plurality of third-party user records, the communication originating from the first network and corresponding to a request to map at least a first-party user record of the plurality of first-party user records to one or more third-party user records;

monitoring a first number of the one or more third-party user records transmitted by the cloud network in response to the communication and a second number of one or more third-party user records received by the first network;

generating a reconciled value based on the second number of one or more third-party user records received by the first network and the first number of one or more third-party user records transmitted by the cloud network; and

exchanging the reconciled value from the first network for the one or more third-party user records transmitted by the cloud network.

2. The computer-implemented method of claim 1 , further comprising:

determining whether a value associated with the communication exceeds a maximum value associated with the first network, the maximum value being defined by a user associated with the first network;

wherein:

when the maximum value is not exceeded by the value associated with the communication, proceeding with processing the request received by the first network; and

when the maximum value is exceeded by the value associated with the communication, denying the request to map the first-party user record of the plurality of first-party user records to the one or more third-party user records stored within the cloud network, and transmitting a signal over the communication channel to the first network, the signal indicating that the request has been denied.

3. The computer-implemented method of claim 1 , wherein the plurality of first-party user records includes one or more first-party user features, and each first-party user feature of the one or more first-party user features being generated based on an interaction between a user device and the first network and the plurality of third-party user records includes one or more third-party user features, and each third-party user feature of the one or more third-party user features being generated based on an interaction between a user device and a second network.

4. The computer-implemented method of claim 1 , wherein mapping a first-party user record of the plurality of first-party user records to one or more third-party user records comprises:

determining a first user ID associated with the plurality of first-party user records

determining, based on a probabilistic determination using the first user ID, one or more third-party user IDs associated with the plurality of third-party user records.

5. The computer-implemented method of claim 4 , wherein the probabilistic determination comprising determining a confidence score indicating a probability that at least one third-party user ID of one or more third-party user IDs corresponds to a first-party user ID.

6. The computer-implemented method of claim 1 , wherein the monitoring of the second number of one or more third-party user records received by the first network includes using a code-implemented meter executed at the first network and the monitoring of the first number of the one or more third-party user records transmitted by the cloud network includes using a code-implemented meter executed at the cloud network.

7. The computer-implemented method of claim 1 , wherein the reconciled value is generated based on a difference between the first number and the second number.

8. The computer-implemented method of claim 1 , wherein the reconciled value is defined to be the higher of the first number and the second number.

9. The computer-implemented method of claim 1 , wherein the reconciled value is defined to be an average of the first number and the second number.

10. The computer-implemented method of claim 1 , further comprising generating, based on the reconciled value exchanged from the first network for the one or more third-party user records and by the cloud network, and invoice for the exchange.

11. A system, comprising:

one or more processors; and

a non-transitory computer-readable storage medium containing instructions which, when executed on the one or more processors, cause the one or more processors to perform operations including:

detecting a communication over a communication channel between a first network storing a plurality of first-party user records and a cloud network storing a plurality of third-party user records, the communication originating from the first network and corresponding to a request to map at least a first-party user record of the plurality of first-party user records to one or more third-party user records;

monitoring a first number of the one or more third-party user records transmitted by the cloud network in response to the communication and a second number of one or more third-party user records received by the first network;

generating a reconciled value based on the second number of one or more third-party user records received by the first network and the first number of one or more third-party user records transmitted by the cloud network; and

exchanging the reconciled value from the first network for the one or more third-party user records transmitted by the cloud network.

12. The system of claim 11 , wherein the one or more processor perform operations comprising:

determining whether a value associated with the communication exceeds a maximum value associated with the first network, the maximum value being defined by a user associated with the first network;

wherein:

when the maximum value is not exceeded by the value associated with the communication, proceeding with processing the request received by the first network; and

when the maximum value is exceeded by the value associated with the communication, denying the request to map the first-party user record of the plurality of first-party user records to the one or more third-party user records stored within the cloud network, and transmitting a signal over the communication channel to the first network, the signal indicating that the request has been denied.

13. The system of claim 11 , wherein the plurality of first-party user records includes one or more first-party user features, and each first-party user feature of the one or more first-party user features being generated based on an interaction between a user device and the first network and the plurality of third-party user records includes one or more third-party user features, and each third-party user feature of the one or more third-party user features being generated based on an interaction between a user device and a second network.

14. The system of claim 11 , wherein mapping a first-party user record of the plurality of first-party user records to one or more third-party user records comprises:

determining a first user ID associated with the plurality of first-party user records

determining, based on a probabilistic determination using the first user ID, one or more third-party user IDs associated with the plurality of third-party user records.

15. The system of claim 14 , the probabilistic determination comprising determining a confidence score indicating a probability that at least one third-party user ID of one or more third-party user IDs corresponds to a first-party user ID.

16. The system of claim 11 , wherein the monitoring of the second number of one or more third-party user records received by the first network includes using a code-implemented meter executed at the first network and the monitoring of the first number of the one or more third-party user records transmitted by the cloud network includes using a code-implemented meter executed at the cloud network.

17. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause a processing apparatus to perform operations including:

detecting a communication over a communication channel between a first network storing a plurality of first-party user records and a cloud network storing a plurality of third-party user records, the communication originating from the first network and corresponding to a request to map at least a first-party user record of the plurality of first-party user records to one or more third-party user records;

monitoring a first number of the one or more third-party user records transmitted by the cloud network in response to the communication and a second number of one or more third-party user records received by the first network;

generating a reconciled value based on the second number of one or more third-party user records received by the first network and the first number of one or more third-party user records transmitted by the cloud network; and

exchanging the reconciled value from the first network for the one or more third-party user records transmitted by the cloud network.

18. The computer-program product tangibly embodied in a non-transitory machine-readable storage medium of claim 17 , wherein the reconciled value is generated based on a difference between the first number and the second number.

19. The computer-program product tangibly embodied in a non-transitory machine-readable storage medium of claim 17 , wherein the reconciled value is defined to be the higher of the first number and the second number.

20. The computer-program product tangibly embodied in a non-transitory machine-readable storage medium of claim 17 , wherein the reconciled value is defined to be an average of the first number and the second number.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2021
From: DEO, NIRAJ; PANDEY, SAURABH; BRUGMAN, JOHANNA CHRISTINA
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 058513/0682 →
Continuity (3)
Continuation 17065238 · Oct 7, 2020
Provisional Application 62912013 · Oct 7, 2019
Related Publication 20220141299A1 · May 5, 2022