一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

通过外部基于云的分析系统实现数据访问的制作方法

2021-11-30 20:59:00 来源:中国专利 TAG:

通过外部基于云的分析系统实现数据访问


背景技术:

1.企业可以使用多个系统来存储并处理数据。例如,企业可以使用将数据存储在数据库系统中并提供限定数据存储方式和数据访问方式的元数据的系统。与其他系统(诸如企业在其内存储和维持其数据的系统)所提供的性能相比,已经引入了提供高级分析能力和改进的数据处理性能的分析系统。此类分析系统可以包括基于云的分析系统,其包括直接在底层数据库系统内执行的分析引擎。这种分析引擎可以被称为数据库(db)分析引擎(基于db的分析引擎)。
2.为了给企业提供统一的用户体验,期望将在其内存储企业数据的系统连接到基于db的分析引擎。以这种方式,企业能够通过基于db的分析引擎利用分析系统所提供的更复杂且资源效率更高的分析。实现此目的的传统技术包括例如使用联机分析处理(olap)处理器提供所谓的实时连接,并使用所谓的计算视图通过基于db的分析引擎来提供这种连接。然而,此类传统技术具有缺点。例如,在数据库系统访问中使用的计算视图会导致严重的性能问题,这是因为复杂性和缺少的元数据以及其他缺点。


技术实现要素:

3.本公开的实现方式旨在使得通过第二系统的分析引擎能够访问并处理第一系统中所提供的数据。更具体地,本公开的实现方式通过中间格式将元数据(被第一系统用来存储并访问数据)从第一格式变换为第二格式,以使第二系统的分析引擎能够访问数据以用于分析处理。
4.在一些实现方式中,动作包括检索与存储在企业的数据库系统内的数据相关联的元数据,元数据以第一格式提供,并且被第一系统用来存储并访问数据;提供包括以可互操作格式提供的元数据的文档;通过部署器处理文档以提供呈第二格式的分析引擎元数据,分析元数据存储在第二系统中,并且能够由基于db的分析引擎消耗以从企业的数据库系统访问数据;并且通过基于db的分析引擎基于分析元数据从企业的数据库系统检索数据,以基于数据提供分析数据。该方面的其他实现方式包括被配置为执行编码在计算机存储设备上的方法的动作的对应系统、装置和计算机程序。
5.这些和其他实现方式各自可以任选地包括以下特征中的一者或多者:响应于将数据标记为对基于db的分析引擎可访问而检索元数据;响应于确定已经发生对元数据的改变而检索元数据;基于db的分析引擎在所企业的数据库系统内执行;基于db的分析引擎在访问企业的数据库系统的基于云的数据库系统内执行;部署器被提供在企业的数据库系统内;以及可互操作格式包括核心模式符号(csn)。
6.本公开还提供了一种计算机可读存储介质,其耦合到一个或多个处理器并在其上存储指令,这些指令在由一个或多个处理器执行时致使一个或多个处理器根据本文提供的方法的实现方式执行操作。
7.本公开还提供了一种用于实现本文提供的方法的系统。系统包括一个或多个处理器;以及计算机可读存储介质,其耦合到一个或多个处理器并在其上存储指令,这些指令在
由一个或多个处理器执行时致使一个或多个处理器根据本文提供的方法的实现方式执行操作。
8.应当理解,根据本公开的方法可以包括本文描述的方面和特征的任何组合。也就是说,根据本公开的方法不限于本文具体描述的方面和特征的组合,而且还包括所提供的方面和特征的任何组合。
9.在附图和以下具体实现方式中阐述本公开的一个或多个实现方式的细节。根据具体实现方式和附图以及权利要求书,本公开的其他特征和优点将是明显的。
附图说明
10.图1描绘了可以用于执行本公开的实现方式的示例性架构。
11.图2描绘了根据本公开的实现方式的示例性概念架构。
12.图3描绘了根据本公开的实现方式的另一示例性概念架构。
13.图4a至图4c描绘了数据仓库(dw)系统内的查询设计时间的示例性屏幕截图。
14.图5描绘了可以根据本公开的实现方式执行的示例性过程。
15.图6是可以用于执行本公开的实现方式的示例性计算机系统的示意图。
16.各个图中的类似的参考符号指示类似的元件。
具体实施方式
17.本公开的实现方式旨在使得通过第二系统的分析引擎能够访问并处理第一系统中所提供的数据。更具体地,本公开的实现方式通过中间格式将元数据(被第一系统用来存储并访问数据)从第一格式变换为第二格式,以使第二系统的分析引擎能够访问数据以用于分析处理。
18.各实现方式可以包括如下的动作:检索与存储在企业的数据库系统内的数据相关联的元数据,元数据以第一格式提供,并且被第一系统用来存储并访问数据;提供包括以可互操作格式提供的元数据的文档;通过部署器处理文档以提供呈第二格式的分析引擎元数据,分析元数据存储在第二系统中,并且能够由基于db的分析引擎消耗以从企业的数据库系统访问数据;并且通过基于db的分析引擎基于分析元数据从企业的数据库系统检索数据,以基于数据提供分析数据。
19.在此参考德国沃尔多夫的sap se提供的产品、服务和基础设施来进一步详细描述本公开的实现方式。然而,可以设想的是,可以利用由一个或多个提供者提供的任何适当的产品、服务和/或基础设施来实现本公开的实现方式。
20.为了提供本公开的实现方式的进一步的上下文,并且如上所述,企业可以使用多个系统来存储并处理数据。例如,企业可以使用将数据存储在数据库系统中并提供限定数据存储方式和数据访问方式的元数据的系统。示例性系统包括但不限于数据仓库(dw),其可以被描述为用于存储数据、生成报告并执行数据分析的系统。dw可以看作是由不同源集成的中央数据储存库,并且包括定义数据存储方式和数据访问方式的元数据。例如,数据可以按照特定模式(例如,下面讨论的星型模式)存储。dw可以存储大量数据(例如,数个太字节(terabyte)的数据)。在一些情况下,将dw作为预置系统提供,以使dw至少部分地由为其建立dw的企业进行管理。
21.作为非限制性示例,示例性dw包括由德国沃尔多夫的sap se提供的sap商业仓库(bw)。sap bw可以被描述为基于sap netweaver abap平台的模型驱动的数据仓库产品。sap bw收集、变换和存储在sap和非sap应用中生成的数据,并且通过内置报告、商业智能和分析工具使数据可访问。在sap bw中,使用所谓的信息块(infocube)来访问数据,每个信息块由一组信息对象(infoobject)组成,该组信息对象包括特性(例如,具有其属性和文本描述的主数据)和关键指标。信息对象可以被描述为一种信息提供者(infoprovider),这是创建并用于运行查询的数据对象。信息块使用星型模式进行结构化,该星型模式包括包含信息块关键指标的事实表,以及围绕该事实表的若干维度表。事实表和维度表都是存储在底层数据库系统中的关系数据库表。
22.在一些示例中,dw(诸如sap bw)包括分析引擎,该分析引擎使数据能够从底层数据库系统中检索出来,对检索到的数据执行分析,并将分析结果提供给客户端。例如,分析引擎(在本文中也称为dw分析引擎,或基于服务器的分析引擎)在应用服务器内执行。在一些示例中,应用服务器从客户端(例如,与应用服务器通信的计算设备)接收请求,并且基于元数据解释该请求以确定从数据库检索哪些数据。应用服务器使用查询语言(例如,(sql))查询数据库系统,并且接收来自数据库系统的响应于查询的数据(例如,数百、数千条记录)。应用服务器使用基于服务器的分析引擎处理接收到的数据,并将分析数据提供给客户端。此过程可以被称为3层方法,其中大多数处理在应用服务器内执行。
23.已经引入了例如与dw所提供的性能相比提供高级分析功能和改进的数据处理性能的分析系统。此类分析系统可以包括基于云的分析系统,其包括直接在底层数据库系统内执行的分析引擎(例如,与在应用服务器内执行的dw分析引擎相反)。这种分析引擎在本文被称为数据库(db)分析引擎(基于db的分析引擎)。因此,响应于来自客户端的请求,该请求由数据库系统内的db分析引擎处理。因此,基于db的分析引擎直接访问存储在数据库系统内的数据,以便在数据库系统内进行分析处理,从而避免从数据库系统传输数据进行分析处理(例如,将数据从数据库系统传输到应用服务器)。
24.作为非限制性示例,示例性的基于云的分析系统包括由德国沃尔多夫的sap se提供的sap分析云(sac)。sac可以被描述为用于商业智能、计划和预测分析以支持企业运营的多合一平台。在一些示例中,sap sac使用多维服务(mds),该服务提供基于db的分析引擎。sap sac以特定协议(例如,信息访问(ina)协议)向mds提供请求,这使得能够制定并执行更复杂的数据分析请求(例如,与通过dw提交的数据分析请求相比)。
25.为了为使用dw的企业提供统一的用户体验,期望将dw连接到基于db的分析引擎。以这种方式,使用dw的企业能够通过基于db的分析引擎利用分析系统所提供的更复杂且资源效率更高的分析。实现此目的的传统技术包括例如使用联机分析处理(olap)处理器提供所谓的实时连接,并使用通过dw创建的所谓的计算视图通过基于db的分析引擎来提供这种连接。然而,此类传统技术具有缺点。例如,在数据库系统访问中使用的计算视图会导致严重的性能问题,这是因为复杂性和缺少的元数据。
26.关于复杂性,视图创建被设计成由基于sql的工具使用。因此,计算视图包含许多部分,这些部分表示可以使用的dw的特征。通常,计算视图包含具有数千个节点的复杂计算引擎情景。例如,昂贵的(在计算所需的资源方面)外部接合部包括可用的层次结构,内置了货币转换等。这导致大量的实例化、优化和运行时。另一方面,dw使用更简单的视图甚至使
用sid代替值,并且可以更快地访问数据。
27.关于丢失的元数据,视图内部的许多细节不能用作计算视图元数据,而必须由基于db的分析引擎使用。这导致性能问题。例如,在dw模型中使用相同货币或单位列或常数的度量在视图中显示为不同货币/单位列。基于db的分析引擎无法将它们组合在单个聚合中,因为这可能会导致不正确的结果。运行时随所使用的度量数量而增加。作为另一示例,所有可用的层次结构都包括在创建的视图中。在没有适当的元数据的情况下,无法使用分析系统中请求的层次结构。作为另一示例,该视图可以包含具有另外的筛选器的受限制的关键指标。然而,计算视图元数据仅包含简单的基本度量。由于未应用受限关键指标筛选器,因此未明确请求度量的计数聚合可能会返回意外结果。除了上述缺点之外,将dw连接到基于db的分析引擎的传统技术还存在其他缺点。
28.鉴于以上境况,本公开的实现方式使得第二系统的分析引擎能够访问并处理第一系统中所提供的数据。更具体地,并且如本文进一步详细描述的,本公开的实现方式通过中间格式(本文称为可互操作格式)将元数据(被第一系统用来存储并访问数据)从第一格式变换为第二格式,以使第二系统的分析引擎能够访问数据以用于分析处理。
29.在此参考dw系统进一步详细描述本公开的实现方式。然而,可以设想的是,可以利用存储由另一系统访问的数据的任何适当系统来实现本公开的实现方式。
30.图1描绘了根据本公开的实现方式的示例性架构100。在所描绘的示例中,示例性架构100包括客户端设备102、网络106以及服务器系统104、105。服务器系统104、105各自包括一个或多个服务器设备和数据库108(例如,处理器、存储器)。在所描绘的示例中,用户112与客户端设备102进行交互。
31.在一些示例中,客户端设备102可以通过网络106与服务器系统104、105通信。在一些示例中,客户端设备102包括任何适当类型的计算设备,诸如台式计算机、膝上型计算机、手持计算机、平板计算机、个人数字助理(pda)、蜂窝电话机、网络家电、相机、智能电话机、增强型通用分组无线服务(egprs)移动电话机、媒体播放器、导航设备、电子邮件设备、游戏机或这些设备中任两个或更多个的适当组合或其他数据处理设备。在一些实现方式中,网络106可以包括大型计算机网络,诸如局域网(lan)、广域网(wan)、互联网、蜂窝网络、电话网络(例如,pstn)或其连接任意数量的通信设备、移动计算设备、固定计算设备和服务器系统的适当组合。
32.在一些实现方式中,服务器系统104、105各自包括至少一个服务器和至少一个数据存储区(store)。在图1的示例中,服务器系统104、105意图表示各种形式的服务器,包括但不限于web服务器、应用服务器、代理服务器、网络服务器和/或服务器池。一般而言,服务器系统接受对应用服务的请求,并且将此类服务提供给任意数量的客户端设备(例如,在网络106上的客户端设备102)。
33.根据本公开的实现方式,服务器系统104可以托管针对企业操作的dw系统,并且服务器系统105可以由软件提供者(例如,sap se)操作以为一个或多个企业提供服务。在一些示例中,服务器系统104和/或服务器系统105托管数据库系统,企业数据存储在该数据库系统内。示例性数据库系统包括但不限于德国沃尔多夫的sap se提供的sap hana。sap hana可以被描述为数据平台,它利用内置的高级分析和多模型数据处理引擎同时处理任意数据类型的交易和分析。如本文中进一步详细描述的,本公开的实现方式使得能够使用基于云
的分析系统来访问并处理dw系统的数据以进行分析。
34.图2描绘了根据本公开的实现方式的示例性概念架构20。在所描绘的示例中,示例性概念架构200包括前端系统202、后端系统204和云服务系统206。一般而言,示例性概念架构200描绘了一种预置方法,其中在企业所操作的服务器系统(例如,图1的服务器系统104)内提供系统(例如,dw系统)、数据库系统和基于db的分析引擎。也就是说,例如,后端系统204是企业的后端系统。在一些示例中,云服务系统206由服务器系统(例如,图1的服务器系统105)上的软件提供者(例如,sap se)提供。
35.在一些示例中,前端系统202可以由一个或多个客户端侧设备(例如,图1的客户端设备102)执行,并且包括dw管理员用户界面(ui)210和分析应用212(例如,作为sap sac的一部分提供)。云服务系统206可以由一个或多个服务器侧设备(例如,图1的服务器系统105)执行。根据本公开的实现方式,云服务系统206包括集成服务214,这些集成服务包括元数据处理程序216和部署器218。尽管在云服务206内描绘了集成服务214,但是可以预期,可以直接在后端204内提供集成服务214。例如,在一些实现方式案中,可以在后端204内(例如,预置)提供元数据处理程序216和部署器218。
36.在所描绘的示例中,后端204包括dw系统220、集成服务222、应用服务224和数据库系统226。作为非限制性示例,dw系统220可以被提供为以上介绍的sap bw的至少一部分,并且应用服务224可以被提供为由德国沃尔多夫的sap se提供的sap扩展应用服务(xs)。同样作为非限制性示例,数据库系统226可以被提供为sap hana。
37.在图2的示例中,dw系统220包括视图生成器230、数据授权提供者232、元数据无效器234和元数据提供者236。集成服务222包括数据供应代理238,并且应用服务224包括协议适配器240(例如,用于ina协议)。在一些示例中,提供数据供应代理238以使得能够在由软件提供者提供的云服务206与作为预置系统提供的企业的后端系统204之间进行通信(例如,使用http)。
38.在图2的示例中,数据库系统226包括授权存储区250、dw元数据存储区252、事实存储区254、主数据存储区256、一个或多个信息提供者视图258、以及针对每个信息提供者视图258的一个或多个信息对象视图260。dw元数据存储区252存储描述数据库系统226内数据的存储和访问方式的元数据(例如,描述列、视图及它们之间的关系的元数据)。
39.事实存储区254存储事实数据,该事实数据可以被描述为相对频繁改变的数据。示例性事实数据包括但不限于销售、收入、成本、净值、密钥(例如,标识特定客户的密钥)等。主数据存储区256存储主数据,该主数据可以被描述为较不频繁地(例如,与事实数据相比)改变的数据。主数据的示例包括但不限于客户数据(例如,姓名、地址、电话号码)。
40.数据库系统226还包括分析引擎270(例如,作为mds提供)、分析引擎数据访问组件272、分析引擎元数据274、视图高速缓存管理器276以及视图高速缓存278。在一些示例中,视图高速缓存管理器276监视在数据库系统226内生成的视图(例如,信息提供者视图258、信息对象视图260),并且将视图高速缓存在视图高速缓存278中。因此,第一次请求视图时,可以生成视图并将其存储在视图高速缓存278中,而第二次请求视图时,可以从视图高速缓存278提供视图(如果视图高速缓存278中仍可用)。以这种方式,可以保留后端系统204的计算资源,因为不需要在每个请求中(重新)生成视图。
41.如本文中进一步详细描述的,本公开的实现方式使得基于db的分析引擎270能够
直接访问由dw系统220存储在数据库系统226内的数据。也即,基于db的分析引擎270能够直接访问存储在事实存储区254中的事实和存储在主数据存储区256中的主数据。例如,分析引擎270从分析应用212并通过应用服务224接收对分析处理的请求。分析引擎270使用分析引擎元数据274来提供访问一个或多个信息提供者视图258和一个或多个信息对象视图260的数据访问请求。在一些示例中,数据访问请求被分析引擎数据访问组件272接收,该分析引擎数据访问组件处理数据访问请求以检索与要分析的请求有关的数据。
42.根据本公开的实现方式,将存储在dw元数据存储区252中的dw元数据变换成分析引擎元数据,该分析引擎元数据具有可由基于db的分析引擎270消耗的格式并存储在分析引擎元数据存储区274中。在一些实现方式中,元数据提供者236从dw元数据存储区252检索访问特定视图所需的元数据。元数据提供者236将元数据从第一格式变换为可互操作格式。在一些示例中,第一格式特定于dw系统的分析处理(例如,通过在应用服务器上执行的基于服务器的分析引擎),并且可互操作格式未绑定到任何分析引擎。互操作格式包括元数据,并表达元数据的语义和意图。在一些示例中,可互操作格式包括核心模式符号(core schema notation,csn),并且在元数据文档(例如,javascript对象符号(json)文档)内提供元数据。下面的列表1中提供了非限制性示例性csn表示。在列表1的示例中,存在两个对“max_plus_min”的引用,一个在“元素(element)”段中,一个在“查询(query)”段中,其包含在标准化/可互操作“注释”方面的设计时信息,例如“@endusertext.label”、“@aggregation.default”。
43.在一些实现方式中,集成服务214从dw系统220接收元数据文档(例如,响应于由集成服务214向dw系统220发出的http请求)。元数据处理程序216解释从dw系统220接收的元数据文档,并且将元数据文档提供给部署器218。在一些示例中,可以将存储在dw系统220中的元数据描述为单个实体定义及其与其他实体的关系。元数据处理程序216的一项任务是,从单个实体(例如,星型模式的中央实体)开始,从元数据提供者收集所有元数据,这是部署器218创建经ae/运行时优化的元数据所需的。例如,这将包括所有相关的维度实体、(语言相依的)文本、以及竞争星型模式的层次结构。为此,元数据处理程序必须具有有关部署器功能范围的知识。部署器218将元数据从可互操作格式变换为专用于分析引擎270以提供分析元数据的第二格式。在一些示例中,分析元数据包括数据定义语言(ddl)语句(例如,用于创建或删除数据库系统226内的对象)和/或数据修改语言(dml)语句(例如,用于插入、更新或删除数据库系统226内的数据)。分析元数据通过数据供应代理238存储在分析元数据存储区274中。以这种方式,来自dw元数据存储区252的dw元数据被变换以提供存储在分析引擎元数据存储区274中的分析引擎数据,分析引擎270能够消耗分析元数据以检索数据库系统226内的数据(例如,事实、主数据),以便在数据库系统226内进行分析处理。
44.下面的列表2提供了非限制性示例性dw表示。在列表2的示例中,存在两个子段“max_plus_min”,一个子段在“datasourcefields”段中,引用已部署的数据库运行时制品(例如,sql视图),而另一子段在“measures”段(mds运行时的分析特定的元数据)中。
45.图3描绘了根据本公开的实现方式的另一示例性概念架构300。示例性概念架构300描绘了一种混合方法,其中企业使用基于云的数据仓库系统,该数据仓库系统访问存储在企业的预置系统中的数据。以这种方式,提供了基于云的功能,同时维持预置数据。示例性基于云的数据仓库系统包括但不限于德国沃尔多夫的sap se所提供的sap数据仓库云
(dwc)。
46.在图3的示例中,示例性概念架构300包括前端202、基于云的dw(例如,sap dwc)302和后端系统204'(即,企业的预置系统)。后端系统204'包括dw系统220'、集成服务222和数据库系统226'。dw系统220'包括视图生成器230、数据授权提供者232、元数据无效器234和元数据提供者236。集成服务222包括供应代理238。数据库系统226'包括授权存储区250、dw元数据存储区252、事实存储区254、主数据存储区256、一个或多个信息提供者视图258以及一个或多个信息对象视图260。
47.基于云的dw包括空间304、储存库306、集成服务214'和数据库系统226”。集成服务214'包括元数据处理程序216、部署器218、适配器240以及授权和数据隐私组件310。数据库系统226”包括作为远程表提供的授权312、作为相应的远程表提供的一个或多个信息提供者视图258'以及作为相应的远程表(也称为虚拟表)提供的一个或多个信息对象视图260'。在一些示例中,远程表是(本地)数据库系统中的技术制品,在所有用例中看起来都是表,但实际上它指向另一数据库系统中的表或视图,这可以称为远程源。数据库系统226”还包括分析引擎270、分析引擎数据访问组件272、分析引擎元数据274、视图高速缓存管理器276以及视图高速缓存278。
48.如上参考图2所描述,将存储在dw元数据存储区252中的dw元数据变换成分析引擎元数据,该分析引擎元数据具有可由基于db的分析引擎270消耗的格式并存储在分析引擎元数据存储区274中。在一些实现方式中,元数据提供者236从dw元数据存储区252检索访问特定视图所需的元数据。元数据提供者236将元数据从第一格式变换为可互操作格式。在一些实现方式中,集成服务214'从dw系统220接收元数据文档(例如,响应于由集成服务214向dw系统220'发出的http请求)。元数据处理程序216解释从dw系统220'接收的元数据文档,并且将元数据文档提供给部署器218。部署器218将元数据从可互操作格式变换为专用于分析引擎270以提供分析元数据的第二格式,该分析元数据存储在分析元数据存储区274中。以这种方式,来自dw元数据存储区252的dw元数据被变换以提供存储在分析引擎元数据存储区274中的分析引擎元数据,分析引擎270能够消耗分析元数据以检索数据库系统226'内的数据(例如,事实、主数据),以便在数据库系统226”内进行分析处理。
49.在一些实现方式中,为了触发元数据的变换以提供分析引擎元数据,可以将数据库系统226、226'内的数据标识为可由分析引擎270访问。例如,用户(例如,管理员)可以通过dw管理员ui 210访问dw系统220、220',并且可以标记分析引擎270可以访问的数据(例如,信息提供者)。例如,用户可以设置与数据相关联的标记,该标记指示该数据对于分析引擎270是可访问的。在一些示例中,对于标记为可被分析引擎270访问的每个信息提供者,生成具有与信息提供者相关的所有维度并且包括来自信息提供者的导航属性和度量字段的sql视图。在一些示例中,仅包括信息提供者的字段(例如,维度

密钥、度量)。响应于数据被标记为分析引擎270可访问,元数据提供者236可以从dw元数据存储区252检索对应的元数据,以变换元数据并提供分析引擎元数据,如本文所述。
50.在一些实现方式中,可以确定分析引擎270可访问的作为数据基础的元数据已经改变。例如,对数据库系统226、226'的更新可以导致数据结构被改变,这还导致对应的元数据被改变。在一些示例中,元数据无效器234可以被提供为侦听器,其检测分析引擎270可访问的数据的元数据的变化。如果已经发生变化,则元数据无效器234触发元数据作为分析引
擎元数据的重新部署。也即,例如,元数据提供者236可以从dw元数据存储区252检索对应的元数据,以变换元数据并提供分析引擎元数据,如本文所述。
51.为了说明本公开的实现方式,但不限于,提供了分析引擎270处理来自分析应用的请求的简要描述和示例,并且该示例包括如何使用分析元数据来标识并访问数据(即,从分析应用向mds发出请求开始的端到端工作流程)。更详细地,分析应用请求元数据以便例如向用户提供维度和度量的选择(例如,在“编辑图表”对话框中)。在一些示例中,mds读取其专用表示,并且将度量段转换成针对客户端/服务器交换元数据而指定的格式(其与mds内部格式接近)。这是运行时优化的一部分:它仅使用相对少且便宜的(就执行所消耗的资源而言)变换来为元数据请求准备响应。分析应用具有图表定义,例如,维度为“财政年度(fiscal year)”,度量为“最大 最小”,并且将对应的数据请求发送到mds。mds读取所请求字段的元数据,以便准备对数据请求的响应。mds确定“财政年度”是一个维度,并且在数据源/底层sql视图中有对应的列,而“最小 最大”是度量。在一些示例中,“最小 最大”可以作为公式提供(例如,非sql默认聚合公式),是指其他度量“最小”(具有默认聚合min)和“最大”(具有默认聚合max)。对于这些度量,数据源中有对应的列。
52.在一些示例中,mds准备执行计划。基于上述示例的示例性执行计划可以包括:首先从底层(sql)数据源读取fiscal_year的min(min)和max(max)组,然后针对结果集的每一行计算公式max_plus_min。在一些示例中,mds执行所述执行计划(例如,通过为此计划创建复杂的sql请求或临时db运行时制品(“计算场景”)并执行该请求)。mds根据元数据(例如,度量min_plus_max的值)返回查询结果。
53.图4a至图4c描绘了dw系统内的查询设计时间的示例性屏幕截图。在图4a至图4c的示例中,定义了示例性度量max_plus_min,其在本文所提供的列表1和列表2的示例中使用。
54.图5描绘了可以根据本公开的实现方式执行的示例性过程500。在一些示例中,使用由一个或多个计算设备执行的一个或多个计算机可执行程序来提供示例性过程500。
55.接收到触发项(502)。例如,用户可以将存储在数据库系统226、226'中的数据标记为分析引擎270可访问的,触发项是数据的标记。作为另一示例,可以确定与存储在数据库系统226、226'中的分析引擎270可以访问的数据相关联的元数据已经改变,触发项是元数据的改变。访问dw元数据(504),并且提供包括以可互操作格式提供的dw元数据的文档(506)。例如,响应于该触发项,由元数据提供者236访问与分析引擎270可访问的数据相关联的dw元数据,元数据提供者将dw元数据转换为可互操作格式。在一些示例中,可互操作格式包括csn。
56.对文档进行处理以提供分析元数据(508)。例如,元数据处理程序216从dw系统220、220'接收文档,并且部署器218处理该文档以提供呈第二格式的分析元数据,使得分析元数据可由分析引擎270消耗以访问来自数据库系统226、226'的数据。将分析元数据存储在分析元数据存储区中(510)。基于分析元数据从企业的数据库系统检索数据(512)。
57.现在参考图6,提供了示例性计算系统600的示意图。系统600可以用于与在此描述的实现方式相关联地描述的操作。例如,系统600可以被包括在本文所讨论的任何或所有服务器组件中。系统600包括处理器610、存储器620、存储设备630和输入/输出设备640。组件610、620、630、640使用系统总线650互连。处理器610能够处理要在系统600内执行的指令。在一些实现方式中,处理器610是单线程处理器。在一些实现方式中,处理器610是多线程处
理器。处理器610能够处理存储在存储器620中或存储设备630上的指令,以在输入/输出设备640上显示用于用户界面的图形信息。
58.存储器620在系统600内存储信息。在一些实现方式中,存储器620是计算机可读介质。在一些实现方式中,存储器620是易失性存储器单元。在一些实现方式中,存储器620是非易失性存储器单元。存储设备630能够为系统600提供大容量存储。在一些实现方式中,存储设备630是计算机可读介质。在一些实现方式中,存储设备630可以是软盘设备、硬盘设备、光盘设备或磁带设备。输入/输出设备640可以为系统600提供输入/输出操作。在一些实现方式中,输入/输出设备640包括键盘和/或指向设备。在一些实现方式中,输入/输出设备640包括用于显示图形用户界面的显示单元。
59.所描述的特征可以以数字电子电路或计算机硬件、固件、软件或它们的组合来实现。该装置可以在有形地体现在信息载体中的计算机程序产品中实现(例如,在机器可读存储设备中,以由可编程处理器执行),并且方法步骤可以由执行指令程序的可编程处理器执行以通过对输入数据进行操作并生成输出来执行所描述实现方式的功能。所描述的特征可以在可编程系统上可执行的一个或多个计算机程序中有利地实现,所述可编程系统包括至少一个可编程处理器,其被耦合用于从数据存储系统、至少一个输入设备和至少一个输出设备接收数据和指令以及向它们传送数据和指令。计算机程序是可以直接或间接地在计算机中使用以执行特定活动或带来某种结果的一组指令。计算机程序可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。
60.用于执行指令程序的合适处理器包括例如通用和专用微处理器、和唯一处理器或任何类型计算机的多个处理器之一。一般来讲,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件可以包括用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器。一般来讲,计算机还可以包括用于存储数据文件的一个或多个大容量存储设备或与之可操作地耦合以与之通信;此类设备包括磁盘,诸如内部硬盘和可移动磁盘;磁光盘;以及光盘。适合于有形地体现计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,包括例如半导体存储器设备(诸如eprom、eeprom和闪存存储器设备);磁盘(诸如内部硬盘和可移动盘)、磁光盘以及cd

rom和dvd

rom盘。处理器和存储器可以由asic(专用集成电路)补充或并入其中。
61.为了提供与用户的交互,各特征可在计算机上实现,该计算机具有用于向用户显示信息的显示设备(诸如crt(阴极射线管)或lcd(液晶显示器)监视器)和键盘,以及定点设备(诸如鼠标或跟踪球),其中用户可通过定点设备将输入提供给计算机。
62.各特征可以在包括后端组件(诸如数据服务器)、或包括中间件组件(诸如应用服务器或互联网服务器)、或包括前端组件(诸如具有图形用户界面或互联网浏览器的客户端计算机)或这些项的任何组合的计算机系统中实现。系统的组件可以通过任何形式或介质的数字数据通信连接,诸如通信网络。通信网络的示例包括例如lan、wan和形成互联网的计算机和网络。
63.计算机系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过网络(诸如本文描述的网络)进行交互。客户端和服务器的关系是通过在各自计算机上运行且彼此之间具有客户端

服务器关系的计算机程序而产生的。
64.另外,附图中所描绘逻辑流程未必需要所示的特定次序或顺序次序,以实现合乎希望的结果。另外,可以从所描述的流程提供其他步骤,或者可以省去步骤,并且可以将其他组件添加到所描述的系统中或从中移除。相应地,其它实现在以下权利要求的范围内。
65.已经描述了本公开的多个实现方式。然而,应理解,在不脱离本公开的精神和范围的情况下可以进行多种修改。相应地,其它实现方式在以下权利要求的范围内。
66.列表1:示例性csn表示
67.68.69.70.71.72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89.90.91.92.93.94.95.96.[0097][0098]
列表2:示例性dw表示
[0099]
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107]
[0108]
[0109]
[0110]
[0111]
[0112]
[0113]
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献