IP Library Granted Patent US 11,947,949
Granted Patent B2
US 11,947,949 · App. 17/648,900 · Granted Apr 2, 2024

Techniques for data package generation

Inventors: Sahil Bhutani (San Francisco, CA); William Yeh (Alameda, CA); Naveen Singh Jaunk (San Francisco, CA)
Assignee: Salesforce, Inc.
G06F8/65G06F16/2379
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,947,949
App. No.
17/648,900
Granted
Apr 2, 2024
Kind
B2
Abstract

A method that includes receiving a request to generate a data package for deployment in a target database environment. The request may indicate a first set of data objects from a first configuration associated with a source database environment. The method may further include determining a second set of data objects that are related to the first set of data objects based on the request and on a mapping between the first set of data objects and the second set of data objects. The method may further include transmitting an indication of the second set of data objects to a user at a user interface. The method may further include receiving a selection of one or more data objects from the second set of data objects for inclusion in the data package. The method may further include generating the data package based on the selection.

Claims (60)

1. A method for generating a data package for deployment in a target database environment, comprising:

receiving, from a user via a user interface, a request to generate the data package, the request indicating a first set of data objects from a first configuration associated with a source database environment different from the target database environment;

determining that a second set of data objects from the first configuration are related to the first set of data objects based at least in part on the request and a mapping between the first set of data objects and the second set of data objects in the source database environment;

transmitting an indication of the second set of data objects that are related to the first set of data objects;

receiving, from the user via the user interface, a selection of a subset of the second set of data objects for inclusion in the data package; and

generating the data package in association with migrating the first configuration from the source database environment to the target database environment, the data package comprising the subset of the second set of data objects from the source database environment.

2. The method of claim 1 , further comprising:

receiving, from the user at the user interface, a request to deploy the data package in the target database environment; and

triggering deployment of the data package in the target database environment based at least in part on the request.

3. The method of claim 2 , further comprising:

generating the first set of data objects and the subset of the second set of data objects from the selection in the target database environment based at least in part on triggering deployment of the data package.

4. The method of claim 1 , further comprising:

generating the mapping between one or more data fields associated with the first set of data objects and one or more data fields associated with the second set of data objects.

5. The method of claim 1 , wherein:

the user is associated with a tenant of a multi-tenant system;

the source database environment corresponds to a test database environment of the tenant; and

the target database environment corresponds to a production database environment of the tenant.

6. The method of claim 1 , further comprising:

receiving, from the user at the user interface, a request to modify the first configuration in the source database environment prior to generation of the data package.

7. The method of claim 1 , wherein the data package comprises metadata associated with one or more data streams, metadata associated with one or more data models related to the one or more data streams, activation metadata associated with the target database environment, or a combination thereof.

8. The method of claim 1 , wherein:

the first set of data objects comprises one or more data streams; and

the second set of data objects comprises one or more data lakes associated with the one or more data streams, one or more data models associated with the one or more data streams, one or more data actions associated with the one or more data streams, or a combination thereof.

9. The method of claim 1 , wherein the data package comprises a set of rules for performing a segmentation procedure on a plurality of data records stored in the target database environment, a set of rules for performing a match and merge procedure on the plurality of data records stored in the target database environment, or both.

10. The method of claim 1 , wherein receiving the selection from the user comprises:

receiving, from the user at the user interface, a selection of a calculated insight definition for inclusion in the data package, the calculated insight definition comprising a name field, an activation status field, a last run time field, a last run status field, a user identifier associated with the calculated insight definition, a creation date field, a last modified date field, or a combination thereof.

11. The method of claim 10 , further comprising:

generating a plurality of calculated insight metrics for display in the target database environment based at least in part on the calculated insight definition and on a plurality of data records stored in the target database environment.

12. The method of claim 1 , wherein receiving the selection from the user comprises:

receiving, from the user at the user interface, a selection of a data stream definition for inclusion in the data package, the data stream definition comprising a name field, a connector type field, an activation status field, a last run status field, a last process records field, a total records field, a last refreshed field, or a combination thereof.

13. The method of claim 12 , further comprising:

generating a data stream in the target database environment based at least in part on the data stream definition and on a plurality of data records stored in the target database environment.

14. The method of claim 1 , wherein receiving the selection from the user comprises:

receiving, from the user at the user interface, a selection of one or more match and merge rules for inclusion in the data package, the one or more match and merge rules defining criteria for combining a plurality of data records stored in the target database environment.

15. The method of claim 1 , further comprising:

updating the data package in the target database environment; and

transmitting, to the user at the user interface, an indication that an updated version of the data package is available for deployment in the target database environment.

16. The method of claim 15 , further comprising:

receiving, from the user at the user interface, a request to deploy the updated version of the data package; and

triggering deployment of the updated version of the data package in the target database environment based at least in part on the request.

17. The method of claim 1 , further comprising:

automatically triggering deployment of an updated version of the data package in the target database environment based at least in part on a second configuration.

18. An apparatus for generating a data package for deployment in a target database environment, comprising:

a processor;

memory coupled with the processor; and

instructions stored in the memory and executable by the processor to cause the apparatus to:

receive, from a user via a user interface, a request to generate the data package, the request indicating a first set of data objects from a first configuration associated with a source database environment different from the target database environment;

determine that a second set of data objects from the first configuration are related to the first set of data objects based at least in part on the request and a mapping between the first set of data objects and the second set of data objects in the source database environment;

transmit an indication of the second set of data objects that are related to the first set of data objects;

receive, from the user via the user interface, a selection of a subset of the second set of data objects for inclusion in the data package; and

generate the data package in association with migrating the first configuration from the source database environment to the target database environment, the data package comprising metadata associated with the first set of data objects and the subset of the second set of data objects from the source database environment.

19. The apparatus of claim 18 , wherein the instructions are further executable by the processor to cause the apparatus to:

receive, from the user at the user interface, a request to deploy the data package in the target database environment; and

trigger deployment of the data package in the target database environment based at least in part on the request.

20. A non-transitory computer-readable medium storing code for generating a data package for deployment in a target database environment, the code comprising instructions executable by a processor to:

receive, from a user via a user interface, a request to generate the data package, the request indicating a first set of data objects from a first configuration associated with a source database environment different from the target database environment;

determine that a second set of data objects from the first configuration are related to the first set of data objects based at least in part on the request and a mapping between the first set of data objects and the second set of data objects in the source database environment;

transmit an indication of the second set of data objects that are related to the first set of data objects;

receive, from the user via the user interface, a selection of a subset of the second set of data objects for inclusion in the data package; and

generate the data package in association with migrating the first configuration from the source database environment to the target database environment, the data package comprising metadata associated with the first set of data objects and the subset of the second set of data objects from the source database environment.

Assignments (3)
CHANGE OF NAME Recorded Apr 11, 2023
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 063297/0320 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INVENTOR LIST TO INCLUDE THE THIRD INVENTOR "NAVEEN SIGNH JAUNK" INADVERTANTLY EXCLUDED FROM THE ASSIGNMENT PREVIOUSLY RECORDED AT REEL: 058763 FRAME: 0880. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 3, 2022
From: BHUTANI, SAHIL; YEH, WILLIAM; JAUNK, NAVEEN SINGH
To: SALESFORCE.COM, INC.
Reel/Frame 058982/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2022
From: BHUTANI, SAHIL; YEH, WILLIAM
To: SALESFORCE.COM, INC.
Reel/Frame 058763/0880 →
Continuity (1)
Related Publication 20230236816A1 · Jul 27, 2023