CN116438528A - 用于在分析应用环境中的语义模型动作集和重放的系统和方法 - Google Patents
用于在分析应用环境中的语义模型动作集和重放的系统和方法 Download PDFInfo
- Publication number
- CN116438528A CN116438528A CN202180073726.6A CN202180073726A CN116438528A CN 116438528 A CN116438528 A CN 116438528A CN 202180073726 A CN202180073726 A CN 202180073726A CN 116438528 A CN116438528 A CN 116438528A
- Authority
- CN
- China
- Prior art keywords
- data
- changes
- semantic
- semantic model
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2448—Query languages for particular applications; for extensibility, e.g. user defined types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/213—Schema design and management with details for schema evolution support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
根据实施例,本文描述的是用于在分析应用环境中提供可扩展性的系统和方法,包括使得能够使用自定义语义扩展来扩展语义数据模型(语义模型)的语义层。根据实施例,当对语义模型进行定制时,系统将对语义模型的改变存储为动作集,而不是改变的状态。这允许系统在工厂模型上重放改变,以返回到期望的最终状态,就像操作系统更新不会影响底层设置一样。
Description
版权声明
本专利文档的公开内容的一部分包含受版权保护的素材。版权拥有者不反对任何人对专利文档或专利公开内容按照它在专利商标局的专利文件或记录中出现的那样进行传真复制,但是除此之外在任何情况下都保留所有版权。
优先权要求
本申请要求于2020年9月25日提交的申请号为63/083,319的标题为“SYSTEM ANDMETHOD FOR EXTENSIBILITY IN AN ANALYTIC APPLICATIONS ENVIRONMENT”的美国临时专利申请;于2021年7月15日提交的申请号为17/376,890的标题为“SYSTEM AND METHOD FOREXTENSIBILITY IN AN ANALYTIC APPLICATIONS ENVIRONMENT”的美国专利申请;于2021年7月15日提交的申请号为17/376,895的标题为“SYSTEM AND METHOD FOR USE OF AFRAGMENTED QUERY MODEL IN AN ANALYTIC APPLICATIONS ENVIRONMENT”的美国专利申请;以及于2021年7月15日提交的申请号为17/376,903的标题为“SYSTEM AND METHOD FORSEMANTIC MODEL ACTION SETS AND REPLAY IN AN ANALYTIC APPLICATIONSENVIRONMENT”的美国专利申请的优先权权益;这些申请中的每一个都通过引用并入本文。
技术领域
本文描述的实施例一般而言涉及计算机数据分析以及提供商业智能数据的基于计算机的方法,并且特别地涉及用于在分析应用环境中提供可扩展性的系统和方法。
背景技术
一般而言,在组织内,数据分析使得能够对大量数据进行基于计算机的检查或分析,以便从该数据中得出结论或其它信息;而商业智能工具向组织的商业用户提供描述其企业数据的信息,这些信息采用使得这些商业用户能够做出战略性商业决策的格式。
越来越有兴趣开发在组织的企业软件应用或数据环境(诸如,例如Oracle融合应用(Oracle Fusion Applications)环境或其它类型企业软件应用或数据环境)的上下文内;或在软件即服务(SaaS)或云环境(诸如,例如Oracle分析云(Oracle Analytics Cloud)或Oracle云基础设施(Oracle Cloud Infrastructure)环境或其它类型的云环境)的上下文内利用数据分析的使用的软件应用。
但是,出于提供数据分析或商业智能数据或开发软件分析应用的目的,数据分析环境的不同客户可能对其数据如何被分类、聚合或变换有不同的要求。
发明内容
根据实施例,本文描述了一种用于在分析应用环境中提供可扩展性的系统和方法。为了支持客户关于如何对其数据进行分类、聚合或变换的要求,以出于提供数据分析或商业智能数据或开发软件分析应用的目的,系统可以包括语义层,该语义层使得能够使用自定义语义扩展来扩展语义数据模型(语义模型)。
根据实施例,使用分层方法执行对开箱即用语义模型的定制,其中用于语义模型的工厂代码保持不变,客户可编辑的改变/增量在那个模型的上层,使得在必要时可以修补/撤销改变。
根据实施例,系统使得能够使用分段查询模型—当对语义模型进行定制时,系统可以在运行时生成查询时动态地合并来自各种增量的改变,以基于扩展的语义模型动态地显露(surface)适当的数据。
根据实施例,当对语义模型进行定制时,系统将对语义模型的改变存储为动作集,而不是改变的状态。这允许系统在工厂模型上重放改变,以返回到期望的最终状态,就像操作系统更新不影响底层设置一样。
附图说明
图1图示了根据实施例的用于提供分析应用环境的系统。
图2进一步图示了根据实施例的用于提供分析应用环境的系统。
图3进一步图示了根据实施例的用于提供分析应用环境的系统。
图4进一步图示了根据实施例的用于提供分析应用环境的系统。
图5进一步图示了根据实施例的用于提供分析应用环境的系统。
图6进一步图示了根据实施例的用于提供分析应用环境的系统。
图7进一步图示了根据实施例的用于提供分析应用环境的系统。
图8进一步图示了根据实施例的用于提供分析应用环境的系统。
图9进一步图示了根据实施例的用于提供分析应用环境的系统。
图10图示了根据实施例的用于提供分析应用环境的方法的流程图。
图11图示了根据实施例的用于在分析应用环境中支持可扩展性和定制的系统。
图12进一步图示了根据实施例的在分析应用环境中的可扩展性和定制。
图13图示了根据实施例的在定制或扩展分析应用环境中对多个用户的支持。
图14进一步图示了根据实施例的在定制或扩展分析应用环境中对多个用户的支持。
图15进一步图示了根据实施例的在定制或扩展分析应用环境中对多个用户的支持。
图16进一步图示了根据实施例的在定制或扩展分析应用环境中对多个用户的支持。
图17图示了根据实施例的语义模型构建的分层方法。
图18进一步图示了根据实施例的语义模型构建的分层方法。
图19图示了根据实施例的分层扩展在分析应用环境中的使用。
图20进一步图示了根据实施例的分层扩展在分析应用环境中的使用。
图21进一步图示了分层扩展在分析应用环境中的使用。
图22图示了根据实施例的在分析应用环境中使用分层扩展的处理。
图23图示了根据实施例的分段查询模型的使用。
图24进一步图示了根据实施例的分段查询模型的使用。
图25进一步图示了根据实施例的分段查询模型的使用。
图26图示了根据实施例的使用分段查询模型的处理。
图27图示了根据实施例的使用动作重放集来提供可扩展性。
图28进一步图示了根据实施例的使用动作重放集来提供可扩展性。
图29进一步图示了根据实施例的使用动作重放集来提供可扩展性。
图30图示了根据实施例的在分析应用环境中进行语义模型动作重放的处理。
具体实施方式
如上所述,在组织内,数据分析使得能够对大量数据进行基于计算机的检查或分析,以便从该数据中得出结论或其它信息;而商业智能工具向组织的商业用户提供描述其企业数据的信息,这些信息采用可以使得这些商业用户能够做出战略性商业决策的格式。
越来越有兴趣开发在组织的企业软件应用或数据环境(诸如,例如Oracle融合应用环境或其它类型企业软件应用或数据环境)的上下文内;或在软件即服务(SaaS)或云环境(诸如,例如Oracle分析云或Oracle云基础设施环境或其它类型的云环境)的上下文内利用数据分析的使用的软件应用。
根据实施例,分析应用环境使得能够在组织的企业软件应用或数据环境,或软件即服务或其它类型的云环境的上下文内进行数据分析;并支持开发计算机可执行的软件分析应用。
语义模型/层可扩展性
根据实施例,本文描述了一种用于在分析应用环境中提供可扩展性的系统和方法。为了支持客户关于如何对其数据进行分类、聚合或变换的要求,以出于提供数据分析或商业智能数据或开发软件分析应用的目的,系统可以包括语义层,该语义层使得能够使用自定义语义扩展来扩展语义数据模型(语义模型)。
根据各种实施例,该系统可以包括对诸如分层命名空间、分段模型查询的运行时合并、在不断演化的基础上重放改变或在生产环境中分阶段进行(staging)预期修复之类的特征的支持。
根据实施例,该系统提供了一种基于向导的方法,以在一系列步骤中捕获用户想要对语义模型做什么,然后为用户创建规则集(例如,作为RPD),然后将规则集用于扩展语义模型。例如,向导可以呈现由语义模型指定的某些维度或事实的开箱即用表征,然后用户可以修改那些表征。
根据另一个实施例,在语义模型上工作的多个用户可以在不同的主题领域上操作。多用户开发环境允许多个用户在语义模型的不同分支或扩展上工作。一旦各个分支或扩展完成,系统就将任何改变与整体模型进行比较,并确定是否存在任何冲突,并且如果合适,那么包括锁和队列以评估将哪些分支或扩展包括在最终模型中。
根据另一个实施例,对开箱即用语义模型的定制是使用分层方法执行的,其中用于语义模型的工厂代码保持不变,客户可编辑的改变/增量在那个模型的上层,使得在必要时可以修补/撤销改变。
根据另一个实施例,系统使得能够使用分段查询模型—当对语义模型进行定制时,系统可以在运行时生成查询时动态地合并来自各种增量的改变,以基于扩展的语义模型动态地显露适当的数据。
根据另一个实施例,当对语义模型进行定制时,系统允许将对语义模型的改变存储为动作集,而不是改变的状态。这允许系统在工厂模型上重放改变,以返回到期望的最终状态,就像操作系统更新不影响底层设置一样。
根据另一个实施例,为了支持测试和生产实例的使用—系统可以在测试环境中跟踪对语义模型所做的改变,然后在测试之后将改变远程传送到生产环境中。该系统可以包括锁、安全性和角色映射,以控制如何将改变从测试环境移动到生产环境。
根据另一个实施例,当测试实例被更新到新版本时,对语义模型所做出并被存储为增量的改变将如上所述被重放-但不是立即将改变推送到生产中,当生产环境本身更新到新版本时,改变分阶段进行。当生产被更新到新版本(数据仓库或语义模型的新版本)时,定制的模型和扩展同时被更新。
根据另一个实施例,数据分析环境中的查询常常被推送到BI服务器,然后功能向下运送到数据源中。但是,如果有多个用户对定制/扩展语义模型进行操作,那么他们将需要共享共用的BI服务器。为了提供在语义模型的开发期间使用的数据的预览,系统临时启动(减少/缩减)版本的BI服务器,以提供在开发期间使用的数据预览。
根据实施例,可以提供与分析云环境(分析云)相关联的分析应用环境,诸如例如Oracle分析云(OAC)环境。这种环境提供了可扩展且安全的公共云服务,该服务提供探索和执行协作分析的能力。
根据各种实施例,所描述的方法的技术优势包括定义的扩展或定制可以容忍对底层系统的修补、更新或其它改变。例如,如果语义模型的不可变方面被修补或更新;保留已经作为语义扩展被提供的定制。在修补或更新之后,系统可以自动重放扩展。如果扩展由于对语义模型的底层改变而失败,那么管理员可以评估这些改变并遍历可能的修复。可以优雅地处置潜在的冲突,并且在可能无法完全应用所有扩展的情况下,可以相应地通知管理员。
分析应用环境
根据实施例,数据仓库环境或组件(诸如,例如,Oracle自治数据仓库(ADW)、Oracle自治数据仓库云(ADWC),或适于存储大量数据的其它类型的数据仓库环境或组件)可以提供用于存储由一个或多个业务应用收集的数据的中央储存库。
例如,根据实施例,可以将数据仓库环境或组件提供为采用在线分析处理(OLAP)或其它技术以从多个不同数据源生成与业务相关的数据的多维数据库。组织可以从一个或多个垂直和/或水平业务应用中提取此类与业务相关的数据,并将提取的数据注入到与该组织相关联的数据仓库实例中,
水平业务应用的示例可以包括如上所述的ERP、HCM、CX、SCM和EPM,并跨各种企业组织提供广泛的功能范围。
垂直业务应用的范围通常比水平业务应用窄,但是提供对在定义的范围或行业内的数据链中进一步上下游的数据的访问。垂直业务应用的示例可以包括用于在特定组织内使用的医疗软件或银行软件。
虽然软件供应商越来越多地供应企业软件产品或组件作为SaaS或面向云的产品,诸如,例如,Oracle融合应用;但是其它企业软件产品或组件(诸如,例如,Oracle ADWC)可以作为SaaS、平台即服务(PaaS)或混合订阅中的一种或多种被供应;常规商业智能(BI)应用和处理的企业用户通常面临从其水平和垂直业务应用中提取数据并将提取的数据引入到数据仓库中的任务–这是可能既耗时又耗费资源的处理。
根据实施例,分析应用环境允许客户(租户)开发用于与BI组件(诸如,例如Oracle商业智能应用(OBIA)环境或适于检查源自客户(租户)本身或源自多个第三方实体的大量数据的其它类型的BI组件)一起使用的计算机可执行软件分析应用。
例如,根据实施例,当与包括数据仓库组件的SaaS业务生产力软件产品套件一起使用时,分析应用环境可以用于用来自套件的业务生产力软件应用的数据填充数据仓库组件。预定义的数据集成流可以使业务生产力软件应用和数据仓库之间的数据的ETL处理自动化,该处理原本可能由那些服务的用户按常规方式或手动执行。
作为另一个示例,根据实施例,分析应用环境可以用数据库模式来预先配置,该数据库模式用于存储源自跨SaaS产品套件的各种业务生产力软件应用的整合数据。这种预先配置的数据库模式可以用于提供SaaS产品套件中供应的生产力软件应用和对应的事务数据库的统一性;同时允许用户放弃手动设计、调整和建模所提供的数据仓库的处理。
作为另一个示例,根据实施例,分析应用环境可以用于在各种业务生产力软件应用的上下文中用描述与业务相关的数据对象的相关元数据来预填充数据仓库实例的报告接口,例如,以包括预定义的仪表板(dashboard)、关键绩效指标(KPI)或其它类型的报告。
图1图示了根据实施例的用于提供分析应用环境的系统。
如图1中所示,根据实施例,分析应用环境或分析云(例如,OAC)100可以由计算机系统提供,或以其它方式在计算机系统处操作,该计算机系统具有计算机硬件(例如,处理器、存储器)101,并且包括作为控制平面102和数据平面104操作的一个或多个软件组件,并且提供对数据仓库或数据仓库实例160的访问。
根据实施例,图1中所示的以及如本文关于各种其它实施例进一步描述的组件和处理可以被提供为可由计算机系统或其它类型的处理设备执行的软件或程序代码。
例如,根据实施例,本文描述的组件和处理可以由云计算系统或其它适当编程的计算机系统来提供。
根据实施例,控制平面进行操作以提供对在SaaS或云环境(诸如,例如,Oracle分析云或Oracle云基础设施环境或其它类型的云环境)的上下文内供应的云或其它软件产品的控制。
例如,根据实施例,控制平面可以包括控制台接口110,该控制台接口110使得具有设备硬件12、管理应用14和用户界面16的客户端计算机设备10能够在客户(租户)20和/或具有供应组件111的云环境的控制下进行访问。
根据实施例,控制台接口可以使得操作图形用户界面(GUI)和/或命令行界面(CLI)或其它接口的客户(租户)能够进行访问;和/或可以包括供SaaS或云环境的提供者及其客户(租户)使用的接口。
例如,根据实施例,控制台接口可以提供允许客户供应用于在其SaaS环境内使用的服务以及配置已供应的那些服务的接口。
根据实施例,供应组件可以包括用于供应由供应命令指定的服务的各种功能。
例如,根据实施例,客户(租户)可以经由控制台接口访问和利用供应组件,以购买一套业务生产力软件应用中的一个或多个以及与这些软件应用一起使用的数据仓库实例。
根据实施例,客户(租户)可以请求在数据仓库内供应客户模式164。客户还可以经由控制台接口供应与数据仓库实例相关联的多个属性,包括必需属性(例如,登录凭据)和可选属性(例如,大小或速度)。然后,供应组件可以供应所请求的数据仓库实例,包括数据仓库的客户模式;并使用由客户供应的适当信息来填充数据仓库实例。
根据实施例,供应组件还可以用于例如通过改变或更新针对特定客户(租户)的ETL处理运行的请求频率来更新或编辑数据仓库实例和/或在数据平面处操作的ETL处理。
根据实施例,供应组件还可以包括供应应用编程接口(API)112、多个工作者115、计量管理器116和数据平面API 118,如下面进一步描述的。当在控制台接口处接收到命令、指令或其它输入时,控制台接口可以例如通过进行API调用来与供应API通信,以在SaaS环境内供应服务,或对供应的服务进行配置改变。
根据实施例,数据平面API可以与数据平面通信。
例如,根据实施例,可以经由数据平面API将针对由数据平面提供的服务的供应和配置改变传送到数据平面。
根据实施例,计量管理器可以包括计量通过控制平面供应的服务和服务的使用情况的各种功能。
例如,根据实施例,出于计费目的,计量管理器可以记录针对特定客户(租户)经由控制平面供应的处理器随时间的使用情况。同样,出于计费目的,计量管理器可以记录被分区以供SaaS环境的客户使用的数据仓库的存储空间量。
根据实施例,数据平面可以包括数据管道或处理层120和数据变换层134,它们一起处理来自组织的企业软件应用或数据环境(诸如,例如,在客户(租户)的SaaS环境中供应的业务生产力软件应用)的操作数据或事务数据。数据管道或处理可以包括各种功能,这些功能可以从SaaS环境中供应的业务应用和数据库中提取事务数据,并且然后将变换的数据加载到数据仓库中。
根据实施例,数据变换层可以包括系统用来将从SaaS环境中供应的业务应用和对应的事务数据库接收到的事务数据变换成被分析应用环境理解的模型格式的数据模型,诸如,例如,知识模型(KM)或其它类型的数据模型。可以以适合于存储在数据仓库中的任何数据格式来提供模型格式。
根据实施例,由数据平面提供的数据管道或处理可以包括监视组件122、数据暂存组件124、数据质量组件126和数据投影组件128,如下面进一步描述的。
根据实施例,数据变换层可以包括维度生成组件136、事实生成组件138和聚合生成组件140,如下面进一步描述的。数据平面还可以包括数据和配置用户界面130,以及映射和配置数据库132。
根据实施例,数据仓库可以包括默认分析应用模式(根据一些实施例在本文中称为分析仓库模式)162,并且对于系统的每个客户(租户),可以包括客户模式,如上所述。
根据实施例,数据平面负责执行提取、变换和加载(ETL)操作,包括从组织的企业软件应用或数据环境(诸如,例如,SaaS环境中供应的业务生产力软件应用和对应的事务数据库)中提取事务数据、将提取的数据变换成模型格式,并将变换的数据加载到数据仓库的客户模式中。
例如,根据实施例,环境的每个客户(租户)可以与数据仓库内其自己的客户租赁相关联,该数据仓库与其自己的客户模式相关联;并且可以附加地被提供对分析应用模式的只读访问权限,该分析应用模式可以由数据管道或处理(例如,ETL处理)定期或基于其它方式进行更新。
根据实施例,为了支持多个租户,系统可以使得能够使用多个数据仓库或数据仓库实例。
例如,根据实施例,用于第一租户的第一仓库客户租赁可以包括第一数据库实例、第一暂存区域和多个数据仓库或数据仓库实例中的第一数据仓库实例;而用于第二租户的第二客户租赁可以包括第二数据库实例、第二暂存区域和多个数据仓库或数据仓库实例中的第二数据仓库实例。
根据实施例,可以调度数据管道或处理以一定间隔(例如,每小时/每天/每周)执行以从企业软件应用或数据环境(诸如,例如,在SaaS环境中供应的业务生产力软件应用和对应的事务数据库106)中提取事务数据。
根据实施例,提取处理108可以提取事务数据,其中在提取后数据管道或处理可以将提取的数据插入到数据暂存区域中,该数据暂存区域可以充当提取的数据的临时暂存区域。数据质量组件和数据保护组件可以用于确保提取的数据的完整性。
例如,根据实施例,当数据被临时保持在数据暂存区域中时,数据质量组件可以对提取的数据执行验证。
根据实施例,当提取处理已完成其提取时,数据变换层可以用于开始变换处理,以将提取的数据变换成模型格式以加载到数据仓库的客户模式中。
如上所述,根据实施例,数据管道或处理可以与数据变换层结合操作以将数据变换成模型格式。映射和配置数据库可以存储元数据和数据映射,这些元数据和数据映射定义由数据变换使用的数据模型。数据和配置用户界面(UI)可以促进对映射和配置数据库的访问和改变。
根据实施例,基于在映射和配置数据库中定义的数据模型,监视组件可以确定要变换的若干不同数据集的依赖性。基于确定的依赖性,监视组件可以确定应首先将若干不同数据集中的哪个变换成模型格式。
例如,根据实施例,如果第一模型数据集不包括对任何其它模型数据集的依赖性;并且第二模型数据集包括对第一模型数据集的依赖性;那么监视组件可以确定在变换第二数据集之前变换第一数据集,以适应第二数据集对第一数据集的依赖性。
根据实施例,数据变换层可以例如根据如上所述的数据模型将提取的数据变换成适合于加载到数据仓库的客户模式中的格式。在变换期间,数据变换可以适当地执行维度生成、事实生成和聚合生成。维度生成可以包括生成用于加载到数据仓库实例中的维度或字段。
例如,根据实施例,维度可以包括诸如例如“名称”、“地址”或“年龄”之类的数据类别。事实生成包括数据可以采用的值或“度量”的生成。事实与数据仓库实例中的适当维度相关联。聚合生成包括创建数据映射,该数据映射计算变换的数据到数据仓库实例的客户模式164中的现有数据的聚合。
根据实施例,一旦任何变换就位(如数据模型所定义的),数据管道或处理就可以读取源数据、应用变换,然后将数据推送到数据仓库实例。
根据实施例,数据变换可以用规则表达,并且一旦发生变换,就可以在暂存区域处中间保持值,其中数据质量组件和数据投影组件可以在数据被上传到数据仓库实例处的客户模式之前验证和检查变换的数据的完整性。可以在提取、变换、加载处理运行时例如在多个计算实例或虚拟机处提供监视。在提取、变换、加载处理期间也可以维持依赖性,并且数据管道或处理可以参与此类排序决策。
根据实施例,在变换提取的数据之后,数据管道或处理可以执行仓库加载过程150,以将变换的数据加载到数据仓库实例的客户模式中。将变换的数据加载到客户模式之后,可以分析变换的数据并将其用于各种附加的商业智能处理中。
水平和垂直集成的业务软件应用通常涉及实时捕获数据。这是水平和垂直集成的业务软件应用通常用于日常工作流,并将数据存储在事务数据库中的结果,这意味着通常只有最新近的数据被存储在此类数据库中。
例如,虽然当员工调动办公室时HCM应用可能会更新与该员工相关联的记录,但是这种HCM应用通常不会维护该员工在公司任职期间曾在其中工作的每个办公室的记录。由此,试图确定公司内员工流动性的与BI相关的查询在事务数据库内将没有足够的记录来完成这种查询。
根据实施例,在BI应用易于理解的上下文中,通过存储除水平和垂直集成的业务软件应用生成的当前数据之外的历史数据,如使用上述技术填充的数据仓库实例为BI应用提供了使用例如由业务生产力和分析产品套件或由客户选择的SQL工具提供的接口来处理此类查询的资源。
图2进一步图示了根据实施例的用于提供分析应用环境的系统。
如图2中所示,根据实施例,使用如上所述的数据管道处理,数据可以源自例如客户(租户)的企业软件应用或数据环境(106);或作为源自一个或多个特定于客户的应用107的自定义数据109;并加载到数据仓库实例,在一些示例中包括使用对象存储装置105来存储数据。
根据实施例,数据管道或处理为每个客户(租户)维护分析应用模式,例如作为星型模式,该分析应用模式由系统根据特定分析用例(例如人力资本管理(HCM)分析或企业资源计划(ERP)分析)的最佳实践定期或基于其它方式进行更新。
根据实施例,对于每个客户(租户),系统在分析应用环境(云)租赁114内使用由系统维护和更新的分析应用模式基于对该客户的企业应用环境内以及客户租赁117内的数据的分析来预填充客户的数据仓库实例。由此,系统维护的分析应用模式使得数据能够通过数据管道或处理从客户的环境中检索到,并以“实时”方式加载到客户的数据仓库实例中。
根据实施例,分析应用环境还为环境的每个客户提供易于被客户修改并允许客户补充和利用其自己的数据仓库实例内的数据的客户模式。对于分析应用环境的每个客户,其得到的数据仓库实例作为数据库操作,该数据库的内容部分由客户控制;并且部分由分析应用环境(系统)控制;包括其数据库表现为用已经从其企业应用环境中检索到的适当数据预填充,以解决各种分析用例,例如HCM分析或ERP分析。
例如,根据实施例,数据仓库(例如,Oracle自治数据仓库、ADWC)可以包括分析应用模式,并且对于每个客户/租户,包括源自其企业软件应用或数据环境的客户模式。数据仓库租赁中供应的数据(例如,ADWC租赁)仅可由该租户访问;而同时允许访问共享分析应用环境的各种特征,例如,与ETL相关的特征或其它特征。
根据实施例,为了支持多个客户/租户,该系统使得能够使用多个数据仓库实例;其中例如第一客户租赁可以包括第一数据库实例、第一暂存区域和第一数据仓库实例;并且第二客户租赁可以包括第二数据库实例、第二暂存区域和第二数据仓库实例。
根据实施例,对于特定的客户/租户,在提取其数据后,数据管道或处理可以将提取的数据插入到租户的数据暂存区域中,该数据暂存区域可以充当用于提取的数据的临时暂存区域。可以使用数据质量组件和数据保护组件来确保提取的数据的完整性;例如,通过在将数据临时保持在数据暂存区域中时对提取的数据执行验证。当提取处理完成其提取时,可以使用数据变换层开始变换处理,将提取的数据变换成模型格式,以加载到数据仓库的客户模式中。
图3进一步图示了根据实施例的用于提供分析应用环境的系统。
如图3中所示,根据实施例,使用如上所述的数据管道处理从例如客户(租户)的企业软件应用或数据环境中提取数据的处理;或作为源自一个或多个特定于客户的应用的自定义数据;以及将数据加载到数据仓库实例或刷新数据仓库中的数据通常涉及由ETP服务160或处理(包括由一个或多个计算实例170执行的一个或多个提取服务163;变换服务165;和加载/发布服务167)执行的三个主要阶段。
提取:根据实施例,用于提取的视图对象的列表可以例如经由ReST调用被提交给Oracle BI云连接器(BICC)组件。提取的文件可以被上传到对象存储组件,诸如,例如,Oracle存储服务(OSS)组件,用于存储数据。
变换:根据实施例,变换处理从对象存储组件(例如,OSS)中获取数据文件,并在将数据文件加载到位于数据管道或处理的内部并且不暴露给客户(租户)的目标数据仓库(例如,ADWC数据库)的同时应用业务逻辑。
加载/发布:根据实施例,加载/发布服务或处理从例如ADWC数据库或仓库获取数据,并将其发布到客户(租户)可访问的数据仓库实例。
图4进一步图示了根据实施例的用于提供分析应用环境的系统。
如示出了根据实施例的具有多个租户(客户)的系统的操作的图4中所示,使用如上所述的数据管道处理,数据可以源自例如多个客户(租户的)企业软件应用或数据环境中的每一个;并加载到数据仓库实例。
根据实施例,数据管道或处理为多个客户(租户)(例如客户A180、客户B 182)中的每一个维护由系统根据特定分析用例的最佳实践定期或基于其它方式更新的分析应用模式。
根据实施例,对于多个客户(例如,客户A、B)中的每一个,系统使用由系统维护和更新的分析应用模式162A、162B基于对该客户的企业应用环境106A、106B内以及每个客户的租赁(例如,客户A租赁181、客户B租赁183)内的数据的分析来预填充客户的数据仓库实例;使得数据通过数据管道或处理从客户的环境中被检索,并被加载到客户的数据仓库实例160A、160B。
根据实施例,分析应用环境还为环境的多个客户中的每个客户提供易于被客户修改并允许客户补充和利用其自己的数据仓库实例内的数据的客户模式(例如,客户A模式164A、客户B模式164B)。
如上所述,根据实施例,对于分析应用环境的多个客户中的每个客户,其得到的数据仓库实例作为数据库操作,该数据库的内容部分由客户控制;并且部分由分析应用环境(系统)控制;包括其数据库表现为用已经从其企业应用环境中检索到的适当数据预填充,以处理各种分析用例。当针对特定客户的提取处理108A、108B已经完成其提取之后,可以使用数据变换层开始变换处理,以将提取的数据变换成模型格式,以加载到数据仓库的客户模式中。
图5进一步图示了根据实施例的用于提供分析应用环境的系统。
根据实施例,激活计划186可以用于控制针对特定功能区域的客户的数据管道或处理服务的操作,以解决该客户(租户)的特定需求。
例如,根据实施例,激活计划可以定义以特定顺序、在一天中的特定时间,以及在特定时间窗口内运行的多个提取、变换和加载(发布)服务或步骤。
根据实施例,每个客户可以与其自己的(一个或多个)激活计划相关联。例如,第一个客户A的激活计划可以确定要从该客户的企业软件应用环境(例如,其融合应用环境)中检索的表,或者确定如何按顺序运行服务及其处理;而第二个客户B的激活计划可以同样确定要从该客户的企业软件应用环境中检索的表,或者确定如何按顺序运行服务及其处理。
根据实施例,激活计划可以被存储在映射和配置数据库中,并且可由客户经由数据和配置UI进行定制。每个客户可以有多个激活计划。根据其激活计划为各种客户执行ETL处理的计算实例/服务(虚拟机)可以专用于特定服务以使用激活计划,并且然后被释放以供其它服务和激活计划使用。
根据实施例,基于对一段时间内记录的历史性能数据的确定,系统可以例如针对与特定租户相关联的一个或多个功能区域,或者跨与多个租户相关联的一系列激活计划来优化激活计划的执行,以解决这些租户对VM和服务级别协议(SLA)的利用。这样的历史数据可以包括加载量和加载时间的统计数据。
例如,根据实施例,历史数据可以包括提取大小、提取计数、提取时间、仓库大小、变换时间、发布(加载)时间、视图对象提取大小、视图对象提取记录计数、视图对象提取时间、仓库表计数、为表处理的记录计数、仓库表变换时间、发布表计数和发布时间。这样的历史数据可以用于估计和计划当前和将来的激活计划,以便组织各种任务,诸如,例如,以顺序或并行运行,以达到运行激活计划的最小时间。此外,收集的历史数据可以用于跨租户的多个激活计划进行优化。在一些实施例中,基于历史数据的激活计划(即,特定的作业序列,诸如ETL)的优化可以是自动的。
图6进一步图示了根据实施例的用于提供分析应用环境的系统。
如图6中所示,根据实施例,该系统使得由(例如,Oracle)管理的租赁内的数据配置/管理/ETL//状态服务190控制的数据能够从每个客户的企业软件应用环境(例如,其融合应用环境)(在这个示例中,包括BICC组件)经由存储云服务192(例如,OSS)流动,并且从那里流到数据仓库实例。
如上所述,根据实施例,数据的流动可以由一个或多个服务(包括例如如上所述的提取服务和变换服务)并且参考ETL储存库193来管理,ETL储存库193从存储云服务中获取数据,并将数据加载到在数据管道或处理内部并且不暴露给客户的内部目标数据仓库(例如,ADWC数据库)194中。
根据实施例,将数据分阶段移动到数据仓库中,然后移动到数据库表改变日志195中,从那里加载/发布服务可以将客户数据加载到在其客户租赁内与客户相关联并可由客户访问的目标数据仓库实例中。
图7进一步图示了根据实施例的用于提供分析应用环境的系统。
根据实施例,从企业应用提取、变换和加载数据到数据仓库实例涉及多个阶段,并且每个阶段可以具有若干个顺序或并行作业;并且在不同的空间/硬件上运行,包括用于每个客户的不同的暂存区域196、198。
图8进一步图示了根据实施例的用于提供分析应用环境的系统。
如图8中所示,根据实施例,计量管理器可以包括计量通过控制平面供应的服务以及服务的使用情况并提供供应的度量142的功能。
例如,出于计费目的,计量管理器可以记录经由控制平面针对特定客户供应的处理器在一段时间内的使用情况。同样,出于计费目的,计量管理器可以记录被分区以供SaaS环境的客户使用的数据仓库的存储空间量。
图9进一步图示了根据实施例的用于提供分析应用环境的系统。
如图9中所示,根据实施例,除了可以使用如上所述的数据管道处理源自例如客户的企业软件应用或数据环境的数据之外,源自一个或多个特定于客户的应用107A、107B的一个或多个附加自定义数据109A、109B也可以使用以下任一种被提取、变换和加载到数据仓库实例:如上所述的数据管道处理,在一些示例中包括使用对象存储装置来存储数据;和/或从客户的角度可变的自定义ETL或其它处理144。一旦数据被加载到其数据仓库实例中,客户就可以创建将来自其客户模式和软件分析应用模式的表进行合并的业务数据库视图;并且可以使用例如由业务生产力和分析产品套件或由客户选择的SQL工具提供的接口来查询其数据仓库实例。
图10图示了根据实施例的用于提供分析应用环境的方法的流程图。
如图10中所示,根据实施例,在步骤200处,分析应用环境提供多个租户对用于存储数据的数据仓库的访问,其中该数据仓库与分析应用模式相关联。
在步骤202处,多个租户中的每个租户与客户租赁以及与该租户在填充数据仓库实例时使用的客户模式相关联。
在步骤204处,用从企业软件应用或数据环境接收的数据填充数据仓库的实例,其中与分析应用环境的特定租户相关联的数据根据与该特定租户相关联的分析应用模式和客户模式在与该特定租户相关联并可由该特定租户访问的数据仓库实例中被供应。
可扩展性和定制
出于提供数据分析或商业智能数据或开发软件分析应用的目的,数据分析环境的不同客户在如何分类、聚合或变换其数据方面可能有不同的要求。
根据实施例,为了支持这样的不同要求,系统可以包括语义层,该语义层使得能够使用自定义语义扩展来扩展语义数据模型(语义模型),并在表示层提供自定义内容。扩展向导或开发环境可以通过定义分支和步骤来引导用户使用自定义的语义扩展来扩展或定制语义模型,然后将扩展的或定制的语义模型提升到生产环境。
根据各种实施例,所描述的方法的技术优点包括对附加类型的数据源的支持。例如,用户可以基于源自第一供应商产品的ERP数据和源自第二不同供应商产品的HCM数据的组合;或基于从具有不同监管要求的多个数据源接收到的数据的组合来执行数据分析。用户定义的扩展或定制可以容忍对底层系统的修补、更新或其它改变。
图11图示了根据实施例的用于在分析应用环境中支持可扩展性和定制的系统。
根据实施例,语义层可以包括定义客户数据的语义模型的数据;这在帮助用户使用通常被理解的业务术语理解和访问该数据时是有用的。语义层可以包括映射到物理数据模型或数据平面的物理层;作为其中可以定义计算的映射或变换层进行操作的逻辑层;以及使得用户能够访问作为内容的数据的表示层。
如图11中所示,根据实施例,语义层230可以包括可以用于提供打包的内容234的打包(开箱即用(out-of-the-box)、初始)的语义模型232。例如,系统可以使用如上所述的ETL或其它数据管道或处理将数据从客户的企业软件应用或数据环境加载到数据仓库实例中,其中打包的语义模型可以用于将打包的内容提供给表示层。
根据实施例,语义层还可以与一个或多个语义扩展236相关联,该一个或多个语义扩展236可以用于扩展打包的语义模型,并向表示层240提供自定义内容238。
根据实施例,表示层可以使得能够使用例如软件分析应用、用户界面、仪表板、关键绩效指标(KPI)242;或如可以由诸如例如Oracle分析云或Oracle应用分析(OracleAnalytics for Applications)之类的产品提供的其它类型的报告或接口来访问数据内容。
根据实施例,除了上述使用ETL或其它数据管道或处理源自客户的环境的数据之外;还可以使用提供进一步的可扩展性和定制的机会的各种数据模型或场景将客户数据加载到数据仓库实例中。
基于向导的可扩展性
根据实施例,系统提供了一种基于向导的方法,以在一系列步骤中捕获用户想要对语义模型做什么,然后为用户创建规则集(例如,作为RPD),然后该规则集被用于扩展语义模型。例如,向导可以呈现由语义模型指定的某些维度或事实的开箱即用表征,然后用户可以修改那些表征。
为了提供数据分析或商业智能数据,或开发软件分析应用的目的,数据分析环境的不同客户可以关于其数据如何被分类、聚合或变换具有不同的要求。
根据实施例,为了支持这些不同的需求,系统可以包括语义层,该语义层使得能够使用自定义语义扩展来扩展语义数据模型(语义模型),并在表示层提供自定义内容。扩展向导或开发环境可以通过分支和扩展的定义来引导用户使用自定义语义扩展来扩展或定制语义模型,然后将扩展或定制的语义模型提升到生产环境。
图12进一步图示了根据实施例的在分析应用环境中的可扩展性和定制。
如图12中所示,根据实施例,用户或其它实体(例如,分析云提供者或系统提供者)可以使用一个或多个自定义语义扩展来扩展或定制语义模型250,然后系统可以使用该语义模型来向表示层提供自定义内容。
例如,根据实施例,用户可以使用具有设备硬件254和用户界面256的客户端(计算机)设备252与引导用户进行自定义语义扩展的定制和使用的扩展向导258或软件开发组件进行交互或以其它方式进行操作。
根据实施例,用户可以编辑或创建新的定制分支260,以扩展或定制语义模型。分支的选择向用户提供了用于一起工作并且并入了其特定的定制或扩展的语义模型的实例。每个分支均作为原子工作单元操作,并且可以包括与定制类型和对应扩展相关联的一个或多个定制步骤。扩展向导可以是数据感知的,并在定制分支时提供底层数据的预览。例如,当用户指定要定制的特定分支时,扩展向导可以呈现示例数据表供用户审查;并且此后引导用户进行定制(例如,用于与数据一起使用的定义或聚合)。不同类型的分支可以与不同的扩展向导相关联。
如图12中进一步所示,根据实施例,扩展向导可以引导用户进行动作261以编辑/添加一个或多个定制步骤262、选择定制类型263以及完成/填充适当的扩展向导264。在每个步骤处,扩展向导可以向用户呈现一个或多个向导屏幕,以供审查或完成;取决于扩展的类型向导屏幕可能不同。在成功完成一个步骤后,用户可以测试其对分支的定制,添加更多步骤,或应用265其改变。然后可以将定制的分支合并266到(主)语义模型中。
如图12中进一步所示,根据实施例,系统可以发布(267)和/或提升(268)对语义模型的改变,例如,作为Oracle BI储存库(RPD)文件或其它类型的文件或元数据。
根据实施例,例如,在Oracle环境中,语义模型可以被定义为BI储存库(RPD)文件,其具有定义逻辑模式、物理模式、物理到逻辑映射、聚合表导航和/或实现语义模型的各种物理层、业务模型和映射层及表示层方面的其它构造的元数据。
根据实施例,客户可以,例如通过添加与存储在他们的数据仓库实例中的数据相关联的自定义事实或维度,对他们的数据源模型执行修改以支持他们的特定需求;并且系统可以相应地扩展语义模型。
例如,根据实施例,系统可以使用语义模型扩展处理以便以编程方式内省客户的数据并确定自定义事实、自定义维度或已经对数据源模型进行的其它定制或扩展,然后使用适当的流程自动修改或扩展语义模型以支持那些定制或扩展。
对多用户的支持
根据另一个实施例,在语义模型上工作的多个用户可以在不同的主题区域上操作。多用户开发环境允许多个用户在语义模型的不同分支或扩展上工作。一旦各个分支或扩展完成,系统就将任何改变与整体模型进行比较,并确定是否存在任何冲突,如果合适,那么包括锁和队列以评估将哪些分支或扩展包括在最终模型中。
在典型的企业组织内,可能有许多用户负责开发软件分析应用或生成数据分析或商业智能数据。为了支持这方面,根据实施例,该系统使得多个用户能够同时工作以开发对语义模型的扩展或定制,其中改变最终被合并到(主)语义模型中。
图13-图16图示了根据实施例的在定制或扩展分析应用环境中对多个用户的支持。
如图13-图16所示中,根据实施例,多个用户A-D中的每一个可以使用如上所述的一个或多个自定义语义扩展在语义模型的实例上工作,以提供修改282、284、286、288作为对语义模型的扩展或定制。
例如,如图13中所示,根据实施例,随着每个用户完成,他们可以将其定制合并到(主)语义模型中。例如,第一用户A可能希望创建与定制金融应用总分类账(GL)获利能力相关的新分支,包括添加区域维度(步骤1);扩展成本中心维度(步骤2);定义地域层次结构(步骤3);以及添加差旅费用计算(步骤4)。然后,用户A的定制可以被应用并合并到(主)语义模型中。
如图14中所示,根据实施例,第二用户B可能希望创建与定制GL明细事务相关的新分支,包括添加地域维度(步骤1);以及添加期初金额计算(步骤2);而第三用户C可能希望创建与定制GL结余表相关的新分支,包括添加位置维度(步骤1);添加库存现金计算(步骤2);以及创建GL汇总主题区域(布置3)。由用户B和C中的每个用户提供的定制可以类似地被应用并合并到(主)语义模型中。
如图15中所示,根据实施例,多个用户A-D中的每个用户都可以使用如上所述的一个或多个自定义语义扩展在语义模型的实例上工作,以提供作为对语义模型的扩展或定制的修改。
如图16中所示,根据实施例,系统可以支持语义模型的不同版本,包括确定语义模型是否准备好提升到生产环境。例如,当上述每个用户针对语义模型的初始版本(v1.0)开发定制时,第四用户D可以开始在用于语义模型的新版本(v1.1)的新分支或扩展上工作,包括例如添加战略供应商维度或扩展区域维度。
根据实施例,系统可以控制在创建报告时使用的语义模型的定义改变(例如,收益的定义中的改变),以确保准确生成商务智能数据。例如,根据实施例,系统可以确保语义模型扩展最初仅在开发/测试环境中被允许,并且在生产环境中不被允许,直到管理员可以将那些定制以可控的方式提升到生产环境。
根据实施例,管理员可以使用具有管理员界面290的客户端(计算机)设备来控制将对语义模型的任何用户开发的定制到生产环境的提升。
所描述方法的优点包括用户定义的扩展或定制可以容忍对底层系统的修补、更新或其它改变。如果语义模型的不可变方面被修补或更新;那么已作为语义扩展被提供的定制被保留。在修补或更新后,系统可以自动重放扩展。如果扩展由于对语义模型的底层改变而失败,那么管理员可以评估改变并遍历可能的修复。潜在的冲突可以被优雅地处理,并且在可能无法完全应用所有扩展的情况下,可以相应地通知管理员。
语义模型构建的分层方法
根据另一个实施例,使用分层方法执行对开箱即用语义模型的定制,其中用于语义模型的工厂代码保持不变,客户可编辑的改变/增量在那个模型的上层,使得在必要时可以修补/撤销改变。为了支持语义模型的构建和存储,系统可以包括对分层命名空间的支持。
图17图示了根据实施例的语义模型构建的分层方法。
如图17中所示,根据实施例,由用户在他们在语义模型的实例上工作时提供和/或由诸如分析云提供者或系统提供者之类的其它实体提供的从初始版本或主分支291开始的每个修改可以被用于产生对语义模型的定制或扩展,诸如例如工厂模型(模型的工厂版本)292、系统扩展294、用户扩展296,或安全性扩展298。
根据实施例,可以定义和存储语义模型,例如作为Oracle BI储存库(RPD)文件或其它类型的文件或元数据,并且可以将对语义模型的改变作为指示那些改变的XML文件的形式的人工制品提供。
图18进一步图示了根据实施例的语义模型构建的分层方法。
如图18中所示,根据实施例,可以通过提交以增量方式执行对语义模型的定制或扩展。
例如,当分析云提供者(例如,Oracle)对语义模型进行改变时,该改变可以记录在(提交到)语义模型的适当层或命名空间中。类似地,当系统提供者对语义模型进行改变时,由系统提供者所做的改变可以记录在(提交到)语义模型的适当层或命名空间中,同时考虑分析云提供者所做的改变。
图19图示了根据实施例的分层扩展在分析应用环境中的使用。
如图19中所示,根据实施例,系统可以支持可扩展性,以及基于表示多个分层扩展层的版本控制的人工制品对扩展的创建和管理。可以在每个扩展层内对多个扩展人工制品中的每一个独立地进行版本控制。该系统还可以支持对每个扩展层的单独所有权。
如上所述,根据实施例,用户或其它实体(例如,分析云提供者或系统提供者)可以使用一个或多个自定义语义扩展来扩展或定制语义模型,其然后可以被系统用于向表示层提供自定义内容。
例如,用户可以与扩展向导或软件开发组件交互或以其它方式操作扩展向导或软件开发组件,该扩展向导或软件开发组件指导用户进行自定义语义扩展的定制和使用以扩展或定制语义模型。语义层还可以与由云提供者、系统提供者或其他用户提供的一个或多个语义扩展相关联,该一个或多个语义扩展可以被用于扩展打包的语义模型,并向表示层提供自定义内容。
根据实施例,可以提供对表示分层的命名空间和对语义模型的改变的多层人工制品进行版本控制的各种方法。例如,如果人工制品作为XML文件提供,那么XML可以被分解成几个区域,例如三个区域;并且每一层,比如云提供者、系统提供者和用户层,都可以拥有三分之一的区域。在每一层内,可以通过提交以增量方式执行改变。系统可以支持使用多个区域和层(即,它不需要是1:1的关系)。
如图19的示例中所示,当分析云提供者(例如,Oracle)对语义模型进行改变时,可以将改变作为分析云提供者对语义模型的改变记录在分层的命名空间的适当区域(层1)中,作为“增量提交X1”。
如图19的示例中进一步所示,当系统提供者对语义模型进行改变时,由于语义模型已经如上所述被分析云提供者引入的改变(∑X)修改,因此系统提供者所做的改变作为系统提供者所做的改变以及分析云提供者所做的改变被记录在分层的命名空间的适当区域(层2)中,作为“增量提交∑X+Y1”。
图20进一步图示了根据实施例的分层扩展在分析应用环境中的使用。
如图20的示例中所示,当分析云提供者对语义模型进行另一次改变时,可以将后续改变作为由分析云提供者对语义模型的改变记录在分层的命名空间的适当区域(层1)中,作为“增量提交X2”。
如图20的示例中进一步所示,当系统提供者对语义模型进行另一个改变时,由于语义模型已经如上所述被分析云提供者引入的改变(∑X)修改,因此系统提供者所做的后续改变作为系统提供者所做的改变以及分析云提供者所做的每个改变被记录在分层的命名空间的适当区域(层2)中,作为“增量提交∑X+Y2”。
图21进一步图示了分层扩展在分析应用环境中的使用。
如图21的示例中所示,当分析云提供者对语义模型进行另一次改变时,后续改变可以作为分析云提供者对语义模型的改变同样记录在分层的命名空间的适当区域(层1)中,作为“增量提交X3”。
如图21的示例中进一步所示,当系统提供者对语义模型进行另一次改变时,由于语义模型已经如上所述被分析云提供者引入的改变(∑X)修改,因此系统提供者所做的后续改变作为系统提供者所做的改变以及分析云提供者所做的每个改变被记录在分层的命名空间的适当区域(层2)中,作为“增量提交∑X+Y3”。
类似地,如图21的示例中所示,当用户对语义模型进行改变时,由于语义模型已经被分析云提供者引入的改变修改(∑X),随后由系统提供者修改(∑XY),因此用户所做的后续改变作为用户所做的改变以及分析云提供者和系统提供者所做的每个改变被记录在分层的命名空间的适当区域(层3)中,作为“增量提交∑X+∑Y+Z1”。
对于分析云提供者、系统提供者或其他用户对语义模型的附加改变,可以继续或重复该处理,以例如将附加改变记录为“增量提交∑X+∑Y+Z2”;“增量提交∑X+∑Y+Z3”,等等。
所述方法的优点包括定义的扩展可以容忍底层系统的修补、更新或其它改变。如果语义模型的不可变方面被修补或更新;那么语义扩展可以保留,或者在适当的情况下反转。
图22图示了根据实施例在分析应用环境中使用分层扩展的过程。
如图22中所示,根据实施例,在步骤312处,提供计算机系统,该计算机系统具有计算机硬件(例如,处理器、存储器)并提供对数据库或数据仓库、适于响应于请求而提供数据分析的分析应用环境的访问。
在步骤314处,系统提供语义层,该语义层使语义扩展能够扩展语义数据模型(语义模型),用于在表示层处提供数据分析作为自定义内容。
在步骤316处,系统结合语义模型提供将语义扩展对语义模型的改变定义为一系列提交的多个分层扩展层。
在步骤318处,系统响应于请求而从数据库或数据仓库检索数据,根据由语义扩展而扩展的语义模型处理数据,并将数据作为自定义内容提供给表示层。
分段查询模型和合并
根据另一个实施例,系统使得能够使用分段查询模型—当对语义模型进行定制时,系统可以在运行时生成查询时动态地合并来自各种增量的改变,以基于扩展的语义模型动态地显露适当的数据。
图23图示了根据实施例的分段查询模型的使用。
如图23中所示,系统可以对由多个所有者扩展和分层的嵌套复合模型使用高速缓存和合并策略。该方法可以用于非二进制模型人工制品,包括例如:将复合模型展平成键值对的展平映射270。然后可以将数据结构高速缓存在存储器中。键用简单的分隔符捕获嵌套。值可以是多种不同的有限类型,例如列表、映射或简单类型;并且合并策略可以是特定于数据结构的。
例如,根据实施例,取决于类型,不同的策略可以包括:
列表:对于这种类型,策略可以包括对所有层(层1到层n)的循环,并且对于每个匹配的键,获取值并追加。
映射:对于这种类型,策略可以包括对所有层(层1到层n)的循环,并且对于每个匹配的键,获取值并添加到映射。对于重叠的键,较高层中的值将覆盖较低层中的值。
字符串/日期布尔值:对于这种类型,策略可以包括从较高层到较低层(层n到层1)的循环并检查键的存在;如果找到则返回。在此,较高层中的键匹配将优先于较低层。
根据实施例,所描述的方法的各种优点包括:即使数据的多个层存储在盘上,运行时查询也可以快得多,因为它们可以直接在高速缓存的键上执行。在所有层上的结果都可以与上述基于简单数据结构的策略合并。
例如,如图23的示例中所示,图示了员工数据的复合模型,包括Employee->Name;Employee->Aliases;Employee->DateOfJoining;Employee->Address->Street;Employee->Address->Pincode。
根据实施例,复合模型可以被展平为多个键值对,每个键值对都具有键、类型和数据,然后该数据结构可以被高速缓存在存储器中作为基础表示,并用于响应于查询而访问数据库中的数据。当在运行时生成查询时,系统可以基于扩展的语义模型动态合并从基础的变化以显露适当的数据。
图24进一步图示了根据实施例的分段查询模型的使用。
如图24的示例中进一步所示,当向模型引入改变时,在这个示例中是补充员工的定义以包括出生日期,可以将改变保存为展平的映射的增量以及多个键值对。修改后的数据结构也可以被高速缓存在存储器中。当在运行时生成查询时,系统可以动态地合并从基础的改变和增量,以基于扩展的语义模型显露适当的数据。
图25进一步图示了根据实施例的分段查询模型的使用。
如图25的示例中进一步所示,当向模型引入进一步改变时,在这个示例中是修改或覆盖员工数据以反映不同的加入日期,可以将改变保存为展平的映射的另一个增量以及多个键值对。修改后的数据结构也可以被高速缓存在存储器中。当在运行时生成查询时,系统可以动态地合并从基础的改变和两个增量,以基于扩展的语义模型显露适当的数据。
图26图示了根据实施例的使用分段查询模型的处理。
如图26中所示,根据实施例,在步骤322处,提供计算机系统,该计算机系统具有计算机硬件(例如,处理器、存储器)并提供对数据库或数据仓库、适于响应于请求而提供数据分析的分析应用环境的访问。
在步骤324处,系统提供语义层,该语义层使得语义扩展能够扩展语义数据模型(语义模型),用于在表示层处提供数据分析作为自定义内容,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层。
在步骤326处,将改变保存为对扁平化的映射的增量和多个键值对,然后还可以将修改后的数据结构高速缓存在存储器中。
在步骤328处,系统响应于请求而从数据库或数据仓库检索数据,包括其中在运行时生成查询,动态地合并从基础语义模型的改变加上增量以基于扩展的语义模型显露数据。
语义模型动作重放
根据另一个实施例,当对语义模型进行定制时,系统允许将对语义模型的改变存储为动作集,而不是改变的状态。这允许系统在工厂模型上重放改变,以返回到期望的最终状态,就像操作系统更新不影响底层设置一样。
根据实施例,系统可以支持在不断演化的基础上重放改变。当对语义模型进行定制时,系统允许将对语义模型的改变存储为动作集,而不是改变状态。这允许系统在原始/工厂模型上重放改变,以返回到期望的最终状态,就像操作系统更新不影响底层设置一样。
图27图示了根据实施例的使用动作重放集以用于提供可扩展性。
如图27中所示,根据实施例,系统可以包括互连的可变层(例如,安全性、系统扩展或用户扩展)。可以将用户对每一层的改变捕获为可重放动作的动作重放集300。一层中的改变可能影响另一层的操作,因此触发从依赖性点重放改变。可以监视动作链和层依赖性。当依赖树的任何部分改变时,系统可以重放动作链以恢复原始改变的状态。
例如,如图27的示例中所示,用户使用R1角色为保护事实所做的改变;或R1角色配置;可以作为动作重放或可重放动作的集合被捕获。
图28进一步图示了根据实施例的使用动作重放集以用于提供可扩展性。
如图28的示例中进一步所示,在这个示例中由分析云提供者(例如,Oracle)引入语义模型的改变用于添加职责角色,对语义模型的改变可能对用户所做的对语义模型的改变具有不期望的影响。
图29进一步图示了根据实施例的使用动作重放集以用于提供可扩展性。
如图29的示例中进一步所示,由分析云提供者引入语义模型以添加职责角色的改变可以被用于触发重放用户先前所做的改变,在这个示例中是使用R1角色保护事实;或R1角色配置;
图30图示了根据实施例的在分析应用环境中进行语义模型动作重放的处理。
如图30中所示,根据实施例,在步骤332处,提供计算机系统,该计算机系统具有计算机硬件(例如,处理器、存储器)并提供对数据库或数据仓库、适于响应于请求而提供数据分析的分析应用环境的访问。
在步骤334处,系统提供语义层,该语义层使得语义扩展能够扩展语义数据模型(语义模型),用于在表示层处提供数据分析作为自定义内容,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层。
在步骤336处,系统捕获用户对每一层的改变作为可重放动作的动作重放集,其中一层中的改变可能影响另一层的操作,因此触发从依赖性点重放改变。
在步骤338处,系统监视动作链和层依赖性,并且当依赖树的一部分改变时,重放动作链以恢复原始改变的状态。
附加特征
根据各种实施例,本文描述的系统和方法可以包括各种附加特征,诸如例如其示例在下面进一步描述。
语义模型测试到生产
根据另一个实施例,为了支持测试和生产实例的使用—系统可以在测试环境中跟踪对语义模型所做的改变,然后在测试之后将改变远程传送到生产环境中。该系统可以包括锁、安全性和角色映射,以控制可以如何将改变从测试环境移至生产环境。
根据实施例,系统可以支持在生产环境中预期修复的分阶段进行。为了支持测试和生产实例的使用,系统可以在测试环境中跟踪对语义模型所做的改变,然后在测试之后将改变远程传送到生产环境。系统可以包括锁、安全性和角色映射,以控制可以如何将改变从测试环境移至生产环境。
根据实施例,系统支持在生产环境中预期修复的分阶段进行。当对语义模型的一个或多个计划的定制/改变与客户正在使用的现有版本不兼容时,它们可以被提前并在客户实例上急切地分阶段进行。如果客户升级以及当客户升级时,匹配的分阶段进行的修补被挑选并应用。当特定定制/改变的提供者与基础软件的提供者不同时,这也可以适用。
分阶段进行
根据另一个实施例,当测试实例被更新到新版本时,对语义模型所做的并被存储为增量的改变将如上所述被重放-但不是立即将改变推送到生产中,在生产环境本身更新到新版本的同时,改变分阶段进行。当生产被更新到新版本(数据仓库或语义模型的新版本)时,定制的模型和扩展也会同时被更新。
临时BI服务器
根据另一个实施例,数据分析环境中的查询常常被推送到BI服务器,然后功能向下运送到数据源中。但是,如果有多个用户对定制/扩展语义模型进行操作,那么他们将需要共享共用的BI服务器。为了提供在语义模型的开发期间使用的数据的预览,系统临时启动(减少/缩减)版本的BI服务器,以提供在开发期间使用的数据预览。
根据各种实施例,本公开的各方面在以下编号的条款中阐述:
1.一种用于在分析应用环境中提供可扩展性的系统,包括:
包括一个或多个处理器的计算机,其提供分析应用环境对用于存储数据的数据库或数据仓库中的至少一个的访问;以及
语义层,使语义扩展能够扩展语义模型以与数据一起使用,其中该系统:
结合语义模型提供多个语义扩展,所述多个语义扩展将对语义模型的改变定义为一系列提交;以及
响应于请求而从数据库或数据仓库检索数据,根据由语义扩展而扩展的语义模型处理数据,并将数据作为自定义内容提供给表示层。
2.条款1的系统,其中对语义模型的改变被记录在分层的命名空间中,包括与分层的命名空间的特定层相关联的每个改变提供对与该特定层相关联的语义模型的增量改变。
3.条款1的系统,其中分层的命名空间由具有与分层名称的层相关联的多个区域的文件人工制品定义,其中与分层的命名空间的特定层相关联的每个改变被定义在文件人工制品的对应区域内。
4.条款1的系统,其中该系统根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据,以加载到数据仓库实例中。
5.条款1的系统,其中分析应用环境在分析云环境内提供。
6.一种用于在分析应用环境中提供可扩展性的方法,包括:
在包括一个或多个处理器的计算机处提供分析应用环境,其提供对用于存储数据的数据库或数据仓库中的至少一个的访问;以及提供语义扩展以扩展语义模型以与数据一起使用,其中:
语义模型作为多个分层扩展层提供,所述多个分层扩展层将语义扩展对语义模型的改变定义为一系列提交;以及
其中数据响应于请求而从数据库或数据仓库检索,根据由语义扩展而扩展的语义模型而被处理,并作为自定义内容提供给表示层。
7.条款6的方法,其中对语义模型的改变被记录在分层的命名空间中,包括与分层的命名空间的特定层相关联的每个改变提供对与该特定层相关联的语义模型的增量改变。
8.条款6的方法,其中分层的命名空间由具有与分层名称的层相关联的多个区域的文件人工制品定义,其中与分层的命名空间的特定层相关联的每个改变被定义在文件人工制品的对应区域内。
9.条款6的方法,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据,以加载到数据仓库实例中。
10.条款6的方法,其中分析应用环境在分析云环境内提供。
11.一种其上具有指令的非暂态计算机可读存储介质,指令在被包括一个或多个处理器的计算机读取和执行时使计算机执行一种方法,包括:
在包括一个或多个处理器的计算机处提供分析应用环境,该分析应用环境提供对用于存储数据的数据库或数据仓库中的至少一个的访问;以及
提供语义扩展以扩展语义模型以与数据一起使用,其中:
语义模型作为多个分层扩展层提供,所述多个分层扩展层将语义扩展对语义模型的改变定义为一系列提交;以及
其中数据响应于请求而从数据库或数据仓库检索,根据由语义扩展而扩展的语义模型被处理,并作为自定义内容提供给表示层。
12.条款11的非暂态计算机可读存储介质,其中对语义模型的改变被记录在分层的命名空间中,包括与分层的命名空间的特定层相关联的每个改变提供对与该特定层相关联的语义模型的增量改变。
13.条款11的非暂态计算机可读存储介质,其中分层的命名空间由具有与分层名称的层相关联的多个区域的文件人工制品定义,其中与分层的命名空间的特定层相关联的每个改变被定义在文件人工制品的对应区域内。
14.条款11的非暂态计算机可读存储介质,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据,以加载到数据仓库实例中。
15.条款11的非暂态计算机可读存储介质,其中分析应用环境在分析云环境内提供。
16.一种用于在分析应用环境中提供包括对分段查询模型的支持的可扩展性的系统,包括:
包括一个或多个处理器的计算机,其提供分析应用环境对用于存储数据的数据库或数据仓库中的至少一个的访问;
其中系统响应于请求而从数据库或数据仓库检索数据,并根据由一个或多个语义扩展而扩展的语义模型处理数据,
其中语义模型和由所述一个或多个语义扩展定义的对语义模型的改变的表示被保存为键值对的映射的改变,该表示作为数据结构被高速缓存在存储器中;以及
其中响应于在运行时生成的查询,该系统动态地将由所述一个或多个语义扩展定义的改变与基础语义模型合并,以基于扩展的语义模型来显露数据。
17.条款16的系统,其中作为数据结构被高速缓存在存储器中的语义模型和由所述一个或多个语义扩展定义的对语义模型的改变的表示与提供对数据仓库的访问的数据平面结合使用。
18.条款16的系统,其中对语义模型的改变被记录在分层的命名空间中并且作为对语义模型的改变被处理,包括每个改变提供对语义模型的增量改变。
19.条款16的系统,其中该系统根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以用于加载到数据仓库实例中。
20.条款16的系统,其中分析应用环境在分析云环境内提供。
21.一种用于在分析应用环境中提供包括对分段查询模型的支持的可扩展性的方法,包括:
在包括一个或多个处理器的计算机处提供分析应用环境,所述分析应用环境提供对用于存储数据的数据库或数据仓库中的至少一个的访问;
提供语义扩展以扩展语义模型以与数据一起使用,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;
保存语义模型以及由一个或多个语义扩展定义的对语义模型的改变的表示,作为键值对的映射的改变,该表示作为数据结构被高速缓存在存储器中;以及
响应于在运行时生成的查询而从数据库或数据仓库检索数据,包括将由所述一个或多个语义扩展定义的改变与基础语义模型动态合并,以基于扩展的语义模型来显露数据。
22.条款21的方法,其中作为数据结构被高速缓存在存储器中的语义模型和由所述一个或多个语义扩展定义的对语义模型的改变的表示与提供对数据仓库的访问的数据平面结合使用。
23.条款21的方法,其中对语义模型的改变被记录在分层的命名空间中并且作为对语义模型的改变被处理,包括每个改变提供对语义模型的增量改变。
24.条款21的方法,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以用于加载到数据仓库实例中。
25.条款21的方法,其中分析应用环境在分析云环境内提供。
26.一种其上具有指令的非暂态计算机可读存储介质,所述指令在由包括一个或多个处理器的计算机读取和执行时使计算机执行方法,所述方法包括:
在包括一个或多个处理器的计算机处提供分析应用环境,该分析应用环境提供对用于存储数据的数据库或数据仓库中的至少一个的访问;
提供语义扩展以扩展语义模型以与数据一起使用,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;
保存语义模型以及由一个或多个语义扩展定义的对语义模型的改变的表示,作为键值对的映射的改变,该表示作为数据结构被高速缓存在存储器中;以及
响应于在运行时生成的查询而从数据库或数据仓库检索数据,包括将由所述一个或多个语义扩展定义的改变与基础语义模型动态合并,以基于扩展的语义模型来显露数据。
27.条款26的非暂态计算机可读存储介质,其中作为数据结构被高速缓存在存储器中的语义模型和由所述一个或多个语义扩展定义的对语义模型的改变的表示与提供对数据仓库的访问的数据平面结合使用。
28.条款26的非暂态计算机可读存储介质,其中对语义模型的改变被记录在分层的命名空间中并且作为对语义模型的改变被处理,包括每个改变提供对语义模型的增量改变。
29.条款26的非暂态计算机可读存储介质,其中系统根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以用于加载到数据仓库实例中。
30.条款26的非暂态计算机可读存储介质,其中分析应用环境在分析云环境内提供。
31.一种用于在分析应用环境中提供包括对语义模型动作集和重放的支持的可扩展性的系统,包括:
包括一个或多个处理器的计算机,所述计算机提供分析应用环境对用于存储数据的数据库或数据仓库中的至少一个的访问;以及
语义层,所述语义层实现语义扩展以扩展语义模型以与数据一起使用,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;
其中系统将对语义模型的扩展层中的每个扩展层的用户改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
32.条款31的系统,还包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
33.条款31的系统,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
34.条款31的系统,其中系统根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
35.条款31的系统,其中分析应用环境在分析云环境内提供。
36.一种用于在分析应用环境中提供包括对语义模型动作集和重放的支持的可扩展性的方法,包括:
在包括一个或多个处理器的计算机处提供分析应用环境,所述分析应用环境提供对用于存储数据的数据库或数据仓库中的至少一个的访问;
提供实现语义扩展以扩展语义模型以与数据一起使用的语义层,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;以及
将对语义模型的扩展层中的每个扩展层的用户改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
37.条款36的方法,包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
38.条款36的方法,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
39.条款36的方法,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
40.条款36的方法,其中分析应用环境在分析云环境内提供。
41.一种其上具有指令的非暂态计算机可读存储介质,所述指令在由包括一个或多个处理器的计算机读取和执行时使计算机执行方法,所述方法包括:
在包括一个或多个处理器的计算机处提供分析应用环境,所述分析应用环境提供对用于存储数据的数据库或数据仓库中的至少一个的访问;
提供实现语义扩展以扩展语义模型以与数据一起使用的语义层,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;以及
将对语义模型的扩展层中的每个扩展层的用户改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
42.条款41的非暂态计算机可读存储介质,包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
43.条款41的非暂态计算机可读存储介质,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
44.条款41的非暂态计算机可读存储介质,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
45.条款41的非暂态计算机可读存储介质,其中分析应用环境在分析云环境内提供。
根据各种实施例,可以使用包括根据本公开的教导编程的一个或多个处理器、存储器和/或计算机可读存储介质的一个或多个常规的通用或专用计算机、计算设备、机器或微处理器方便地实现本文的教导。如对软件领域的技术人员将明显的,熟练的程序员可以基于本公开的教导容易地准备适当的软件编码。
在一些实施例中,本文的教导可以包括计算机程序产品,该计算机程序产品是其上/其中存储有指令的(一个或多个)非暂态计算机可读存储介质,该指令可以用于对计算机进行编程以执行本教导的任何处理。这种存储介质的示例可以包括但不限于硬盘驱动器、硬盘、硬驱动器、固定盘或其它机电数据存储设备、软盘、光盘、DVD、CD-ROM、微驱动器和磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪存设备、磁卡或光卡、纳米系统或其它类型的存储介质或适用于指令和/或数据的非临时存储的设备。
出于说明和描述的目的已经提供了前述描述。并不旨在穷举或将保护范围限制为所公开的精确形式。许多修改和变化对于本领域技术人员将是明显的。
例如,虽然本文提供的示例中的几个示例说明了具有企业软件应用或数据环境(诸如,例如,Oracle融合应用环境);或在软件即服务(SaaS)或云环境(诸如,例如,Oracle分析云或Oracle云基础设施环境)的上下文内的分析应用环境的操作;但是根据各种实施例,本文描述的系统和方法可以与其它类型的企业软件应用或数据环境、云环境、云服务、云计算或其它计算环境一起使用。
选择和描述实施例是为了最佳地解释本教导的原理及其实际应用,从而使本领域的其它技术人员能够理解各种实施例以及具有适合于预期的特定用途的各种修改。预期范围由所附权利要求及其等同形式限定。
Claims (15)
1.一种用于在分析应用环境中提供包括对语义模型动作集和重放的支持的可扩展性的系统,包括:
包括一个或多个处理器的计算机,所述计算机提供分析应用环境对用于存储数据的数据库或数据仓库中的至少一个的访问;以及
语义层,所述语义层实现语义扩展以扩展语义模型以与数据一起使用,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;
其中系统将对语义模型的扩展层中的每个扩展层的改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
2.如权利要求1所述的系统,还包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
3.如权利要求1所述的系统,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
4.如权利要求1所述的系统,其中系统根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
5.如权利要求1所述的系统,其中分析应用环境在分析云环境内提供。
6.一种用于在分析应用环境中提供包括对语义模型动作集和重放的支持的可扩展性的方法,包括:
在包括一个或多个处理器的计算机处提供分析应用环境,所述分析应用环境提供给用于存储数据的数据库或数据仓库中的至少一个;
提供实现语义扩展以扩展语义模型以与数据一起使用的语义层,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;以及
将对语义模型的扩展层中的每个扩展层的改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
7.如权利要求6所述的方法,包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
8.如权利要求6所述的方法,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
9.如权利要求6所述的方法,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
10.如权利要求6所述的方法,其中分析应用环境在分析云环境内提供。
11.一种其上具有指令的非暂态计算机可读存储介质,所述指令在由包括一个或多个处理器的计算机读取和执行时使计算机执行方法,所述方法包括:
在包括一个或多个处理器的计算机处提供分析应用环境,所述分析应用环境提供给用于存储数据的数据库或数据仓库中的至少一个;
提供实现语义扩展以扩展语义模型以与数据一起使用的语义层,其中语义模型包括定义语义扩展对语义模型的改变的多个分层扩展层;以及
将对语义模型的扩展层中的每个扩展层的改变捕获为多个可重放的动作,其中一层中的改变能够影响另一层的操作,所述动作能够在语义模型的版本上被重放,以用相关联的改变更新语义模型。
12.如权利要求11所述的非暂态计算机可读存储介质,包括将对扩展层的改变捕获为动作重放集,并且其中第一层中的改变影响第二层的操作,然后触发从依赖性点重放改变。
13.如权利要求11所述的非暂态计算机可读存储介质,还包括监视依赖树内的动作链和层依赖性,并且当依赖树改变时重放动作链以将语义模型恢复到原始状态。
14.如权利要求11所述的非暂态计算机可读存储介质,还包括根据一个或多个分析应用模式或客户模式执行提取、变换、加载处理,以从企业软件应用或数据环境接收数据以加载到数据仓库实例中。
15.如权利要求11所述的非暂态计算机可读存储介质,其中分析应用环境在分析云环境内提供。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063083319P | 2020-09-25 | 2020-09-25 | |
US63/083,319 | 2020-09-25 | ||
US17/376,895 US20220100749A1 (en) | 2020-09-25 | 2021-07-15 | System and method for use of a fragmented query model in an analytic applications environment |
US17/376,903 | 2021-07-15 | ||
US17/376,890 | 2021-07-15 | ||
US17/376,903 US20220100778A1 (en) | 2020-09-25 | 2021-07-15 | System and method for semantic model action sets and replay in an analytic applications environment |
US17/376,895 | 2021-07-15 | ||
US17/376,890 US11609904B2 (en) | 2020-09-25 | 2021-07-15 | System and method for extensibility in an analytic applications environment |
PCT/US2021/051589 WO2022066796A1 (en) | 2020-09-25 | 2021-09-22 | System and method for semantic model action sets and replay in an analytic applications environment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116438528A true CN116438528A (zh) | 2023-07-14 |
Family
ID=80821253
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180073726.6A Pending CN116438528A (zh) | 2020-09-25 | 2021-09-22 | 用于在分析应用环境中的语义模型动作集和重放的系统和方法 |
CN202180073687.XA Pending CN116547659A (zh) | 2020-09-25 | 2021-09-22 | 用于在分析应用环境中使用分段查询模型的系统和方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180073687.XA Pending CN116547659A (zh) | 2020-09-25 | 2021-09-22 | 用于在分析应用环境中使用分段查询模型的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (3) | US20220100778A1 (zh) |
EP (2) | EP4217882A1 (zh) |
JP (2) | JP2023543996A (zh) |
CN (2) | CN116438528A (zh) |
WO (2) | WO2022066796A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220100778A1 (en) | 2020-09-25 | 2022-03-31 | Oracle International Corporation | System and method for semantic model action sets and replay in an analytic applications environment |
US12032568B2 (en) * | 2022-09-19 | 2024-07-09 | Sap Se | Multi-layer extensibility for enterprise portal |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7739292B2 (en) | 2005-09-28 | 2010-06-15 | Altova Gmbh | System and method for modeling and managing enterprise architecture data and content models and their relationships |
US7996855B2 (en) * | 2006-09-15 | 2011-08-09 | Oracle International Corporation | Personal messaging application programming interface for integrating an application with groupware systems |
CN101546259B (zh) | 2008-03-28 | 2012-10-03 | 国际商业机器公司 | 支持运行时模型扩展的对象关系映射系统和方法 |
US20090281865A1 (en) * | 2008-05-08 | 2009-11-12 | Todor Stoitsev | Method and system to manage a business process |
US20100161648A1 (en) * | 2008-12-19 | 2010-06-24 | Peter Eberlein | Flexible multi-tenant support of metadata extension |
US10437846B2 (en) * | 2010-05-28 | 2019-10-08 | Oracle International Corporation | System and method for providing data flexibility in a business intelligence server using an administration tool |
US9529576B2 (en) | 2011-09-30 | 2016-12-27 | Oracle International Corporation | Systems and methods for object to XML mappings |
US8805971B1 (en) | 2012-06-15 | 2014-08-12 | Amazon Technologies, Inc. | Client-specified schema extensions in cloud computing environments |
US9509571B1 (en) | 2012-07-25 | 2016-11-29 | NetSuite Inc. | First-class component extensions for multi-tenant environments |
US9621435B2 (en) | 2012-09-07 | 2017-04-11 | Oracle International Corporation | Declarative and extensible model for provisioning of cloud based services |
US9442993B2 (en) | 2013-02-11 | 2016-09-13 | Dell Products L.P. | Metadata manager for analytics system |
US9294482B2 (en) | 2013-07-25 | 2016-03-22 | Oracle International Corporation | External platform extensions in a multi-tenant environment |
US20150088807A1 (en) * | 2013-09-25 | 2015-03-26 | Infobright Inc. | System and method for granular scalability in analytical data processing |
US10078676B2 (en) | 2015-04-06 | 2018-09-18 | Sap Se | Schema evolution in multi-tenant environment |
US9990383B2 (en) * | 2015-05-01 | 2018-06-05 | Ebay Inc. | Constructing a data adaptor in an enterprise server data ingestion environment |
US10635686B2 (en) | 2015-10-21 | 2020-04-28 | Oracle International Corporation | Extensible attributes for data warehouses |
US10866938B2 (en) | 2016-07-29 | 2020-12-15 | Sap Se | Automated reshaping and restructuring of storage structures |
JP7034924B2 (ja) | 2016-08-22 | 2022-03-14 | オラクル・インターナショナル・コーポレイション | 動的系統トラッキング、再構成、およびライフサイクル管理のためのシステムおよび方法 |
US10614091B1 (en) * | 2016-09-29 | 2020-04-07 | Numerify, Inc. | Warehouse based reporting and operational reporting integration |
US10628594B2 (en) | 2017-01-26 | 2020-04-21 | Sap Se | Managing multi-tenant systems using object-oriented models |
US20200007556A1 (en) * | 2017-06-05 | 2020-01-02 | Umajin Inc. | Server kit configured to marshal resource calls and methods therefor |
US10685034B2 (en) * | 2017-10-17 | 2020-06-16 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing concurrent dataflow execution with write conflict protection within a cloud based computing environment |
US11068448B2 (en) * | 2019-01-07 | 2021-07-20 | Salesforce.Com, Inc. | Archiving objects in a database environment |
CN113039527A (zh) | 2019-05-06 | 2021-06-25 | 甲骨文国际公司 | 用于在分析应用环境中进行定制的系统和方法 |
US11558312B2 (en) * | 2019-08-09 | 2023-01-17 | Oracle International Corporation | System and method for supporting a usage calculation process in a cloud infrastructure environment |
US11138164B1 (en) | 2019-11-27 | 2021-10-05 | Amazon Technologies, Inc. | Alter table implementation details with schema versioning |
US11349917B2 (en) * | 2020-07-23 | 2022-05-31 | Pure Storage, Inc. | Replication handling among distinct networks |
US11934957B2 (en) * | 2020-08-27 | 2024-03-19 | GM Global Technology Operations LLC | Methods, systems, and apparatuses for user-understandable explainable learning models |
US20220100778A1 (en) | 2020-09-25 | 2022-03-31 | Oracle International Corporation | System and method for semantic model action sets and replay in an analytic applications environment |
-
2021
- 2021-07-15 US US17/376,903 patent/US20220100778A1/en active Pending
- 2021-07-15 US US17/376,895 patent/US20220100749A1/en active Pending
- 2021-07-15 US US17/376,890 patent/US11609904B2/en active Active
- 2021-09-22 EP EP21795082.3A patent/EP4217882A1/en active Pending
- 2021-09-22 JP JP2023519021A patent/JP2023543996A/ja active Pending
- 2021-09-22 CN CN202180073726.6A patent/CN116438528A/zh active Pending
- 2021-09-22 WO PCT/US2021/051589 patent/WO2022066796A1/en active Application Filing
- 2021-09-22 CN CN202180073687.XA patent/CN116547659A/zh active Pending
- 2021-09-22 WO PCT/US2021/051588 patent/WO2022066795A1/en active Application Filing
- 2021-09-22 JP JP2023519020A patent/JP2023543995A/ja active Pending
- 2021-09-22 EP EP21794285.3A patent/EP4217881A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220100778A1 (en) | 2022-03-31 |
US20220100749A1 (en) | 2022-03-31 |
CN116547659A (zh) | 2023-08-04 |
US11609904B2 (en) | 2023-03-21 |
EP4217881A1 (en) | 2023-08-02 |
JP2023543996A (ja) | 2023-10-19 |
WO2022066796A1 (en) | 2022-03-31 |
WO2022066795A1 (en) | 2022-03-31 |
JP2023543995A (ja) | 2023-10-19 |
US20220100748A1 (en) | 2022-03-31 |
EP4217882A1 (en) | 2023-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8954375B2 (en) | Method and system for developing data integration applications with reusable semantic types to represent and process application data | |
US8024305B2 (en) | Updating a data warehouse schema based on changes in an observation model | |
EP3107050A1 (en) | System for data aggregation and report generation | |
US8504990B2 (en) | Middleware configuration processes | |
US11263562B1 (en) | System and method for computer-assisted improvement of business intelligence exosystem | |
US12124461B2 (en) | System and method for data analytics with an analytic applications environment | |
US11573974B2 (en) | System and method for automatic correction/rejection in an analysis applications environment | |
US20200356575A1 (en) | System and method for customization in an analytic applications environment | |
US20220377022A1 (en) | System and method for saas/paas resource usage and allocation in an analytic applications environment | |
US11615108B2 (en) | System and method for running warehouse loads for multiple tenants of a data warehouse | |
US20210004382A1 (en) | System and method for data pipeline optimization in an analytic applications environment | |
US20210173846A1 (en) | System and method for automatic generation of bi models using data introspection and curation | |
CN116547659A (zh) | 用于在分析应用环境中使用分段查询模型的系统和方法 | |
CN115210701A (zh) | 使用数据自省和策划自动生成bi模型的系统和方法 | |
Pearl et al. | Creating a SQL Health Repository |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |