数据库模式映射中的视图变量.pdf

上传人:00****42 文档编号:177233 上传时间:2018-01-31 格式:PDF 页数:19 大小:2.70MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410095893.2

申请日:

2014.03.14

公开号:

CN104050225A

公开日:

2014.09.17

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 17/30申请日:20140314|||著录事项变更IPC(主分类):G06F 17/30变更事项:申请人变更前:SAP股份公司变更后:SAP欧洲公司变更事项:地址变更前:德国瓦尔多夫变更后:德国瓦尔多夫|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

SAP股份公司

发明人:

A.凯姆勒; T.卡门兹

地址:

德国瓦尔多夫

优先权:

2013.03.14 US 13/828,027

专利代理机构:

北京市柳沈律师事务所 11105

代理人:

邵亚丽

PDF下载: PDF下载
内容摘要

本公开包括一种方法、系统和计算机可读介质。所述方法包括:在数据库系统中,接收被配置成建模第一数据库模式中的数据的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括:使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据视图;以及在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。

权利要求书

1.  一种方法,包括:
在数据库系统中,接收被配置成对第一数据库模式中的数据建模的数据模型;
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表以生成第一数据视图;以及
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。

2.
  如权利要求1所述的方法,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。

3.
  如权利要求2所述的方法,其中
第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及
第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个或多个数据表中的数据从第二数据视图生成。

4.
  如权利要求1所述的方法,其中
所述第一视图变量参考数据模型和第一数据库模式的第一实例被存储在数据表中,以及
生成所述第一数据视图包括在数据表中查找第一视图变量。

5.
  如权利要求1所述的方法,其中
所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及
生成所述第二数据视图包括在数据表中查找第二视图变量。

6.
  如权利要求1所述的方法,还包括:
接收定义第三数据视图的模式;以及
基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。

7.
  如权利要求6所述的方法,其中修改所述第三数据视图包括,
基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据视图中的一个之间的依赖性;以及
基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。

8.
  如权利要求7所述的方法,其中所述数据表中的查找返回第一视图变量和第二视图变量中的一个。

9.
  一种数据库系统,包括:
计算机系统;以及
数据存储设备,具有存储在其上的可运行程序代码,当由计算机系统运行该代码时导致计算机系统进行如下步骤:
在数据库系统中,接收对第一数据库模式中的数据建模的数据模型;
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表以生成第一数据视图;以及
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。

10.
  如权利要求9所述的数据库系统,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。

11.
  如权利要求10所述的数据库系统,其中
第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及
第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个或多个数据表中的数据从第二数据视图生成。

12.
  如权利要求9所述的数据库系统,其中
所述第一视图变量参考数据模型和第一数据库模式的第一实例被存储在数据表中,
生成所述第一数据视图包括在数据表中查找第一视图变量,
所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及
生成所述第二数据视图包括在数据表中查找第二视图变量。

13.
  如权利要求9所述的数据库系统,其中由计算机系统运行的所述可运行程序代码还导致计算机系统进行如下步骤:
接收定义第三数据视图的模式;以及
基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。

14.
  如权利要求13所述的数据库系统,其中修改所述第三数据视图包括,
基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据视图中的一个之间的依赖性;以及
基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。

15.
  一种具有存储在其上的计算机可执行程序代码的非瞬时性计算机可读存储介质,当在计算机系统上运行该计算机可执行程序代码时,使得计算机系统执行如下的步骤:
在数据库系统中,接收对第一数据库模式中的数据建模的数据模型;
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表以生成第一数据视图;以及
在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。

16.
  如权利要求15所述的非瞬时性计算机可读存储介质,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。

17.
  如权利要求16所述的非瞬时性计算机可读存储介质,其中
第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及
第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个或多个数据表中的数据从第二数据视图生成。

18.
  如权利要求15所述的非瞬时性计算机可读存储介质,其中
所述第一视图变量参考数据模型和第一数据库模式的第一实例被存储在数据表中,
生成所述第一数据视图包括在数据表中查找第一视图变量,
所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及
生成所述第二数据视图包括在数据表中查找第二视图变量。

19.
  如权利要求15所述的非瞬时性计算机可读存储介质,其中由计算机系统运行的所述可运行程序代码还导致计算机系统执行如下步骤:
接收定义第三数据视图的模式;以及
基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。

20.
  如权利要求19所述的非瞬时性计算机可读存储介质,其中修改所述第三数据视图包括,
基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据视图中的一个之间的依赖性;以及
基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。

说明书

数据库模式映射中的视图变量
技术领域
实施例涉及在互联数据库系统中的映射数据库模式。
背景技术
将商业企业(或任意其他组织)中的多种数据系统合并到集中式数据系统中正日益普遍。例如,SAP 数据库产品提供诸如内存数据库引擎的先进的数据库技术,该内存数据库引擎能够允许企业将它的最相关数据存储在使得分析能够直接在数据库中执行的主存储器中。
然而,企业可以保持分离的复本数据系统以用于他们的一些操作。例如,可以将用于美国的工厂(facility)的数据系统(例如,制造、销售等等)与用于欧洲的工厂的相应数据系统分离地保持。可以通过创建用于分离数据系统的数据库模式的多个实例来实现提供用于集中式数据系统中的两个数据系统中的每一个的数据集。然而,数据建模成为挑战,因为数据模型对于数据库模式来说是典型专用的。管理用于每个数据库模式的数据模型的多个分离拷贝从发展观点来看可能是费时的,并且当数据模型的新版本变得可用并且新拷贝需要被重建时可能是易出错的。
发明内容
一个实施例包括一种用于在互联数据库系统中共享数据的方法。所述方法包括::在数据库系统中,接收被配置成对第一数据库模式中的数据进行建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括:使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据视图,以及在数据库系统中使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。
附图说明
示例实施例将从此处下面给出的详细说明和附图中变得更完全地被理解,其中通过相似的参考标记表示相似的元件,仅仅通过例示的方式给出详细说明和附图并且因此不限制示例实施例,并且其中:
图1示出根据一个或多个示例实施例的数据库系统。
图2A和图2B示出根据一个或多个示例实施例的映射表。
图3示出根据一个或多个示例实施例的用于生成数据视图的通用过程流。
图4示出根据一个或多个示例实施例的、用于使用相同数据模型相对于数据库模式的多个实例生成数据视图的数据模型输出管理器。
图5示出根据一个或多个示例实施例的映射附加视图。
图6示出根据一个或多个示例实施例的数据库系统的高级系统图。
应该注意到,这些附图是用来示出在特定示例实施例中利用的方法、结构和/或材料的一般特性,并且用于补充下面提供的书写描述。然而,这些附图不是按比例的并且可能不精确地反映任意给出实施例的精确的结构或性能特征,并且将不会解释为定义或限制由示例实施例包含的数值范围或性质。例如,为了清楚,可以减少或放大结构元件的相对定位。在多个附图中的相似或相同的参考数字的使用是用来指示相似或相同的元件或特征的存在。
具体实施方式
尽管示例实施例可以包括具有不同的修改和替换形式,但在附图中以举例的方式示出了示例实施例,并且将在此处详细描述示例实施例。然而,应当理解,并非意图将示例实施例局限于公开的具体形式,而是相反地,示例实施例应覆盖落入示例实施例范围内的所有修改、等效物以及替换物。遍及附图的描述,相同的附图标记始终指代相同的元件。
图1示出根据一个或多个示例实施例的数据库系统。图1中示出根据本公开实施例的数据库系统100。数据库系统100可以包括数据库102。一个或多个数据库模式实例(“数据库模式”)104a、104b可以定义在数据库系统100中。可以提供数据模型输出管理器106以允许用户查询接收到的数据模型108来生成报告、结果表、及其他输出110a、110b。
该图示出的配置中,数据库系统100安装在企业(顾客)中以提高或最终替换企业的数据系统。例如,企业可以具有预存在(旧的)的当前操作的数据系统10和12。例如,企业中的典型数据系统包括企业资源计划(ERP)、客户关系管理(CRM)、人力资本管理(HCM)等等。数据系统10、12的部分可以在数据库系统100中迁移,或在一些情境中复制到数据库系统100中。随着数据继续从企业中(例如,销售、制造等等)的多种操作14中生成,数据可以继续馈入到预存在的数据系统10、12中。对于已经迁移(或复制)的数据,来自企业操作14的数据可以输入到数据库系统100中。例如,数据可以存储在数据库模式104a、104b中,该数据库模式104a、104b可以表示已经迁移到数据库系统100中的各个数据系统10、12的部分。
在一些实施例中,提供商可以提供数据建模服务以支持数据库系统100的用户。例如,提供商可以提供数据模型108以建模包含在数据库模式104a、104b中的数据。在一些实施例中,数据模型输出管理器106可以接收数据模型108并且,使用接收到的数据模型来查询数据模型以从数据库模式(例如,104a)中提取数据(例如,结果表110a)。在特定实施例中,例如,数据库系统100可以是由SAP公司开发和销售的SAP 数据库产品。SAP支持组可以向顾客提供称作HANA内容包的数据模型以建模定义在数据库系统100中的数据库模式中的数据。
如通常理解的,“数据库模式”是定义数据的组织的规范。例如,数据可以组织成在规范中召集的数据表的集(例如,“顾客信息”、“产品信息”等等)。每个数据表可以具有存储在规范中的表字段(例如,“顾客ID”、“顾客地址”、“产品ID”等等)、字段属性、等等。规范可以存储在称作数据字典的文件中。
用户可以创建数据库模式的“实例”。例如,当数据库模式已经被例示时,数据库系统100可以创建定义在数据库模式中的数据表的实例(例如,“顾客信息”,“产品信息”等等);例如,通过在数据库系统中创建数据文件的集。数据表实例则可以根据通过数据库模式定义的组织方案填充有实际数据(例如,来自企业的数据系统或诸如销售,制造等等的操作)。
在大部分背景下,术语“数据库模式”可以理解为指的是数据库模式的“实例”,因为大多数情况下谈到数据库模式的特定实例而不是数据组织本身。例如,图1中的104a、104b表示数据库模式的实例。因此,短语“数 据库模式”将被理解为指的是数据库模式的实例而不是指的是数据的组织。如果“数据库模式”是用来指的是数据的组织本身,则将明确的做出该意向。
可以在数据库系统中创建相同数据库模式的多个实例。这如何可以发生的示例可以通过图1中示出的配置提供。例如,假定企业使用ERP系统来管理它的各种经营活动当中的信息流,并且企业已经将美国的ERP系统的拷贝配置为数据系统10并且将欧洲的另一拷贝配置为数据系统12。还假定企业已经将它的销售数据从每个ERP数据系统10、12迁移到数据库系统100。企业可能想要将美国销售数据与欧洲销售数据分离地保存。为此,用户可以定义在数据库系统100中复制数据组织的数据库模式,该数据组织用于将销售数据存储在ERP数据系统10和12中。然后用户可以通过将来自ERP数据系统10的销售数据迁移到第一实例中来创建用于美国销售的数据库模式的第一实例104a。用户还可以通过将来自ERP数据系统12的销售数据迁移到第二实例中来创建用于欧洲销售的数据库模式的第二实例104b。数据库模式104a、104b表示相同数据库模式的多个实例。
继续图1,根据本发明的原理,数据模型输出管理器106可以使用相同数据模型生成用于数据库模式的多个实例104a、140b中的每一个的分离数据视图。例如,数据模型输出管理器106可以使用第一数据视图(未示出)中的数据模型108以允许用户使用第一数据视图从包含在数据库模式104a中的数据生成报告和他输出表110a。数据模型输出管理器106可以使用第二数据视图(未示出)中的相同数据模型108以允许用户使用第二数据视图从包含在数据库模式104b中的数据生成其他输出110b。将在下面更详细地讨论本公开的此方面。
图2A和图2B示出根据一个或多个示例实施例的映射表。如图2A中所示,映射表205包括四个列。四个列是内容包210、视图变量215、作者模式220、以及物理模式225。映射表205可以被配置成将视图变量映射到访问不同模式的不同视图集。视图变量可以用于唯一地识别内容包。映射表205允许参考内容包级别的模式映射从而每个内容包可以具有不同的模式映射。内容包可以具有或可以不具有相同模式。内容包可以具有或可以不具有相同的物理模式。
例如,映射表205的开头两行分别包括视图变量,ERP_1和ERP_2。每个视图变量与相同的内容包Ven1.Pkg1.Comp1相关联。内容包可以与供应商 (例如,)、包(例如,ERP)、以及组件(例如,ERP核心组件(ECC))相关联。然而,每个视图变量分别与不同的物理(例如、数据库)模式(ERP1和ERP2)相关联。如图1中所示,如果企业使用ERP系统来管理它的各种经营活动当中的信息流,并且例如,企业已经将美国中的ERP系统的拷贝配置为数据系统10并且将欧洲中的另一拷贝配置为数据系统12,则此情景可以发生。
利用映射表205,视图变量可以由系统(例如,客户系统)的管理员配置,并且可以用于得到访问不同模式的视图的不同集。系统管理员可以指定系统管理员需要视图的多少不同变量,并且存在的可能性是指定应该如何配置每个指定变量的模式映射。在以上情景中,系统管理员可以指定具有两个视图变量,并且将指定一个视图变量正在访问物理模式ERP1而其他变量正在访问物理模式ERP2。
当基于内容包(例如,HANA内容包)中的被建模对象生成数据库(例如,HANATM数据库)目录对象时,考虑模式映射。当生成目录对象时,考虑利用变量的扩展模式映射。利用变量的扩展模式映射可以对于每创建的视图变量创建一个目录对象。每个目录对象(每视图变量)考虑从作者模式映射到物理模式的相应模式。
此外,基于对其存在不同视图变量(例如,映射表205中示出的ERP_1和ERP_2)的视图(下文中,为了清楚称作映射视图)的视图(下文中,为了清楚称作调用视图)可以指定调用视图调用了视图变量中的哪个。关于一个视图变量,不存在对于调用视图参考哪个映射视图的混乱。然而,如果对于给定内容包存在多于一个映射视图,则调用视图可能参考不正确的映射视图。因此,定义另一映射表250。
如图2B中所示,映射表250包括四个列。该四个列是调用包255、调用包视图变量260、被调用包265、以及被调用包视图变量270。映射表250可以被配置成将调用视图映射到正确的映射视图。例如,内容包的HCM组件可以包括调用ERP组件(例如,映射视图)的调用视图。映射表250示出映射到视图变量ERP_1的视图变量HCM_1。
利用映射表250,视图变量可以由系统(例如,客户系统)的管理员配置,并且可以用于将调用视图映射到映射视图。在上面的情景中,如果两个或更多视图变量可能已经被调用视图参考,则系统管理员可以进行指定以使得调 用视图参考正确的映射视图。
一个实施例包括一种用于在互联数据库系统中共享数据的方法。所述方法包括:在数据库系统中,接收被配置成对第一数据库模式中的数据进行建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括:使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据视图;以及在数据库系统中使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。
图3示出根据一个或多个示例实施例的用于生成数据视图的一般过程流。如图3中所示,示出根据示例实施例的数据库系统100中的一般工作流。该工作流可以在处理块302中开始,其中数据库系统100将数据模型108接收到数据库系统100中。在一些实施例中,数据模型108可以指定将在包括给定数据库模式的数据表和表字段上执行的数据库操作(例如,JOIN(连接)、SELECT(选择)、AVERAGE(平均)等等)。例如,可以从企业之内的开发小组、从第三方提供商等等提供数据模型108。
根据示例实施例,数据模型108可以用于建模多个实例当中的数据库模式的每个实例。例如,在处理块304中,用户可以选择将建模的数据库模式的实例(例如,104a);例如,通过指定实例的名称。在一些实施例中,用户界面可以显示从中进行选择的数据库模式实例的列表。
当选择多个实例当中的数据库模式的实例时,可以使用视图变量将该实例映射到数据库模式。例如,在处理块304中,数据模型输出管理器106可以参考(例如,利用查找或查询)映射表205来确定用于数据库模式的视图变量。例如,如果用户选择了与内容包Ven1.Pkg1.Comp1和物理模式ERP1相关联的数据库模式的实例,则数据模型输出管理器106可以将视图变量确定为ERP_1。用于名称为table1(表1)的数据表的结果模式映射可以是“ERP_1/Ven1.Pkg1.Comp1/table1”。
在处理块308中,数据模型输出管理器106可以使用在处理块302中接收到的数据模型108来生成数据视图310a。数据视图310a然后可以由用户查询。例如,在步骤322中,可以从用户接收到一个或多个查询(例如,SELECT),并且在步骤324中,来自查询的结果110a可以输出给用户;例 如,在显示器上、打印出等等。数据视图包含指定存储的数据的“视图”(例如,表、图、报告等等)的信息。数据视图指定将访问哪些表、这些表的哪些字段等等。例如,数据视图可以经由SQL选择语句访问以返回数据到被称为“结果表”的数据表中。例如,结果表可以在显示器上呈现给用户。数据视图典型是持久的(例如,存储在数据储存器中),而结果表典型是暂时的(例如,显示在监视器上),但是可以被打印(例如,报告)。
另一用户可能想要使用相同的数据模型108来建模数据库模式的另一实例。因此,在处理块306中,其他用户可以选择将被建模的另一数据库模式(例如,104b)。当选择数据库模式的另一实例时,可以使用另一视图变量将该实例映射到数据库模式。例如,在处理块305中,数据模型输出管理器106可以参考(例如,利用查找或查询)映射表205来确定用于数据库模式的视图变量。例如,如果用户选择了与内容包Ven1.Pkg1.Comp1和物理模式ERP2相关联的数据库模式的实例,则数据模型输出管理器106可以将视图变量确定为ERP_2。用于名称为table1的数据表的结果模式映射可以是“ERP_2/Ven1.Pkg1.Comp1/table1”。
处理块308可以被启用(invoke)以使得数据模型输出管理器106使用在处理块302中接收到的数据模型108来生成第二数据视图310b。用户然后可以查询第二数据视图310b(在步骤332中)以产生多种输出110b(在步骤334中)。
图4示出根据一个或多个示例实施例的、用于使用相同数据模型相对于数据库模式的多个实例生成数据视图的数据模型输出管理器。如图4中所示,在一些实施例中,数据模型输出管理器106可以包括模式映射模块402、数据视图生成器406以及数据库模式404。数据模型108可以指明数据库系统100中的数据库模式(例如,104a)的特定实例。当数据模型输出管理器106接收数据模型108时,模式映射模块402可以将接收到的数据模型映射为数据模型408,并且将接收到的数据模型与指明的数据库模式104a相关联。
根据示例实施例,模式映射模块402可以映射接收到的数据模型108的另一数据模型408',并且将数据模型408'与数据库模式(例如,104b)的另一实例相关联。例如,如上参照图2A和图3所述,在与内容包Ven1.Pkg1.Comp1和物理模式ERP1相关联的数据库模式的实例中,数据模型输出管理器106可以将视图变量确定为ERP_1,并且在与内容包Ven1.Pkg1.Comp1和物理模 式ERP2相关联的数据库模式的实例中,数据模型输出管理器106可以将视图变量确定为ERP_2。
例如,映射的数据模型408可以参照不同于数据库模式104b中的数据表的数据库模式104a中的数据表作为用于数据模型的数据的源。因此,映射数据模型408'可以被映射,从而对数据库模式104b中的相应的数据表与数据库模式104a中的相应数据表进行不同地参考。例如,数据库模式104a中的数据表的名称与数据库模式104b中的数据表的名称相同。然而,给定数据库模式中的数据表的全技术名称包括该数据表属于的数据库模式的名称;例如,SCHEMA1.TABLE1可以是数据库模式SCHEMA1中的TABLE1的全技术名称。访问数据表需要全技术名称。因此,根据示例实施例,全技术名称可以根据映射(例如,基于表205中的映射)被修改;因此:
Select From ERP_1.SCHEMA1.TABLE1…
(从ERP_1.SCHEMA1.TABLE1…选择)

Select From ERP_2.SCHEMA1.TABLE1…
(从ERP_2.SCHEMA1.TABLE1…选择)
数据视图生成器406可以接收对映射数据模型408的参考,并且生成参考相关联的数据库模式104a中的数据表的数据视图410a。同样地,数据视图生成器406可以接收对映射数据模型408'的参考,并且生成参考相关联的数据库模式104b中的数据表的数据视图410b。
在一些实施例中,数据视图410a、410b可以持久保存在数据库模式中。参照图4,例如,数据库模式404可以存储数据视图410a。用户可以运行数据视图410a以从数据库模式104a中参考的数据产生结果表110a。同样地,数据库模式404可以存储数据视图410b,并且用户可以运行数据视图410b以从在数据库模式104b中参考的数据产生输出110b。
因为数据模型408使用来自数据库模式104a的数据并且数据模型拷贝408'使用来自数据库模式104b的数据,所以包含在通过运行各自的数据视图410a、410b生成的各自的结果表110a、110b中的数据很可能不同。然而,因为数据模型408'和数据模型408共享相同的作者模式,所以数据视图410a和410b的名称将是相同的。例如,如果数据模型408指定称作ViewOnTotalSales的数据视图,则数据视图410a将使用名称 ViewOnTotalSales并且数据视图410b还将使用名称ViewOnTotalSales,从而引起命名冲突。
根据示例实施例,如上所述的方法还可以包括接收定义第三数据视图的模式,并且基于生成的第一数据视图和生成的第二数据视图中的一个来修改第三数据视图。修改第三数据视图可以包括基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据视图中的一个之间的依赖性,并且基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图和生成的第二数据视图中的一个。
图5示出根据一个或多个示例实施例的映射附加(add-on)视图。如图5中所示,映射附加视图可以包括附加视图块、数据模型输出管理器106(包括模式映射模块402和数据视图生成器406)、数据视图506、数据视图510、模式1和模式2。如上面讨论的,调用视图可以基于映射视图;图5示出作为调用视图的附加视图502以及作为映射视图的数据视图506和数据视图510之一。模式映射模块402可以利用表250来将附加视图502映射到数据视图506和数据视图510中的一个。例如,如果表250指示附加视图502参考数据视图506,则模式508可以是结果模式。另一方面,如果表250指示附加视图502参考数据视图510,则模式512可以是结果模式。
继续上面的两个示例,给定数据库模式中的数据视图的全技术名称包括该数据视图属于的数据库模式的名称;例如,SCHEMA1.VIEW1(或ViewOnTotalSales)可以是数据库模式SCHEMA1中的VIEW1(或ViewOnTotalSales)的全技术名称。访问数据视图需要全技术名称。因此,根据示例实施例,全技术名称可以根据映射(例如,基于表250中的映射)被修改;因此:
Select From ERP_1.SCHEMA1.VIEW1…
(从ERP_1.SCHEMA1.VIEW1…中选择)

Select From ERP_2.SCHEMA1.VIEW1…
(从ERP_2.SCHEMA1.VIEW1…中选择)
以及,
Select From ERP_1.SCHEMA1.ViewOnTotalSales…
(从ERP_1.SCHEMA1.ViewOnTotalSales…中选择)

Select From ERP_2.SCHEMA1.ViewOnTotalSales…
(从ERP_2.SCHEMA1.ViewOnTotalSales…中选择)
因此,如果没有视图变量被引入,则模式映射模块402将不被获得,并且前缀被添加到附加视图的技术名称上。然而,对于每个依赖性,指定对于每个调用包(例如,利用表250)哪个视图变量是相关的可以将相应的映射视图链接到调用视图。
图6示出根据一个或多个示例实施例的数据库系统的高级系统图。例如,数据库系统可以是如上所述的数据库系统100。如图6中所示,数据库系统可以包括被配置成根据本公开操作的计算机系统602的高级框图。计算机系统602可以包括中央处理单元(CPU)612或其他类似的数据处理组件,包括多处理器配置。
计算机系统602可以包括各种存储器组件。例如,存储器组件可以包括易失性存储器614(例如,随机存取存储器,RAM)和数据存储设备616。可以提供通信接口618以允许计算机系统602通过诸如局域网(LAN)、互联网等等的通信网络622通信。内部总线620可以互联包括计算机系统602的组件。
数据存储设备616可以包括非瞬时性计算机可读介质,该非瞬时性计算机可读介质上存储有计算机可执行程序代码632。计算机可运行程序代码632可以由CPU612运行以导致CPU执行本公开的步骤,例如图3中阐明的步骤,或处理图4和图5中示出的数据模型输出管理器106的实施例中描述的处理。数据存储设备616可以存储诸如对象实例数据、运行时间对象、以及此处描述的任意其他数据(例如,映射表205和250)的数据结构634。在一些实施例中,例如,数据存储设备616可以是用于提供数据库102以及用于存储数据库模式104a、104b的存储子系统。
用户可以使用适当的用户接口设备642与计算机系统602交互。它们可以包括,例如,诸如键盘、键区、鼠标或其他指示设备的输入设备和诸如显示器的输出设备。
一些上面的示例实施例描述为被描绘为流程图的过程或方法。虽然流程图将操作描述为顺序进程,但是可以平行、并行或同时地执行许多操作。此外,操作的次序可以重新排列。当处理的操作被完成时可以终止处理,但是 还可以具有不包括在图中的额外的步骤。处理可以相应于方法、函数、过程、子例程、子程序等等。
通过流程图示出的其中一些的上述讨论到的方法可以通过硬件、软件、固件、中间件、微码、硬件描述语言或其任何组合实现。当以软件、固件、中间件或微码实现时,用于执行必要的任务的程序代码或代码段可以存储在机器或诸如存储介质的计算机可读介质中。(多个)处理器可以执行必要的任务。
此处公开的特定结构细节和功能细节仅仅是代表性的,目的在于描述示例实施例。然而,示例实施例可以用替代形式来具体实现,不应被看作仅仅局限于此处描述的实施例。
将会理解,尽管此处可能使用词语第一、第二等等来描述不同的元件,但这些元件不应受到这些词语的限制。这些词语仅仅用于将一个元件与另一个元件区分开来。例如,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件,而不偏离示例实施例的范围。如此处使用的,术语“和/或”包括一个或多个相关列出项目中的任意一个以及所有组合。
将会理解,当一个元件被称为“连接”或“耦接”到另一元件时,它可以直接连接或耦接到所述另一元件,或者也可以存在居间的元件。相反,当一个元件被称为“直接连接到”或“直接耦接到”另一元件时,不均在居间的元件。用于描述元素之间的关系的其他的词应当以类似的方式解释(例如,“之间”对于“直接之间”,“相邻”对于“直接相邻”等等)。
此处使用的术语仅仅是为了描述特定实施例,并非意图限制示例实施例。如此处使用的,单数形式“一”、“一个”也意图包括复数形式,除非上下文明确地给出相反指示。还将理解,当此处中使用词语“包括”、“包含”时,表明存在所描述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。
还应注意到,在一些替换实现方式中,所提到的功能/动作可以不按附图中描述的顺序进行。例如,取决于所涉及的功能/动作,两个相继示出的图可能实际上是基本并发地执行的,或者有时可能以相反的次序执行。
除非另外定义,否则此处使用的所有术语(包括技术术语和科学术语)所具有的含义与本示例实施例所属领域的普通技术人员通常理解的含义相 同。还将理解,术语,例如,通常使用的词典中定义的那些术语,应该被解释为所具有的含义与它们在相关领域上下文中的含义一致,而不应理想化地或过分形式化地对其进行解释,除非此处明确地如此定义。
上述示例实施例和相应详细说明的部分按照计算机存储器之内的关于数据比特的软件、或操作的算法和符号表示来呈现。这些描述和表示是本领域普通技术人员向本领域的其他普通技术人员有效地传达他们的工作的实质的那些。算法,如这里使用并且通常按照原样使用,被构思为导致期望的结果的自相一致步骤的。步骤是需要物理数量的物理操纵的那些步骤。通常,虽然不一定,但是这些数量采取能够存储、传输、组合、比较和相反操作的光学的、电的、或磁性信号的形式。时常已经证明便利的的是,主要地出于对共同使用的考虑,将这些信号称为比特、值、元素、码元、特性、术语、数目等等。
在上述说明性实施例中,参考可以实现为程序模块或功能处理的操作的动作和符号表示(例如,以流程图的形式)包括执行特定任务或实现特定抽象数据类型并且可以使用现有的结构元件中的现有的硬件描述和/或实现例程、程序、对象、分量、数据结构等等。这种现有的硬件可以包括一个或多个中央处理单元(CPU)、数字信号处理器(DSP)、应用指定集成电路、现场可编程门阵列(FPGA)计算机等等。
此处描述为相互通信的元件直接或间接地能够通过用于传输数据的任何数量的不同系统进行通信,包括但不限于共享存储器通信、局域网、广域网、电话网络、蜂窝网络、光纤网络、卫星网络、红外网络、射频网络、以及可以用来在设备间传送信息的任何其他类型的网络。此外,系统间的通信可以通过已知或变得已知的任何一个或多个传输协议来进行,如,异步传输模式(ATM)、网际协议(IP)、超文本传输协议(HTTP)和无线应用协议(WAP)。
然而,应当记住的是,全部这些和类似术语将与合适的物理量相关联并且仅仅是应用于这些数量的方便的标签。否则除非具体地陈述,或如从讨论明显的是,诸如“处理”或“计算”或“算出”或“确定”或“显示”等等,参照计算机系统或类似电子计算设备的动作和处理,所述计算机系统或类似电子计算设备将表示为计算机系统的寄存器和存储器之内的物理的、电子量的数据操作和变换成为类似地表示为计算机系统存储器或寄存器或其他的 这种信息存储、传输或显示设备之内的物理量。其他数据
还注意实现示例实施例的方面的软件以程序存储器介质的某些形式被典型地编码通过一些类型的传输介质被实现。程序存储器介质可以是磁性(例如,软盘或硬盘)或光学的(例如,光盘只读存储器、或“CDROM”),并且可以是只读或随机访问的。类似地,传输介质可以是绞合线对、同轴电缆、光学纤维或本领域已知的其它的适当的传输介质。示例实施例不由任何给定实现的这些方面限制。
最后,也应注意,当所附权利要求陈述此处描述的特征的特定组合时,本公开的范围不局限于以下权利要求的特定组合,但是此时不扩展为不管此处公开的特征或实施例的任何组合已经具体地列举在权利要求中而包含该特定组合。

数据库模式映射中的视图变量.pdf_第1页
第1页 / 共19页
数据库模式映射中的视图变量.pdf_第2页
第2页 / 共19页
数据库模式映射中的视图变量.pdf_第3页
第3页 / 共19页
点击查看更多>>
资源描述

《数据库模式映射中的视图变量.pdf》由会员分享,可在线阅读,更多相关《数据库模式映射中的视图变量.pdf(19页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104050225A43申请公布日20140917CN104050225A21申请号201410095893222申请日2014031413/828,02720130314USG06F17/3020060171申请人SAP股份公司地址德国瓦尔多夫72发明人A凯姆勒T卡门兹74专利代理机构北京市柳沈律师事务所11105代理人邵亚丽54发明名称数据库模式映射中的视图变量57摘要本公开包括一种方法、系统和计算机可读介质。所述方法包括在数据库系统中,接收被配置成建模第一数据库模式中的数据的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使。

2、用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据视图;以及在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。30优先权数据51INTCL权利要求书3页说明书9页附图6页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书9页附图6页10申请公布号CN104050225ACN104050225A1/3页21一种方法,包括在数据库系统中,接收被配置成对第一数据库模式中的数据建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数。

3、据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表以生成第一数据视图;以及在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。2如权利要求1所述的方法,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。3如权利要求2所述的方法,其中第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个。

4、或多个数据表中的数据从第二数据视图生成。4如权利要求1所述的方法,其中所述第一视图变量参考数据模型和第一数据库模式的第一实例被存储在数据表中,以及生成所述第一数据视图包括在数据表中查找第一视图变量。5如权利要求1所述的方法,其中所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及生成所述第二数据视图包括在数据表中查找第二视图变量。6如权利要求1所述的方法,还包括接收定义第三数据视图的模式;以及基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。7如权利要求6所述的方法,其中修改所述第三数据视图包括,基于数据表中的查找确定第三数据视图与生成的第一数据视图和。

5、生成的第二数据视图中的一个之间的依赖性;以及基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。8如权利要求7所述的方法,其中所述数据表中的查找返回第一视图变量和第二视图变量中的一个。9一种数据库系统,包括计算机系统;以及数据存储设备,具有存储在其上的可运行程序代码,当由计算机系统运行该代码时导致计算机系统进行如下步骤在数据库系统中,接收对第一数据库模式中的数据建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据权利要求书CN104050225A2/3页3视图,包括使用第一视图变量参考包括第一数据库模式的第一实。

6、例的一个或多个数据表以生成第一数据视图;以及在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。10如权利要求9所述的数据库系统,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。11如权利要求10所述的数据库系统,其中第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个或多个数据表中的数据从第二数据视图生成。12如权利要求9所述的数据。

7、库系统,其中所述第一视图变量参考数据模型和第一数据库模式的第一实例被存储在数据表中,生成所述第一数据视图包括在数据表中查找第一视图变量,所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及生成所述第二数据视图包括在数据表中查找第二视图变量。13如权利要求9所述的数据库系统,其中由计算机系统运行的所述可运行程序代码还导致计算机系统进行如下步骤接收定义第三数据视图的模式;以及基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。14如权利要求13所述的数据库系统,其中修改所述第三数据视图包括,基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数。

8、据视图中的一个之间的依赖性;以及基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。15一种具有存储在其上的计算机可执行程序代码的非瞬时性计算机可读存储介质,当在计算机系统上运行该计算机可执行程序代码时,使得计算机系统执行如下的步骤在数据库系统中,接收对第一数据库模式中的数据建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表以生成第一数据视图;以及在数据库系统中,使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用。

9、第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表以生成第二数据视图。16如权利要求15所述的非瞬时性计算机可读存储介质,其中所述第一数据视图和第二数据视图是在共享的数据库模式的实例中存储的分离数据视图。17如权利要求16所述的非瞬时性计算机可读存储介质,其中权利要求书CN104050225A3/3页4第一结果表通过访问存储在第一数据库模式的第一实例中的所述一个或多个数据表中的数据从第一数据视图生成,以及第二结果表通过访问存储在第一数据库模式的第二实例中的所述一个或多个数据表中的数据从第二数据视图生成。18如权利要求15所述的非瞬时性计算机可读存储介质,其中所述第一视图变量参考数据。

10、模型和第一数据库模式的第一实例被存储在数据表中,生成所述第一数据视图包括在数据表中查找第一视图变量,所述第二视图变量参考数据模型和第一数据库模式的第二实例被存储在数据表中,以及生成所述第二数据视图包括在数据表中查找第二视图变量。19如权利要求15所述的非瞬时性计算机可读存储介质,其中由计算机系统运行的所述可运行程序代码还导致计算机系统执行如下步骤接收定义第三数据视图的模式;以及基于生成的第一数据视图和生成的第二数据视图中的一个修改第三数据视图。20如权利要求19所述的非瞬时性计算机可读存储介质,其中修改所述第三数据视图包括,基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据。

11、视图中的一个之间的依赖性;以及基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图与生成的第二数据视图中的一个。权利要求书CN104050225A1/9页5数据库模式映射中的视图变量技术领域0001实施例涉及在互联数据库系统中的映射数据库模式。背景技术0002将商业企业或任意其他组织中的多种数据系统合并到集中式数据系统中正日益普遍。例如,SAP数据库产品提供诸如内存数据库引擎的先进的数据库技术,该内存数据库引擎能够允许企业将它的最相关数据存储在使得分析能够直接在数据库中执行的主存储器中。0003然而,企业可以保持分离的复本数据系统以用于他们的一些操作。例如,可以将用于美国的工厂。

12、(FACILITY)的数据系统例如,制造、销售等等与用于欧洲的工厂的相应数据系统分离地保持。可以通过创建用于分离数据系统的数据库模式的多个实例来实现提供用于集中式数据系统中的两个数据系统中的每一个的数据集。然而,数据建模成为挑战,因为数据模型对于数据库模式来说是典型专用的。管理用于每个数据库模式的数据模型的多个分离拷贝从发展观点来看可能是费时的,并且当数据模型的新版本变得可用并且新拷贝需要被重建时可能是易出错的。发明内容0004一个实施例包括一种用于在互联数据库系统中共享数据的方法。所述方法包括在数据库系统中,接收被配置成对第一数据库模式中的数据进行建模的数据模型;在数据库系统中,使用接收到的。

13、数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据视图,以及在数据库系统中使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。附图说明0005示例实施例将从此处下面给出的详细说明和附图中变得更完全地被理解,其中通过相似的参考标记表示相似的元件,仅仅通过例示的方式给出详细说明和附图并且因此不限制示例实施例,并且其中0006图1示出根据一个或多个示例实施例的数据库系统。0007图2A和图2B示出根据一个或多个示例。

14、实施例的映射表。0008图3示出根据一个或多个示例实施例的用于生成数据视图的通用过程流。0009图4示出根据一个或多个示例实施例的、用于使用相同数据模型相对于数据库模式的多个实例生成数据视图的数据模型输出管理器。0010图5示出根据一个或多个示例实施例的映射附加视图。0011图6示出根据一个或多个示例实施例的数据库系统的高级系统图。说明书CN104050225A2/9页60012应该注意到,这些附图是用来示出在特定示例实施例中利用的方法、结构和/或材料的一般特性,并且用于补充下面提供的书写描述。然而,这些附图不是按比例的并且可能不精确地反映任意给出实施例的精确的结构或性能特征,并且将不会解释为。

15、定义或限制由示例实施例包含的数值范围或性质。例如,为了清楚,可以减少或放大结构元件的相对定位。在多个附图中的相似或相同的参考数字的使用是用来指示相似或相同的元件或特征的存在。具体实施方式0013尽管示例实施例可以包括具有不同的修改和替换形式,但在附图中以举例的方式示出了示例实施例,并且将在此处详细描述示例实施例。然而,应当理解,并非意图将示例实施例局限于公开的具体形式,而是相反地,示例实施例应覆盖落入示例实施例范围内的所有修改、等效物以及替换物。遍及附图的描述,相同的附图标记始终指代相同的元件。0014图1示出根据一个或多个示例实施例的数据库系统。图1中示出根据本公开实施例的数据库系统100。。

16、数据库系统100可以包括数据库102。一个或多个数据库模式实例“数据库模式”104A、104B可以定义在数据库系统100中。可以提供数据模型输出管理器106以允许用户查询接收到的数据模型108来生成报告、结果表、及其他输出110A、110B。0015该图示出的配置中,数据库系统100安装在企业顾客中以提高或最终替换企业的数据系统。例如,企业可以具有预存在旧的的当前操作的数据系统10和12。例如,企业中的典型数据系统包括企业资源计划ERP、客户关系管理CRM、人力资本管理HCM等等。数据系统10、12的部分可以在数据库系统100中迁移,或在一些情境中复制到数据库系统100中。随着数据继续从企业中。

17、例如,销售、制造等等)的多种操作14中生成,数据可以继续馈入到预存在的数据系统10、12中。对于已经迁移或复制的数据,来自企业操作14的数据可以输入到数据库系统100中。例如,数据可以存储在数据库模式104A、104B中,该数据库模式104A、104B可以表示已经迁移到数据库系统100中的各个数据系统10、12的部分。0016在一些实施例中,提供商可以提供数据建模服务以支持数据库系统100的用户。例如,提供商可以提供数据模型108以建模包含在数据库模式104A、104B中的数据。在一些实施例中,数据模型输出管理器106可以接收数据模型108并且,使用接收到的数据模型来查询数据模型以从数据库模式。

18、例如,104A中提取数据例如,结果表110A。在特定实施例中,例如,数据库系统100可以是由SAP公司开发和销售的SAP数据库产品。SAP支持组可以向顾客提供称作HANA内容包的数据模型以建模定义在数据库系统100中的数据库模式中的数据。0017如通常理解的,“数据库模式”是定义数据的组织的规范。例如,数据可以组织成在规范中召集的数据表的集例如,“顾客信息”、“产品信息”等等。每个数据表可以具有存储在规范中的表字段例如,“顾客ID”、“顾客地址”、“产品ID”等等)、字段属性、等等。规范可以存储在称作数据字典的文件中。0018用户可以创建数据库模式的“实例”。例如,当数据库模式已经被例示时,数。

19、据库系统100可以创建定义在数据库模式中的数据表的实例例如,“顾客信息”,“产品信息”等等);例如,通过在数据库系统中创建数据文件的集。数据表实例则可以根据通过数据库模说明书CN104050225A3/9页7式定义的组织方案填充有实际数据例如,来自企业的数据系统或诸如销售,制造等等的操作)。0019在大部分背景下,术语“数据库模式”可以理解为指的是数据库模式的“实例”,因为大多数情况下谈到数据库模式的特定实例而不是数据组织本身。例如,图1中的104A、104B表示数据库模式的实例。因此,短语“数据库模式”将被理解为指的是数据库模式的实例而不是指的是数据的组织。如果“数据库模式”是用来指的是数据。

20、的组织本身,则将明确的做出该意向。0020可以在数据库系统中创建相同数据库模式的多个实例。这如何可以发生的示例可以通过图1中示出的配置提供。例如,假定企业使用ERP系统来管理它的各种经营活动当中的信息流,并且企业已经将美国的ERP系统的拷贝配置为数据系统10并且将欧洲的另一拷贝配置为数据系统12。还假定企业已经将它的销售数据从每个ERP数据系统10、12迁移到数据库系统100。企业可能想要将美国销售数据与欧洲销售数据分离地保存。为此,用户可以定义在数据库系统100中复制数据组织的数据库模式,该数据组织用于将销售数据存储在ERP数据系统10和12中。然后用户可以通过将来自ERP数据系统10的销售。

21、数据迁移到第一实例中来创建用于美国销售的数据库模式的第一实例104A。用户还可以通过将来自ERP数据系统12的销售数据迁移到第二实例中来创建用于欧洲销售的数据库模式的第二实例104B。数据库模式104A、104B表示相同数据库模式的多个实例。0021继续图1,根据本发明的原理,数据模型输出管理器106可以使用相同数据模型生成用于数据库模式的多个实例104A、140B中的每一个的分离数据视图。例如,数据模型输出管理器106可以使用第一数据视图(未示出)中的数据模型108以允许用户使用第一数据视图从包含在数据库模式104A中的数据生成报告和他输出表110A。数据模型输出管理器106可以使用第二数据。

22、视图(未示出)中的相同数据模型108以允许用户使用第二数据视图从包含在数据库模式104B中的数据生成其他输出110B。将在下面更详细地讨论本公开的此方面。0022图2A和图2B示出根据一个或多个示例实施例的映射表。如图2A中所示,映射表205包括四个列。四个列是内容包210、视图变量215、作者模式220、以及物理模式225。映射表205可以被配置成将视图变量映射到访问不同模式的不同视图集。视图变量可以用于唯一地识别内容包。映射表205允许参考内容包级别的模式映射从而每个内容包可以具有不同的模式映射。内容包可以具有或可以不具有相同模式。内容包可以具有或可以不具有相同的物理模式。0023例如,映。

23、射表205的开头两行分别包括视图变量,ERP_1和ERP_2。每个视图变量与相同的内容包VEN1PKG1COMP1相关联。内容包可以与供应商例如,、包例如,ERP、以及组件例如,ERP核心组件ECC相关联。然而,每个视图变量分别与不同的物理例如、数据库模式(ERP1和ERP2)相关联。如图1中所示,如果企业使用ERP系统来管理它的各种经营活动当中的信息流,并且例如,企业已经将美国中的ERP系统的拷贝配置为数据系统10并且将欧洲中的另一拷贝配置为数据系统12,则此情景可以发生。0024利用映射表205,视图变量可以由系统例如,客户系统的管理员配置,并且可以用于得到访问不同模式的视图的不同集。系统。

24、管理员可以指定系统管理员需要视图的多少不同变量,并且存在的可能性是指定应该如何配置每个指定变量的模式映射。在以上情景说明书CN104050225A4/9页8中,系统管理员可以指定具有两个视图变量,并且将指定一个视图变量正在访问物理模式ERP1而其他变量正在访问物理模式ERP2。0025当基于内容包例如,HANA内容包中的被建模对象生成数据库(例如,HANATM数据库目录对象时,考虑模式映射。当生成目录对象时,考虑利用变量的扩展模式映射。利用变量的扩展模式映射可以对于每创建的视图变量创建一个目录对象。每个目录对象每视图变量考虑从作者模式映射到物理模式的相应模式。0026此外,基于对其存在不同视图。

25、变量例如,映射表205中示出的ERP_1和ERP_2的视图下文中,为了清楚称作映射视图的视图下文中,为了清楚称作调用视图可以指定调用视图调用了视图变量中的哪个。关于一个视图变量,不存在对于调用视图参考哪个映射视图的混乱。然而,如果对于给定内容包存在多于一个映射视图,则调用视图可能参考不正确的映射视图。因此,定义另一映射表250。0027如图2B中所示,映射表250包括四个列。该四个列是调用包255、调用包视图变量260、被调用包265、以及被调用包视图变量270。映射表250可以被配置成将调用视图映射到正确的映射视图。例如,内容包的HCM组件可以包括调用ERP组件例如,映射视图的调用视图。映射。

26、表250示出映射到视图变量ERP_1的视图变量HCM_1。0028利用映射表250,视图变量可以由系统例如,客户系统的管理员配置,并且可以用于将调用视图映射到映射视图。在上面的情景中,如果两个或更多视图变量可能已经被调用视图参考,则系统管理员可以进行指定以使得调用视图参考正确的映射视图。0029一个实施例包括一种用于在互联数据库系统中共享数据的方法。所述方法包括在数据库系统中,接收被配置成对第一数据库模式中的数据进行建模的数据模型;在数据库系统中,使用接收到的数据模型生成第一数据库模式的第一实例的第一数据视图,包括使用第一视图变量参考包括第一数据库模式的第一实例的一个或多个数据表来生成第一数据。

27、视图;以及在数据库系统中使用接收到的数据模型生成第一数据库模式的第二实例的第二数据视图,包括使用第二视图变量参考包括第一数据库模式的第二实例的一个或多个数据表来生成第二数据视图。0030图3示出根据一个或多个示例实施例的用于生成数据视图的一般过程流。如图3中所示,示出根据示例实施例的数据库系统100中的一般工作流。该工作流可以在处理块302中开始,其中数据库系统100将数据模型108接收到数据库系统100中。在一些实施例中,数据模型108可以指定将在包括给定数据库模式的数据表和表字段上执行的数据库操作例如,JOIN(连接)、SELECT(选择)、AVERAGE(平均)等等)。例如,可以从企业之。

28、内的开发小组、从第三方提供商等等提供数据模型108。0031根据示例实施例,数据模型108可以用于建模多个实例当中的数据库模式的每个实例。例如,在处理块304中,用户可以选择将建模的数据库模式的实例例如,104A;例如,通过指定实例的名称。在一些实施例中,用户界面可以显示从中进行选择的数据库模式实例的列表。0032当选择多个实例当中的数据库模式的实例时,可以使用视图变量将该实例映射到数据库模式。例如,在处理块304中,数据模型输出管理器106可以参考例如,利用查找或查询映射表205来确定用于数据库模式的视图变量。例如,如果用户选择了与内容包VEN1PKG1COMP1和物理模式ERP1相关联的数。

29、据库模式的实例,则数据模型输出管理器说明书CN104050225A5/9页9106可以将视图变量确定为ERP_1。用于名称为TABLE1(表1)的数据表的结果模式映射可以是“ERP_1/VEN1PKG1COMP1/TABLE1”。0033在处理块308中,数据模型输出管理器106可以使用在处理块302中接收到的数据模型108来生成数据视图310A。数据视图310A然后可以由用户查询。例如,在步骤322中,可以从用户接收到一个或多个查询例如,SELECT,并且在步骤324中,来自查询的结果110A可以输出给用户;例如,在显示器上、打印出等等。数据视图包含指定存储的数据的“视图”例如,表、图、报告。

30、等等)的信息。数据视图指定将访问哪些表、这些表的哪些字段等等。例如,数据视图可以经由SQL选择语句访问以返回数据到被称为“结果表”的数据表中。例如,结果表可以在显示器上呈现给用户。数据视图典型是持久的例如,存储在数据储存器中,而结果表典型是暂时的例如,显示在监视器上,但是可以被打印例如,报告。0034另一用户可能想要使用相同的数据模型108来建模数据库模式的另一实例。因此,在处理块306中,其他用户可以选择将被建模的另一数据库模式例如,104B。当选择数据库模式的另一实例时,可以使用另一视图变量将该实例映射到数据库模式。例如,在处理块305中,数据模型输出管理器106可以参考例如,利用查找或查。

31、询映射表205来确定用于数据库模式的视图变量。例如,如果用户选择了与内容包VEN1PKG1COMP1和物理模式ERP2相关联的数据库模式的实例,则数据模型输出管理器106可以将视图变量确定为ERP_2。用于名称为TABLE1的数据表的结果模式映射可以是“ERP_2/VEN1PKG1COMP1/TABLE1”。0035处理块308可以被启用(INVOKE)以使得数据模型输出管理器106使用在处理块302中接收到的数据模型108来生成第二数据视图310B。用户然后可以查询第二数据视图310B在步骤332中以产生多种输出110B在步骤334中。0036图4示出根据一个或多个示例实施例的、用于使用相同。

32、数据模型相对于数据库模式的多个实例生成数据视图的数据模型输出管理器。如图4中所示,在一些实施例中,数据模型输出管理器106可以包括模式映射模块402、数据视图生成器406以及数据库模式404。数据模型108可以指明数据库系统100中的数据库模式例如,104A的特定实例。当数据模型输出管理器106接收数据模型108时,模式映射模块402可以将接收到的数据模型映射为数据模型408,并且将接收到的数据模型与指明的数据库模式104A相关联。0037根据示例实施例,模式映射模块402可以映射接收到的数据模型108的另一数据模型408,并且将数据模型408与数据库模式例如,104B的另一实例相关联。例如,。

33、如上参照图2A和图3所述,在与内容包VEN1PKG1COMP1和物理模式ERP1相关联的数据库模式的实例中,数据模型输出管理器106可以将视图变量确定为ERP_1,并且在与内容包VEN1PKG1COMP1和物理模式ERP2相关联的数据库模式的实例中,数据模型输出管理器106可以将视图变量确定为ERP_2。0038例如,映射的数据模型408可以参照不同于数据库模式104B中的数据表的数据库模式104A中的数据表作为用于数据模型的数据的源。因此,映射数据模型408可以被映射,从而对数据库模式104B中的相应的数据表与数据库模式104A中的相应数据表进行不同地参考。例如,数据库模式104A中的数据表。

34、的名称与数据库模式104B中的数据表的名称相同。然而,给定数据库模式中的数据表的全技术名称包括该数据表属于的数据库模式说明书CN104050225A6/9页10的名称;例如,SCHEMA1TABLE1可以是数据库模式SCHEMA1中的TABLE1的全技术名称。访问数据表需要全技术名称。因此,根据示例实施例,全技术名称可以根据映射例如,基于表205中的映射被修改;因此0039SELECTFROMERP_1SCHEMA1TABLE10040(从ERP_1SCHEMA1TABLE1选择)0041或0042SELECTFROMERP_2SCHEMA1TABLE10043(从ERP_2SCHEMA1TA。

35、BLE1选择)0044数据视图生成器406可以接收对映射数据模型408的参考,并且生成参考相关联的数据库模式104A中的数据表的数据视图410A。同样地,数据视图生成器406可以接收对映射数据模型408的参考,并且生成参考相关联的数据库模式104B中的数据表的数据视图410B。0045在一些实施例中,数据视图410A、410B可以持久保存在数据库模式中。参照图4,例如,数据库模式404可以存储数据视图410A。用户可以运行数据视图410A以从数据库模式104A中参考的数据产生结果表110A。同样地,数据库模式404可以存储数据视图410B,并且用户可以运行数据视图410B以从在数据库模式104。

36、B中参考的数据产生输出110B。0046因为数据模型408使用来自数据库模式104A的数据并且数据模型拷贝408使用来自数据库模式104B的数据,所以包含在通过运行各自的数据视图410A、410B生成的各自的结果表110A、110B中的数据很可能不同。然而,因为数据模型408和数据模型408共享相同的作者模式,所以数据视图410A和410B的名称将是相同的。例如,如果数据模型408指定称作VIEWONTOTALSALES的数据视图,则数据视图410A将使用名称VIEWONTOTALSALES并且数据视图410B还将使用名称VIEWONTOTALSALES,从而引起命名冲突。0047根据示例实施。

37、例,如上所述的方法还可以包括接收定义第三数据视图的模式,并且基于生成的第一数据视图和生成的第二数据视图中的一个来修改第三数据视图。修改第三数据视图可以包括基于数据表中的查找确定第三数据视图与生成的第一数据视图和生成的第二数据视图中的一个之间的依赖性,并且基于确定的依赖性将定义第三数据视图的模式改变为参考生成的第一数据视图和生成的第二数据视图中的一个。0048图5示出根据一个或多个示例实施例的映射附加(ADDON)视图。如图5中所示,映射附加视图可以包括附加视图块、数据模型输出管理器106包括模式映射模块402和数据视图生成器406、数据视图506、数据视图510、模式1和模式2。如上面讨论的,。

38、调用视图可以基于映射视图;图5示出作为调用视图的附加视图502以及作为映射视图的数据视图506和数据视图510之一。模式映射模块402可以利用表250来将附加视图502映射到数据视图506和数据视图510中的一个。例如,如果表250指示附加视图502参考数据视图506,则模式508可以是结果模式。另一方面,如果表250指示附加视图502参考数据视图510,则模式512可以是结果模式。0049继续上面的两个示例,给定数据库模式中的数据视图的全技术名称包括该数据视图属于的数据库模式的名称;例如,SCHEMA1VIEW1或VIEWONTOTALSALES可以是数据库模式SCHEMA1中的VIEW1或。

39、VIEWONTOTALSALES的全技术名称。访问数据视图需要全技术名称。因此,根据示例实施例,全技术名称可以根据映射例如,基于表250中的映射说明书CN104050225A107/9页11被修改;因此0050SELECTFROMERP_1SCHEMA1VIEW10051(从ERP_1SCHEMA1VIEW1中选择)0052或0053SELECTFROMERP_2SCHEMA1VIEW10054(从ERP_2SCHEMA1VIEW1中选择)0055以及,0056SELECTFROMERP_1SCHEMA1VIEWONTOTALSALES0057(从ERP_1SCHEMA1VIEWONTOTAL。

40、SALES中选择)0058或0059SELECTFROMERP_2SCHEMA1VIEWONTOTALSALES0060(从ERP_2SCHEMA1VIEWONTOTALSALES中选择)0061因此,如果没有视图变量被引入,则模式映射模块402将不被获得,并且前缀被添加到附加视图的技术名称上。然而,对于每个依赖性,指定对于每个调用包例如,利用表250哪个视图变量是相关的可以将相应的映射视图链接到调用视图。0062图6示出根据一个或多个示例实施例的数据库系统的高级系统图。例如,数据库系统可以是如上所述的数据库系统100。如图6中所示,数据库系统可以包括被配置成根据本公开操作的计算机系统602的。

41、高级框图。计算机系统602可以包括中央处理单元(CPU)612或其他类似的数据处理组件,包括多处理器配置。0063计算机系统602可以包括各种存储器组件。例如,存储器组件可以包括易失性存储器614(例如,随机存取存储器,RAM)和数据存储设备616。可以提供通信接口618以允许计算机系统602通过诸如局域网(LAN)、互联网等等的通信网络622通信。内部总线620可以互联包括计算机系统602的组件。0064数据存储设备616可以包括非瞬时性计算机可读介质,该非瞬时性计算机可读介质上存储有计算机可执行程序代码632。计算机可运行程序代码632可以由CPU612运行以导致CPU执行本公开的步骤,例。

42、如图3中阐明的步骤,或处理图4和图5中示出的数据模型输出管理器106的实施例中描述的处理。数据存储设备616可以存储诸如对象实例数据、运行时间对象、以及此处描述的任意其他数据例如,映射表205和250的数据结构634。在一些实施例中,例如,数据存储设备616可以是用于提供数据库102以及用于存储数据库模式104A、104B的存储子系统。0065用户可以使用适当的用户接口设备642与计算机系统602交互。它们可以包括,例如,诸如键盘、键区、鼠标或其他指示设备的输入设备和诸如显示器的输出设备。0066一些上面的示例实施例描述为被描绘为流程图的过程或方法。虽然流程图将操作描述为顺序进程,但是可以平行。

43、、并行或同时地执行许多操作。此外,操作的次序可以重新排列。当处理的操作被完成时可以终止处理,但是还可以具有不包括在图中的额外的步骤。处理可以相应于方法、函数、过程、子例程、子程序等等。0067通过流程图示出的其中一些的上述讨论到的方法可以通过硬件、软件、固件、中间件、微码、硬件描述语言或其任何组合实现。当以软件、固件、中间件或微码实现时,用于执行必要的任务的程序代码或代码段可以存储在机器或诸如存储介质的计算机可读介质中。说明书CN104050225A118/9页12(多个)处理器可以执行必要的任务。0068此处公开的特定结构细节和功能细节仅仅是代表性的,目的在于描述示例实施例。然而,示例实施例。

44、可以用替代形式来具体实现,不应被看作仅仅局限于此处描述的实施例。0069将会理解,尽管此处可能使用词语第一、第二等等来描述不同的元件,但这些元件不应受到这些词语的限制。这些词语仅仅用于将一个元件与另一个元件区分开来。例如,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件,而不偏离示例实施例的范围。如此处使用的,术语“和/或”包括一个或多个相关列出项目中的任意一个以及所有组合。0070将会理解,当一个元件被称为“连接”或“耦接”到另一元件时,它可以直接连接或耦接到所述另一元件,或者也可以存在居间的元件。相反,当一个元件被称为“直接连接到”或“直接耦接到”另一元件时,不均在居间的。

45、元件。用于描述元素之间的关系的其他的词应当以类似的方式解释例如,“之间”对于“直接之间”,“相邻”对于“直接相邻”等等)。0071此处使用的术语仅仅是为了描述特定实施例,并非意图限制示例实施例。如此处使用的,单数形式“一”、“一个”也意图包括复数形式,除非上下文明确地给出相反指示。还将理解,当此处中使用词语“包括”、“包含”时,表明存在所描述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。0072还应注意到,在一些替换实现方式中,所提到的功能/动作可以不按附图中描述的顺序进行。例如,取决于所涉及的功能/动作,两个相继。

46、示出的图可能实际上是基本并发地执行的,或者有时可能以相反的次序执行。0073除非另外定义,否则此处使用的所有术语(包括技术术语和科学术语)所具有的含义与本示例实施例所属领域的普通技术人员通常理解的含义相同。还将理解,术语,例如,通常使用的词典中定义的那些术语,应该被解释为所具有的含义与它们在相关领域上下文中的含义一致,而不应理想化地或过分形式化地对其进行解释,除非此处明确地如此定义。0074上述示例实施例和相应详细说明的部分按照计算机存储器之内的关于数据比特的软件、或操作的算法和符号表示来呈现。这些描述和表示是本领域普通技术人员向本领域的其他普通技术人员有效地传达他们的工作的实质的那些。算法,。

47、如这里使用并且通常按照原样使用,被构思为导致期望的结果的自相一致步骤的。步骤是需要物理数量的物理操纵的那些步骤。通常,虽然不一定,但是这些数量采取能够存储、传输、组合、比较和相反操作的光学的、电的、或磁性信号的形式。时常已经证明便利的的是,主要地出于对共同使用的考虑,将这些信号称为比特、值、元素、码元、特性、术语、数目等等。0075在上述说明性实施例中,参考可以实现为程序模块或功能处理的操作的动作和符号表示例如,以流程图的形式包括执行特定任务或实现特定抽象数据类型并且可以使用现有的结构元件中的现有的硬件描述和/或实现例程、程序、对象、分量、数据结构等等。这种现有的硬件可以包括一个或多个中央处理。

48、单元CPU、数字信号处理器DSP、应用指定集成电路、现场可编程门阵列FPGA计算机等等。0076此处描述为相互通信的元件直接或间接地能够通过用于传输数据的任何数量的不同系统进行通信,包括但不限于共享存储器通信、局域网、广域网、电话网络、蜂窝网络、说明书CN104050225A129/9页13光纤网络、卫星网络、红外网络、射频网络、以及可以用来在设备间传送信息的任何其他类型的网络。此外,系统间的通信可以通过已知或变得已知的任何一个或多个传输协议来进行,如,异步传输模式(ATM)、网际协议(IP)、超文本传输协议(HTTP)和无线应用协议(WAP)。0077然而,应当记住的是,全部这些和类似术语将。

49、与合适的物理量相关联并且仅仅是应用于这些数量的方便的标签。否则除非具体地陈述,或如从讨论明显的是,诸如“处理”或“计算”或“算出”或“确定”或“显示”等等,参照计算机系统或类似电子计算设备的动作和处理,所述计算机系统或类似电子计算设备将表示为计算机系统的寄存器和存储器之内的物理的、电子量的数据操作和变换成为类似地表示为计算机系统存储器或寄存器或其他的这种信息存储、传输或显示设备之内的物理量。其他数据0078还注意实现示例实施例的方面的软件以程序存储器介质的某些形式被典型地编码通过一些类型的传输介质被实现。程序存储器介质可以是磁性例如,软盘或硬盘或光学的例如,光盘只读存储器、或“CDROM”,并且可以是只读或随机访问的。类似地,传输介质可以是绞合线对、同轴电缆、光学纤维或本领域已知的其它的适当的传输介质。示例实施例不由任何给定实现的这些方面限制。0079最后,也应注意,当所附权利要求陈述此处描述的特征的特定组合时,本公开的范围不局限于以下权利要求的特定组合,但是此时不扩展为不管此处公开的特征或实施例的任何组合已经具体地列举在权利要求中而包含该特定组合。说明书CN104050225A131/6页14图1说明书附图CN104050225A142/6页15图2A图2B说明书附图CN104050225A153/6页16图3说明书附图CN104050225A164/6页17图4说明。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1