US 12,405,962 B2
System and method for customization in an analytic applications environment
Balaji Krishnan, Fremont, CA (US); Matthew Bedin, Denver, CO (US); Saurabh Verma, Cupertino, CA (US); Ananth Venkata, San Ramon, CA (US); Joseph Kuttikat, Bengaluru (IN); and Pavan Ananthamurthy, Bengaluru (IN)
Assigned to ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed by ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed on May 6, 2020, as Appl. No. 16/868,081.
Claims priority of provisional application 62/844,004, filed on May 6, 2019.
Prior Publication US 2020/0356575 A1, Nov. 12, 2020
Int. Cl. G06F 16/25 (2019.01); G06F 8/65 (2018.01)
CPC G06F 16/254 (2019.01) [G06F 8/65 (2013.01)] 13 Claims
OG exemplary drawing
 
1. A system for providing extensibility and customization in an analytic applications environment, comprising:
a computer including one or more processors, that provides access by an analytic applications environment to a data warehouse for storage of data by a plurality of tenants;
wherein each tenant of the plurality of tenants is associated with a customer tenancy, and with a tenant-specific customer schema maintained within their customer tenancy, for use in populating a data warehouse instance;
wherein the system performs an extract, transform, load or other data pipeline or process as defined by a combination of an analytic applications schema shared by the plurality of tenants and the tenant-specific customer schema associated with a tenant, to receive data from the tenant's enterprise software application or data environment, for loading into a data warehouse instance, and populate the data warehouse instance with the data received from the tenant's enterprise software application or data environment as defined by the combination of the analytic applications schema and the tenant-specific customer schema; and
a semantic layer that enables use of custom semantic extensions to extend a packaged semantic model, and provides custom content at a presentation layer, wherein the semantic layer includes:
an initial version of a semantic model usable to provide a packaged content, to access the data loaded from the tenant's enterprise software application or data environment, as defined by the combination of the analytic applications schema and the tenant-specific customer schema, into their data warehouse instance, and provide a packaged content to the presentation layer; and
one or more semantic extensions that when merged with the initial version of the semantic model, operate to modify operation of the semantic model and provide a custom content to the presentation layer, wherein each of a plurality of users are provided with an instance of the semantic model to provide modifications as extensions or customizations thereto as a separate branch, wherein the extensions or customizations provided by the plurality of users are then merged into the semantic model;
wherein the custom content is customized on a per tenant basis, for different tenants of the plurality of tenants, as determined by the semantic model including the extensions or customizations thereto;
wherein the presentation layer provides access to data in the data warehouse instance for each of the different tenants using the tenant's custom content at the presentation layer;
wherein an extension wizard provides instructions indicative of guided steps through customization and use of the custom semantic extensions and enables the user to edit or create a customization branch to extend or customize the semantic model, wherein selection of the branch provides the user with an instance of the semantic model to work with and incorporate their particular customizations or extensions, which customizations or extensions can then be promoted to a production environment;
wherein in response to immutable aspects of the semantic model being patched or updated, customizations provided as the custom semantic extensions are retained and automatically applied following the patch or update.