CN103455540A - 从数据仓库模型生成内存模型的系统和方法 - Google Patents
从数据仓库模型生成内存模型的系统和方法 Download PDFInfo
- Publication number
- CN103455540A CN103455540A CN2013102025738A CN201310202573A CN103455540A CN 103455540 A CN103455540 A CN 103455540A CN 2013102025738 A CN2013102025738 A CN 2013102025738A CN 201310202573 A CN201310202573 A CN 201310202573A CN 103455540 A CN103455540 A CN 103455540A
- Authority
- CN
- China
- Prior art keywords
- data
- model
- row
- towards
- data model
- 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.)
- Granted
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/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
-
- 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
Abstract
提供了从内存数据库输出数据的系统和方法。该方法包括将第一数据模型(其不能由内存数据库使用)转换为第二数据模型(其能够由内存数据库使用),而且根据第二数据模型输出数据。以这种方式,用户不必为了访问内存数据库而重写第一数据模型。
Description
技术领域
本公开涉及数据处理,而且更具体地,涉及分析数据处理。
背景技术
除非在本文中另外指明,否则本部分中描述的方法不是本申请中权利要求的现有技术,也并不因包含在本部分中而被承认为现有技术。
数据处理是多元化的领域。两种类型的数据处理是事务数据处理和分析数据处理。事务数据处理涉及事务数据,事务数据代表事务数据处理系统管理的单独事务;例子包括订单处理、发票处理等。事务数据处理通常使用数据库管理系统(database management system,DBMS)来执行,更具体地,使用面向行的数据库系统来执行,面向行的数据库系统通常被称为“传统的”DBMS(为了将它与不是面向行的数据库系统的非传统的DBMS相区别)。可以使用缩写OLTP(online transaction processing,联机事务处理)来指代事务数据处理。
分析数据处理涉及分析数据,分析数据代表事务数据的集合;例子包括一段时间内的总销售额、应收账款的日均余额等。分析数据处理可以使用传统的DBMS来执行,在传统的DBMS中,在被称为提取、翻译和加载(extraction,translation and loading,ETL)的过程中,数据被定期从事务数据处理系统加载(通常为汇总数据)。ETL过程通常每天执行一次,如在晚上事务处理系统负载较轻的时候。分析数据处理系统可以被称为数据仓库(data warehouse,DW)、业务仓库(business warehouse,BW,例如,在其中“数据”是隐式的或隐含的)、业务智能(business intelligence,BI)系统、数据集市(data mart,DM)等。可以使用缩写OLAP(online analytical processing,联机分析处理)来指代分析数据处理。
将数据处理分割为两个系统的一个原因是,用于分析数据处理的分析查询通常将它们正在操作的所有数据“锁定”,以防止数据在查询中改变;这样的锁定使执行附加事务的系统的性能变慢。将数据处理分割到两个系统上的一个缺点是,由于ETL过程的定期性质,因此分析数据是过时的。
在分析数据处理系统中,核心分析概念是分析立方体(analysis cube),其还被称为“多维立方体(multidimensional cube)”或“超立方体(hypercube)”)。它由被称为度量(measure)的数值事实组成,所述度量按维度(dimension)分类。立方体元数据典型地从关系数据库中的表的星型架构或雪花型架构创建。度量源自事实表中的记录,维度源自维度表。每个度量可以被认为具有一组标签,或与它相关联的元数据。维度是用于描述这些标签;它提供了关于度量的信息。
分析立方体是用于创建数据模型(也可被称为“模型”)的多个数据结构之一。模型通常被用于对数据进行分析,包括查看数据的方式、选择数据的方式等。一般来说,在特定的分析数据处理系统中创建多个模型;这些模型对应于分析数据处理系统对所存储的特定数据频繁执行的数据分析操作。例如,X公司所使用的模型将不同于Y公司所使用的模型,因为两家公司的底层数据的结构存在差异。
内存(in-memory)技术最近的发展已经在分析数据处理系统中实现内存数据库以代替传统的DBMS。内存数据处理系统的例子是来自SAP公司的HANATM系统。由于通过在内存中存储数据可获得的速度(相对于非内存数据库系统的磁盘存储),内存数据处理系统可以执行事务数据处理和分析数据处理二者。
发明内容
当底层数据已经从分离的OLAP和OLTP系统并入内存数据处理系统中时,用户仍然需要访问分析数据的方式。用户现有的模型将无法工作,因为OLAP系统与内存数据处理系统之间的结构存在差异。例如,OLAP系统往往是传统的行DBMS(RDBMS,其以行结构存储数据),而内存系统以列结构存储数据。解决这个问题的一种方法是重写模型。
鉴于上面的讨论,需要转换模型而不是重写。实施例针对从非内存数据处理系统到内存数据处理系统转换模型。
一个实施例是由存储数据的内存数据库系统输出数据的方法。该方法包括由内存数据库系统存储第一数据模型,该第一数据模型对应于访问由数据仓库系统存储的第一数据。该方法还包括由内存数据库系统存储第二数据。该方法还包括由内存数据库系统将第一数据模型转换为第二数据模型,该第二数据模型对应于访问第二数据。该方法还包括由内存数据库系统根据第二数据模型输出第二数据。
计算机系统可以操作以实现上述方法。计算机系统可以存储、运行或者以其他方式被一个或多个计算机程序控制,所述一个或多个计算机程序控制计算机系统来实现上述方法。
非临时性计算机可读介质可以存储控制计算机系统以执行上述方法的指令。该指令可以包括内存数据库组件、处理组件和输出组件。
下面的详细描述和附图提供了对本公开的本质和优点的更好的理解。
附图说明
图1是由存储数据的内存数据库系统输出数据的方法的流程图。
图2是用于实现本公开的实施例的示例性计算机系统和网络的框图。
具体实施方式
这里描述了从内存数据库输出数据的技术。在以下描述中,为了说明,阐明了许多例子和具体细节以提供对本公开的透彻理解。然而,对本领域技术人员将显而易见的是,由权利要求限定的本公开可以单独包括这些例子中的一些特征或全部特征、或者与下面描述的其它特征相结合地包括这些例子中的一些特征或全部特征,并且还可以包括这里所描述的特征和构思的修改和等同。
在本文档中,各种方法、过程和程序被详述。虽然特定的步骤可能以一定顺序描述,但是这样的顺序主要是为了方便和清楚。特定的步骤可以重复一次以上、可以出现在其他步骤之前或之后(即使这些步骤被以另外的顺序进行描述)、而且可以与其它步骤并行出现。只有当第一步骤必须在第二步骤开始之前完成的时候,第二步骤才需要跟随在第一步骤后面。当根据上下文不清楚的时候,这种情况将被具体指出。特定的步骤可以被省略;只有当特定的步骤的省略将重大影响其他步骤的时候,该特定的步骤才是必需的。
在本文档中,术语“和”、“或”和“和/或”被使用。这些术语被理解为具有相同的含义,即,包含性的。例如,“A和B”可以至少意味着以下情况:“A和B二者”、“只有A”、“只有B”、“至少A和B二者”。作为另一例子,“A或B”可以至少意味着以下情况:“只有A”、“只有B”、“A和B二者”、“至少A和B二者”。当意指排除性的或(exclusive-or)时,这种情况将被明确指出(例如,“或A或B”、“至多A和B之一”)。
在本文档中,各种计算机实现的方法、过程和程序被描述。应该理解的是,各种动作(接收、存储、发送、通信、显示等)由硬件设备执行,即使所述动作可以由用户授权、发起或触发,或者即使所述硬件设备由计算机程序、软件、固件等控制。另外,应当理解的是,硬件设备是对数据进行操作,即使该数据可以表示概念或真实世界的对象,从而省略了明确标记为“数据”。例如,当硬件设备被描述为“存储记录”时,应当理解硬件设备是存储表示该记录的数据。
在本文档中,具体例子在SAP系统,诸如SAP BI系统或DW系统(非内存系统)和SAP HANA系统(内存系统),的上下文中讨论。应当理解的是,在非内存系统的特定于SAP的结构(例如,信息立方体(InfoCube))上执行的动作也可以在非SAP结构(例如,分析立方体、多维立方体、超立方体等)上执行,以便转换模型,供与内存系统一起使用。此外,这里所述的系统可以包括一个或多个计算机,其可以经由诸如局域网或互联网的通信链路连接。
如上面所提到的,存在非常强大的(超过10000)SAP BW的安装基础和大量的客户,他们已经投入了巨额资金来对他们的数据仓库和数据集市建模。现在,当他们升级到基于HANA方案的BW(HANA被用作BW的数据库)时,他们不得不再次投入巨额资金来创建HANA分析模型以使用诸如资源管理器(Explorer)等的SAP业务对象工具。此外,在很多时候,客户具有或想要具有根据他们想要消费BW数据的需求、使用任何UI技术建立的、他们自定义的应用。他们可以直接从HANA得到数据;然而,为了使用HANA的分析能力,他们需要在BW架构表的顶部手动创建模型,这可能给这些客户带来巨大的工作量和成本负担。
如下面进一步详述的,自动过程在存在于存储BW数据的HANA(数据库)中的BW架构表的顶部创建HANA分析模型。(HANA模型不同于BW模型,并因此不能一对一地转换。)应用的智能解释BW模型的语义并且为HANA模型创建相应的语义。
例如,可以在HANA中为BW中的每个信息对象(InfoObject)创建属性视图(Attribute View)。可以为信息立方体/操作数据存储对象(OperationalData store Object)创建分析视图(Analytic View)。照顾合并(union)和连接(join)二者情况,可以在HANA中为BW多提供者(BW MultiProvider)和信息集(InfoSet)创建计算视图(Calculation View)。可以为分析授权创建HANA分析特权(HANA Analytic Privilege)。
一般的使用情况是使用业务对象报告工具。诸如资源管理器的业务对象报告工具可以直接在HANA模型的顶部报告。因此,通过将BW信息提供者(InfoProvider)转换为HANA模型,系统将它们展示给资源管理器,在资源管理器中可以创建用户友好的报告。
某些实施例的一个值得注意的特征是,不需要单独建模。转换智能识别BW模型的分析设置,然后在适用的情况下将相应的分析设置应用于HANA模型。HANA模型和它们的语义不同于BW模型;然而,所述转换照顾了解释BW模型语义,然后适当地创建HANA模型的语义。这显著降低了客户的建模工作量和成本。
某些实施例的另一个值得注意的特征是,不需要从BW复制数据。所述转换应用(utility)从BW模型的元数据识别底层数据库架构并且在它们的顶部创建HANA视图。因此,不需要在HANA中创建特殊架构,而且这些HANA模型不需要单独的数据加载。
某些实施例的另一个值得注意的特征是,特定于客户的报告。HANA模型在部署时创建运行时对象,所述运行时对象是MDX(MultidimensionalExpression,多维表达式)兼容的。这些视图可以使用JDBC(JavaTMdatabaseconnectivity,JavaTM数据库连接)访问。因此,当BW报告仍然以不间断的方式运行时,客户也可以选择基于他们的需要使用HTML5(超文本标记语言第5版)或任何其它用户界面技术来创建他们的自定义报告或仪表板(dashboard),而且使用JDBC来在HANA模型上运行他们的多维查询。以这种方式,他们可以利用所有期望的分析能力,诸如切片(slicing)、切块(dicing)、聚合(aggregation)等,直接访问BW数据。这些分析操作在HANA中得到运行,从而使它们能够满足其快速报告的需求。
示例性实施例
如下面进一步详述的,在使用HANA作为BW系统的数据库的SAP BW客户能够从BW模型(诸如,信息对象、信息立方体、操作数据存储对象(Operational Datastore Object,DSO)、信息集、多提供者等)自动创建HANA信息模型(诸如,属性视图、分析视图、计算视图、分析特权等)的情况下,可以使用这些实施例。下面将讨论这些内容中每一项的具体内容。
信息对象处理-特征(Characteristic)
对于BW中的特征信息对象,系统在HANA中创建共享的属性视图。如果特征不在多个信息提供者间共享,那么它可以在被使用的地方被创建为具体的分析/计算视图中的私有属性(对应于信息提供者,像信息立方体或DSO等一样)。
系统可以生成特征SID(系统标识符)表、主数据、文本表等作为数据基础的一部分。系统可以使用标准BW逻辑派生连接(join);例如,可以在CHAVL(特征值)字段使用引用连接(referential join)来连接SID表和主数据和文本表,而且文本表中的LANGU(语言)可以被选择为文本连接中的语言属性。
注意,对于货币(Currency)和单位(Unit)特征,系统可以将标准货币、货币文本、单位和单位文本表添加到共享的属性视图的数据基础。
信息对象处理-关键指标(Key figure)
在HANA中没有共享的度量。因此,系统在信息提供者本身的上下文中处理BW关键指标。系统通过在HANA信息模型中创建私有度量来转换BW关键指标。
信息立方体处理
系统可以创建用于HANA优化的信息立方体的HANA模型,HANA优化的信息立方体是对信息立方体的新的增强,以便相对于经典的BW扩展的星型架构具有非常简化的架构。
对于BW信息立方体,系统在HANA中创建分析视图。数据基础包含信息立方体F事实(F-fact)表。
在需要创建私有属性的情况下,系统生成SID表和其他表作为数据基础的一部分。系统按标准逻辑创建引用连接-SID表中的SID字段与事实表中的SID_<CharacteristicName>(SID_<特征名称>)字段连接。
在信息立方体中使用的特征已经在HANA中被创建为共享属性视图的情况下,系统将属性视图添加到分析视图的逻辑视图(Logical View)。再一次,系统使用特征的SID创建在数据基础和逻辑视图中的该特征之间的连接。
对于信息立方体中的关键指标,系统在分析视图中创建私有度量。这与关键指标中的描述相同。还相应地设置其他分析特性(property),诸如“聚合类型”(Aggregation Type)、“度量的单位”、“货币”等。
限制的(Restricted)关键指标和计算的(Calculated)关键指标
如果存在在信息立方体级定义的限制的关键指标和计算的关键指标,则系统利用分析视图中类似的限制和公式在HANA中创建限制的度量或计算的度量。如果在信息立方体上存在导航的(Navigational)属性,则它们以与其他特征相同的方式被创建为分析视图的私有属性。这个的数据基础将由父特征的属性表和属性特征的文本表组成。
操作数据存储对象(DSO)处理
系统可以创建用于IMO DSO(InMemory Optimized DSO,内存优化的DSO)的HANA模型,它是专门为HANA系统设计的DSO的增强版本。IMODSO具有包含整体数据的活动(Active)数据表。这个表可以是数据基础的一部分。其余的转换步骤与以上信息立方体节中提供的步骤类似。
多提供者处理
对于BW多提供者,系统在HANA中创建计算视图。部分提供者可以是任意BW信息提供者,诸如信息对象、信息立方体、DSO、信息集(InfoSet)等。系统为多提供者中的每个部分提供者创建相应类型的模型(如以上各节详述的)。系统将这些模型作为“数据源(Data Source)”(节点)包括在计算视图中,然后使用“合并”节点连接它们。基于多提供者中的映射来完成源和目标数据源之间的属性映射。
信息集处理
对于BW信息集,系统在HANA中创建计算视图。这是与多提供者(参见上文)非常类似的处理。系统创建底层部分提供者作为HANA中的各个模型。部分提供者作为数据源包括在计算视图中,并且使用连接(Join)进行连接。系统基于信息集的元数据来选择连接中的适当属性。
更多细节
以下各节提供有关从非内存系统到内存系统的模型转换的更多细节。一般的使用情况如下。首先,建模者(用户)使用内存系统(例如,HANA)以连接到非内存系统(例如,BW),以便浏览由非内存系统所存储的信息提供者。内存系统可以使用JCO(SAP JavaTM连接器)实现此连接。其次,建模者选择信息提供者。第三,内存系统生成内存系统中的、对应于所选择的(非内存系统中的)信息提供者的信息模型。内存系统通过在数据基础中包括信息提供者架构来生成这些信息模型,因此不需要数据复制。内存系统可以根据信息提供者元数据来设置信息模型属性。内存系统可以使用由BW实现的现有的RFC(远程函数调用)和BAPI(业务应用程序编程接口)来读取元数据。
内存系统可以使用下列BAPI从BW获得信息:BAPI_CUBE_GETLIST(获得信息立方体的列表)、BAPI_CUBE_GETDETAIL(获得信息立方体细节)、和BAPI_IOBJ_GETDETAIL(获得信息对象细节)。内存系统还可以与下列11个BW的API中的一个或多个交互以执行转换。
1.BW可以实现浏览API(Browse API),其实现用于浏览BW系统中现有的信息区域(InfoArea)和信息提供者的接口。这个API可以提供给定信息区域下的对象。这个输出还可以包括其下的信息区域。作为导入的参数,浏览API可以接收信息区域名称和类型的表(诸如,AREA、CUBE、ODSO、MPRO等)。作为导出的参数,浏览API可以发送对象首标(名称、长文本、类型等)的表。
2.BAPI_CUBE_GETLIST可以只返回平面(FLAT)信息立方体(不是所有信息立方体);类似地,BAPI_ODSO_GETLIST可以只返回平面内存优化的DSO。
3.BW可以实现得到多个信息对象的完整元数据的API。作为导入的参数,该API可以接收信息对象名称的表。作为导出参数,该API可以发送信息对象元数据的表。
4.BW可以实现得到多个信息立方体的完整元数据的API。这类似于用于信息立方体元数据的#2的API。
5.BW可以实现得到多个数据存储对象的完整元数据的API。这类似于用于DSO元数据的#2的API。
6.BW可以实现得到包括部分提供者的多个提供者的完整元数据的API。
7.BW可以实现用于查询的列表API。
8.BW可以实现用于对信息提供者的限制的关键指标的列表API。
9.BW可以实现用于获得限制的关键指标的细节(多个一起)的API。
10.BW可以实现用于计算的关键指标的列表API。
11.BW可以实现用于获得计算的关键指标的细节(多个)的API。
转换细节和详细工作流
内存系统根据下面的一般程序来转换模型。首先,系统将立方体(Cube)变成具有立方体事实表(被称为AV事实表)的分析视图(Analytic View,AV)。SID和X/Y表可以与AV数据基础相关联。其次,系统接收选择目标数据包(package)的用户输入。例如,用户可能希望在本地生成目标数据包、可能希望传输目标数据包等。第三,系统发现由其它立方体生成的共享维度。做到这一点的一种方法是将数据包连同登录数据一起作为中央配置。
第四,系统将特征(还有时间和单位)变成共享的属性视图。数据基础(data foundation,DF)包含P表和T表(如果支持时间依赖性则还包含Q表;见下文)。系统将组合(Compound)转换为关键属性(Key Attribute)。对于导航属性,系统填充特性“导航启用”。
第五,系统使用日期(和$$date$$约束)转换文本以及属性的时间依赖性。做到这一点的一种方法是对dateTo列指定固定约束。
最后,系统利用足够的数据填充数据源(origin)以找出原始模型是什么。
系统可以向用户呈现向导(wizard),作为执行转换的一部分。在用户想要重做(rework)立方体(例如,在立方体已经在BW中改变之后)的情况下,向导应该可重新启动。为此,可以支持最小合并,因为客户被允许增强转换的模型(至少在合并过程中保持客户创建的层次)。
根据向导执行的步骤(例如,系统呈现选择而且用户选择所述选择之一以使系统执行转换)如下:
1.选择信息立方体(搜索/可选-显示信息区域层次)。
2.选择(子)数据包(可选-从为该系统集中维护的数据包开始)。
3.选择将被转换成共享属性视图的特征,具有建议/选择已存在的属性视图用于重用的可能性。重用特别与时间维度有关。用户可以使用数据源来搜索已经生成的、尚未包括在现有搜索中的属性视图。
4.选择关键指标(可选-默认:所有关键指标)。
5.选择授权(可选)。
向导可以包括进一步的选项。一个进一步的选项是提供选择以仅生成DF,然后允许用户完成逻辑模型。另一个进一步的选项是存储已经生成的内容并且重用这个信息以进行更好的合并。储存库对象可以被用于这个存储。
图1是由存储数据的内存数据库系统输出数据的方法100的流程图。该方法可以被实现为对内存数据库系统的操作进行控制的计算机程序。
在102,内存数据库系统存储第一数据模型,该第一数据模型对应于访问由数据仓库系统存储的第一数据。如上面所讨论的,第一数据模型对应于BW系统的现有模型。BW系统不同于内存系统(例如,BW系统实现面向行的存储,而内存系统实现面向列的存储),所以第一数据模型将不能正确地从内存系统提取数据。内存数据库系统可以在例如,通过上述讨论的API从BW系统获得第一数据模型之后存储第一数据模型。
在104,内存数据库系统存储第二数据。一般地,(由内存系统存储的)第二数据对应于(由BW系统存储的)第一数据,因为内存系统正取代BW系统执行组织的OLAP任务。
在106,内存数据库系统将第一数据模型转换为第二数据模型,该第二数据模型对应于访问第二数据。转换过程的细节如上面所讨论的。注意,在没有转换的情况下,第一数据模型将不能正确地操作以访问第二数据。
在108,内存数据库系统根据第二数据模型输出第二数据。根据期望的内存系统的OLAP功能,根据转换后的数据模型,这个输出可以是视图、报告等形式。
图2是用于实现本公开的实施例的示例性计算机系统和网络2400的框图。计算机系统2410包括总线2405或用于通信信息的其他通信机制、以及与总线2405耦合的用于处理信息的处理器2401。计算机系统2410还包括耦合到总线2405的存储器2402,其用于存储将被处理器2401运行的信息和指令,包括用于执行上述技术的信息和指令。这个存储器还可以用于在将被处理器2401运行的指令的运行过程中存储临时变量或其它中间信息。这个存储器的可能的实现可以是,但不限于,随机存取存储器(RAM)、只读存储器(ROM)(当不存储临时变量或其它中间信息时)、或两者。还提供了用于存储信息和指令的存储设备2403。存储设备的常见形式包括,例如,硬盘驱动器、磁盘、光盘、CD-ROM、DVD、闪存、USB存储卡、固态驱动器、或计算机可以读取的任何其它介质。例如,存储设备2403可以存储用于执行技术或具体实施上述构造的源代码、二元代码或软件文件。
计算机系统2410可以经由总线2405耦合到用于向计算机用户显示信息的、诸如阴极射线管(CRT)或液晶显示器(LCD)的显示器2412。诸如键盘和/或鼠标的输入设备2411耦合到总线2405,以用于向处理器2401通信来自用户的信息和命令选择。这些组件的组合允许用户与系统通信。在一些系统中,总线2405可以被划分成多个专用总线。
计算机系统2410还包括与总线2405耦合的网络接口2404。网络接口2404可以在计算机系统2410和本地网络2420之间提供双向数据通信。例如,网络接口2404可以是数字用户线(DSL)或调制解调器,以通过电话线提供数据通信连接。网络接口的另一例子是局域网(LAN)卡,以提供到兼容LAN的数据通信连接。无线链接也是另一例子。在任何这样的实现中,网络接口2404发送和接收携带表示各种类型的信息的数字数据流的电、电磁或光信号。
计算机系统2410可以通过网络接口2404向内部网或互联网2430发送和接收信息,包括消息或其他接口动作。在互联网的例子中,软件组件或服务可以跨过网络驻留在多个不同的计算机系统2410或服务器2431、2432、2433、2434和2435上。服务器2431可以通过互联网2430、本地网络2420和网络接口2404将来自一个组件的动作或消息发送到计算机系统2410的组件。
计算机系统和网络2400可以以客户端服务器的方式配置。例如,计算机系统2410可以实现服务器。客户端2415可以包括与计算机系统2410的组件类似的组件。
更具体地,如上所述,计算机系统2410可以实现内存数据库系统。计算机系统2410可以实现上述的模型转换过程。可替换地,服务器2431可以实现模型转换过程,而且可以将转换的模型呈现给计算机系统2410,这种情况下,服务器2431可以被视为内存数据库系统的组件。服务器2432可以实现BW系统。
以上描述示出了各种实施例以及如何可以实现本发明的各个方面的例子。上述例子和实施例不应该被视为仅有实施例,而是被呈现以说明由权利要求所限定的本公开的灵活性和优点。基于上述公开和权利要求,其他布置、实施例、实现和等同将对本领域技术人员显而易见,而且可以在不脱离由权利要求限定的本公开的精神和范围的情况下采用。
Claims (20)
1.一种由存储数据的内存数据库系统输出数据的计算机实现的方法,包括:
由内存数据库系统存储第一数据模型,该第一数据模型对应于访问由数据仓库系统存储的第一数据;
由内存数据库系统存储第二数据;
由内存数据库系统将第一数据模型转换为第二数据模型,该第二数据模型对应于访问第二数据;以及
由内存数据库系统根据第二数据模型输出第二数据。
2.如权利要求1所述的方法,其中,所述第一数据模型对应于以面向行的格式存储的第一数据。
3.如权利要求1所述的方法,其中,所述第二数据模型对应于以面向列的格式存储的第二数据。
4.如权利要求1所述的方法,其中,所述第二数据模型对应于以面向列的格式和面向行的格式二者存储的第二数据。
5.如权利要求1所述的方法,其中,所述内存数据库系统不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式存储的。
6.如权利要求1所述的方法,其中,所述内存数据库系统不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式和面向行的格式二者存储的。
7.如权利要求1所述的方法,其中,所述内存数据库系统不能使用第一数据模型访问第二数据,因为第二数据不是仅以面向行的格式存储的。
8.如权利要求1所述的方法,其中,所述第一数据模型与数据立方体有关,而且第二数据模型与内存数据结构有关。
9.一种输出数据的系统,包括:
内存数据库组件,其被配置为存储第一数据模型,该第一数据模型对应于访问由数据仓库系统存储的第一数据,而且该内存数据库组件被配置为存储第二数据;
处理组件,其被配置为将第一数据模型转换为第二数据模型,该第二数据模型对应于访问第二数据;以及
输出组件,其被配置为根据第二数据模型输出第二数据。
10.如权利要求9所述的系统,其中,所述第一数据模型对应于以面向行的格式存储的第一数据。
11.如权利要求9所述的系统,其中,所述第二数据模型对应于以面向列的格式存储的第二数据。
12.如权利要求9所述的系统,其中,所述内存数据库组件不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式存储的。
13.如权利要求9所述的系统,其中,所述内存数据库组件不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式和面向行的格式二者存储的。
14.如权利要求9所述的系统,其中,所述第一数据模型与数据立方体有关,而且第二数据模型与内存数据结构有关。
15.一种存储有控制计算机系统以输出数据的指令的非临时性计算机可读介质,包括:
内存数据库组件,其被配置为控制计算机系统以存储第一数据模型,该第一数据模型对应于访问由数据仓库系统存储的第一数据,而且该内存数据库组件被配置为控制计算机系统以存储第二数据;
处理组件,其被配置为控制计算机系统以将第一数据模型转换为第二数据模型,该第二数据模型对应于访问第二数据;以及
输出组件,其被配置为控制计算机系统以根据第二数据模型输出第二数据。
16.如权利要求15所述的非临时性计算机可读介质,其中,所述第一数据模型对应于以面向行的格式存储的第一数据。
17.如权利要求15所述的非临时性计算机可读介质,其中,所述第二数据模型对应于以面向列的格式存储的第二数据。
18.如权利要求15所述的非临时性计算机可读介质,其中,所述内存数据库组件不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式存储的。
19.如权利要求15所述的非临时性计算机可读介质,其中,所述内存数据库组件不能使用第一数据模型访问第二数据,因为第二数据是以不同于面向行的格式的、面向列的格式和面向行的格式二者存储的。
20.如权利要求15所述的非临时性计算机可读介质,其中,所述第一数据模型与数据立方体有关,而且第二数据模型与内存数据结构有关。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/482,868 | 2012-05-29 | ||
US13/482,868 US8510261B1 (en) | 2012-05-29 | 2012-05-29 | System and method of generating in-memory models from data warehouse models |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103455540A true CN103455540A (zh) | 2013-12-18 |
CN103455540B CN103455540B (zh) | 2019-05-10 |
Family
ID=48520659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310202573.8A Active CN103455540B (zh) | 2012-05-29 | 2013-05-28 | 从数据仓库模型生成内存模型的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8510261B1 (zh) |
EP (1) | EP2669815B1 (zh) |
JP (1) | JP6391217B2 (zh) |
CN (1) | CN103455540B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104102670A (zh) * | 2013-04-12 | 2014-10-15 | Sap股份公司 | 绩效指标分析框架 |
CN104657476A (zh) * | 2015-02-16 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 联机分析处理的方法及系统 |
CN104794113A (zh) * | 2014-01-16 | 2015-07-22 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN106021624A (zh) * | 2016-07-21 | 2016-10-12 | 中国农业银行股份有限公司 | 一种etl模型生成方法及装置 |
CN111861649A (zh) * | 2020-07-07 | 2020-10-30 | 中国建设银行股份有限公司 | 处理订单的方法、装置、设备和计算机可读介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8983900B2 (en) * | 2012-10-23 | 2015-03-17 | Sap Se | Generic semantic layer for in-memory database reporting |
US9146955B2 (en) * | 2012-12-18 | 2015-09-29 | Sap Se | In-memory, columnar database multidimensional analytical view integration |
US9110935B2 (en) * | 2013-02-26 | 2015-08-18 | Sap Se | Generate in-memory views from universe schema |
US9734230B2 (en) | 2013-09-12 | 2017-08-15 | Sap Se | Cross system analytics for in memory data warehouse |
US9734221B2 (en) | 2013-09-12 | 2017-08-15 | Sap Se | In memory database warehouse |
US9773048B2 (en) | 2013-09-12 | 2017-09-26 | Sap Se | Historical data for in memory data warehouse |
US9436746B2 (en) | 2014-01-20 | 2016-09-06 | Sap Se | Next generation architecture for database connectivity |
US9442968B2 (en) | 2014-03-31 | 2016-09-13 | Sap Se | Evaluation of variant configuration using in-memory technology |
WO2015189970A1 (ja) * | 2014-06-13 | 2015-12-17 | 株式会社日立製作所 | 情報処理装置及びそのデータ処理方法 |
CN108133005B (zh) * | 2017-12-22 | 2020-08-21 | 厦门理工学院 | 一种基于内存数据库的环境模型模拟方法、终端设备及存储介质 |
US10719508B2 (en) | 2018-04-19 | 2020-07-21 | Risk Management Solutions, Inc. | Data storage system for providing low latency search query responses |
US11514066B2 (en) | 2019-11-08 | 2022-11-29 | Servicenow, Inc. | System and methods for querying and updating databases |
US11461328B2 (en) | 2020-09-21 | 2022-10-04 | Oracle International Corporation | Method for using a sematic model to transform SQL against a relational table to enable performance improvements |
US11556533B2 (en) * | 2020-11-12 | 2023-01-17 | Oracle International Corporation | Method for generating views based on a semantic model, that allows for autonomous performance improvements and complex calculations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6161103A (en) * | 1998-05-06 | 2000-12-12 | Epiphany, Inc. | Method and apparatus for creating aggregates for use in a datamart |
CN1635494A (zh) * | 2003-12-27 | 2005-07-06 | 海信集团有限公司 | 实现类内存数据库存取和检索的方法 |
US20110161387A1 (en) * | 2009-06-30 | 2011-06-30 | Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh | Computer-Implemented Method for Operating a Database and Corresponding Computer-System |
US20110264667A1 (en) * | 2010-04-27 | 2011-10-27 | Stavros Harizopoulos | Column-oriented storage in a row-oriented database management system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6785689B1 (en) * | 2001-06-28 | 2004-08-31 | I2 Technologies Us, Inc. | Consolidation of multiple source content schemas into a single target content schema |
US7313561B2 (en) * | 2003-03-12 | 2007-12-25 | Microsoft Corporation | Model definition schema |
US7805341B2 (en) * | 2004-04-13 | 2010-09-28 | Microsoft Corporation | Extraction, transformation and loading designer module of a computerized financial system |
US8307012B2 (en) * | 2006-02-28 | 2012-11-06 | Sap Ag | Schema mapping and data transformation on the basis of a conceptual model |
US9626421B2 (en) * | 2007-09-21 | 2017-04-18 | Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh | ETL-less zero-redundancy system and method for reporting OLTP data |
US8352458B2 (en) * | 2008-05-07 | 2013-01-08 | Oracle International Corporation | Techniques for transforming and loading data into a fact table in a data warehouse |
US8108361B2 (en) * | 2008-07-31 | 2012-01-31 | Microsoft Corporation | Efficient column based data encoding for large-scale data storage |
US9542469B2 (en) * | 2010-08-25 | 2017-01-10 | International Business Machines Corporation | Data warehouse data model adapters |
US20120246170A1 (en) * | 2011-03-22 | 2012-09-27 | Momentum Consulting | Managing compliance of data integration implementations |
-
2012
- 2012-05-29 US US13/482,868 patent/US8510261B1/en active Active
-
2013
- 2013-05-23 EP EP13002694.1A patent/EP2669815B1/en active Active
- 2013-05-28 JP JP2013111741A patent/JP6391217B2/ja active Active
- 2013-05-28 CN CN201310202573.8A patent/CN103455540B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6161103A (en) * | 1998-05-06 | 2000-12-12 | Epiphany, Inc. | Method and apparatus for creating aggregates for use in a datamart |
CN1635494A (zh) * | 2003-12-27 | 2005-07-06 | 海信集团有限公司 | 实现类内存数据库存取和检索的方法 |
US20110161387A1 (en) * | 2009-06-30 | 2011-06-30 | Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh | Computer-Implemented Method for Operating a Database and Corresponding Computer-System |
US20110264667A1 (en) * | 2010-04-27 | 2011-10-27 | Stavros Harizopoulos | Column-oriented storage in a row-oriented database management system |
Non-Patent Citations (1)
Title |
---|
JENS KRUEGER等: "Data structures for mixed workloads in in-memory databases", 《5TH INTERNATIONAL CONFERENCE ON COMPUTER SCIENCES AND CONVERGENCE INFORMATION TECHNOLOGY》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104102670A (zh) * | 2013-04-12 | 2014-10-15 | Sap股份公司 | 绩效指标分析框架 |
CN104794113A (zh) * | 2014-01-16 | 2015-07-22 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN104657476A (zh) * | 2015-02-16 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 联机分析处理的方法及系统 |
CN106021624A (zh) * | 2016-07-21 | 2016-10-12 | 中国农业银行股份有限公司 | 一种etl模型生成方法及装置 |
CN106021624B (zh) * | 2016-07-21 | 2019-07-09 | 中国农业银行股份有限公司 | 一种etl模型生成方法及装置 |
CN111861649A (zh) * | 2020-07-07 | 2020-10-30 | 中国建设银行股份有限公司 | 处理订单的方法、装置、设备和计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
EP2669815B1 (en) | 2018-02-14 |
EP2669815A1 (en) | 2013-12-04 |
CN103455540B (zh) | 2019-05-10 |
US8510261B1 (en) | 2013-08-13 |
JP2013246835A (ja) | 2013-12-09 |
JP6391217B2 (ja) | 2018-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103455540A (zh) | 从数据仓库模型生成内存模型的系统和方法 | |
US10872093B2 (en) | Dynamically switching between data sources | |
US10635675B2 (en) | Supporting pluggable databases with heterogeneous database character sets in a container database | |
EP3446242B1 (en) | Query plan generation and execution in a relational database management system with a temporal-relational database | |
US9280568B2 (en) | Zero downtime schema evolution | |
JP5819376B2 (ja) | 列ベースのデータベースに対する列スマートな機構 | |
CN104516967A (zh) | 一种电力系统海量数据管理系统及其使用方法 | |
US7814045B2 (en) | Semantical partitioning of data | |
JP2015072688A (ja) | Hadoopにおける強化されたSQLライクなクエリのためのバックグラウンドフォーマット最適化 | |
CN110688397B (zh) | 一种基于sql的分布式数据统一访问系统及方法 | |
CN110716952A (zh) | 一种多源异构数据处理方法、装置和存储介质 | |
CN102722368B (zh) | 一种基于文档树和消息泵的插件式软件设计方法 | |
Pokorný | Integration of relational and NoSQL databases | |
US20100088685A1 (en) | System and method for mapping a domain modeling language to a relational store | |
CN112417225A (zh) | 一种多源异构数据的联合查询方法与系统 | |
Ye | Research on the key technology of big data service in university library | |
US8930426B2 (en) | Distributed requests on remote data | |
US11893026B2 (en) | Advanced multiprovider optimization | |
Gašpar et al. | Integrating Two Worlds: Relational and NoSQL | |
Liu et al. | Using semantic web technologies in heterogeneous distributed database system: A case study for managing energy data on mobile devices | |
Zheng-Ping et al. | Analysis on Cloud Data Service Platform for Digital Oilfields. | |
Oduor | Using in-memory Computing to Provide Real-time and Actionable Sales Insights | |
US20240061855A1 (en) | Optimizing incremental loading of warehouse data | |
Bhandari et al. | Comparison of Data Migration Techniques from SQL Database to NoSQL Database | |
Zhao et al. | Design and Implementation of Enterprise AI Business Service System Based on NHibernate Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: German Waldo Applicant after: SAP AG Address before: German Waldo Applicant before: SAP AG |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |