数据模型改变管理的制作方法_4

文档序号:9756906阅读:来源:国知局
逻辑数据模型查询的简化版本)提交(动作614)到对应的逻辑数据模型。这个提交由图2中的箭头512表示。
[0082]无论是根据针对该逻辑数据模型的索引还是根据与该逻辑数据模型的并发交互,模型查询引擎501都接收来自对应的逻辑数据模型的逻辑数据模型查询的结果(动作615)。对逻辑数据模型查询结果的这一接收由图5中的箭头513被表示在图5中。
[0083]如果该逻辑数据模型的建模符号还不是公共建模符号,则模型查询引擎接着将这些结果从该逻辑数据模型所使用的建模符号转换为公共建模符号(动作616)。公共建模符号的一个示例是统一建模语言(UML),但是这仅仅是一个示例。因此,当与物理数据模型进行交互时,模型查询引擎可使用该公共建模符号,同时依然允许逻辑数据模型的提供者指定在参考相应逻辑数据模型时要被使用的建模符号。
[0084]这个逻辑数据模型查询的结果可潜在地被索引在对应的逻辑数据模型的索引中(动作617)。例如,在图5中,从逻辑数据模型231返回的结果(如被箭头513表示)可被索引在针对逻辑数据模型231的对应的索引521内。参考图7,逻辑数据模型索引701到704中的每一个可类似地对对相应逻辑数据模型731到734作出的先前模型查询的结果进行索引。
[0085]基于这些结果,模型查询引擎还标识(动作618)要被交互以对模型查询进行响应的一个或多个物理数据模型(或直接地标识数据存储系统)。为了这么作,模型查询引擎可参考针对从中可获得结果的对应的逻辑数据模型的语义映射集。
[0086]接着,模型查询引擎与所得到的一个或多个物理数据模型中的每一个进行交互(动作620) ο相应地,动作620的内容针对一个或多个物理数据模型中的每一个或直接针对数据存储系统(由于映射可指引)来执行。在对动作620的内容的剩余描述中,术语“物理数据模型”将与数据源系统互换地使用,这是因为动作620的内容可被执行来与在数据源系统上操作的特定物理数据模型进行交互或直接与数据源系统本身进行交互。
[0087]为了这么作,模型查询引擎501咨询针对该逻辑数据模型的语义映射集(动作621)。通过使用这一咨询以及逻辑数据模型查询的结果,模型查询引擎501接着制定符合被用在物理数据模型层处(或被数据源系统本身使用)的公共建模符号的物理数据模型查询(动作622)。
[0088]模型查询引擎501可接着检查与该物理数据模型相关联的索引(动作623),以查看是否该查询的结果先前已经被返回和/或是否存在将协助简化与该物理数据模型(或根据情况由数据源系统)的交互的索引。例如,在图5中,物理数据模型索引522对物理数据模型221进行服务。例如,在图7中,这个物理数据模型索引705也被示出。
[0089]如果必要(由于物理数据模型查询的结果没有被完整地高速缓存在索引522中),模型查询引擎501接着将物理数据模型查询(或由针对该物理数据模型的索引所允许的物理数据模型查询的简化版本)提交(动作624)到对应的物理数据模型。这个提交由图5中的箭头524表示。
[0090]无论是从针对该物理数据模型的索引522还是从与该物理数据模型221的并发交互,模型查询引擎501都接收来自对应的物理数据模型的物理数据模型查询的结果(动作625) ο对物理数据模型查询结果的这个接收由箭头515被表示在图5中。
[0091]这个物理数据模型查询的结果可潜在地被索引在对应的物理数据模型的索引中(动作626)。例如,在图5中,从物理数据模型221返回的结果(如被箭头515表示)可被索引在针对物理数据模型221的对应的索引522内。在图7的上下文中,结果可被索引在物理数据模型索引705中。
[0092]模型查询引擎接着将所有物理数据模型查询结果组装到结果集中(动作631)并将该结果集返回到查询者(动作632)。该结果集的这个返回使用箭头516被表示在图5中。该结果集由元素503被表示在图5中。
[0093]本文中描述的原理对于潜在地随着时间改变的大量数据(有时被称为“大数据”)尤其有用。这样的数据通常不根据太字节来描述,而通常根据拍字节(1024个太字节)、艾字节(1024个拍字节),并且在将来可能根据泽字节(1024个艾字节)和尧字节(1024个泽字节)来描述。这样的数据在性质上通常更加全球性和分布化,并涉及大量通常被动态地改变、添加和替换的数据源。由此,“大数据”可被视为更加有机且发展的数据源系统。
[0094]通过使用大数据,具有多个使用这种数据量的纵向方案可以是非常有益的,因为这样的大数据表示对许多组织而言有价值的资源。此外,由于数据是非常大的,所以通过参考特定纵向方案所熟悉的逻辑数据模型,而非直接参考数据源的模式,有助于对该数据执行查询。因此,本文中描述的原理允许多个纵向方案使用不同的逻辑数据模型来访问相同的数据,并允许它们对该相同的大数据进行查询,即使查询者不熟悉数据源本身的底层模式的复杂性。
[0095]然而,通过使用大数据,数据本身可非常频繁地改变。新的数据源可能在任意时间被引入,每个数据源具有其自己的模式。此外,对大数据的范畴的理解可随着时间改变。传统地,数据源模式在开始摄取数据之前被预先定义和理解。然而,关于图8和9描述的原理允许在数据源本身继续经受改变的同时从该数据源摄取数据。这是通过使用版本管理器来执行的。
[0096]图8示出版本管理环境800,其中多个数据消费者801、802和803要访问来自数据源系统810的数据。作为一个示例,数据源系统810可以是图2的数据源系统210。数据源系统810不是静态数据源,而是遭受改变,当新数据源被添加到大数据时该大数据可遭受改变。
[0097]环境800还包括映射到数据源的物理数据模型(本文中称为“物理数据模型821”)的多个版本821 (I)、821 (2)、821 (3)到821 (N)。作为一个示例,物理数据模型821可以是图2的物理数据模型221。
[0098]环境800还包括映射到物理数据模型821的对应版本821(1)、821(2)、821(3)到821(N)的逻辑数据模型(本文中称为“逻辑数据模型831”)的多个版本831(1)、831(2)、831(3)至|J831(N)。例如,逻辑数据模型版本831(1)被显示为映射到(用箭头841(1)表示)物理数据模型版本821(1),逻辑数据模型版本831(2)被显示为映射到(用箭头841(2)表示)物理数据模型版本821(2),逻辑数据模型版本831(3)被显示为映射到(用箭头841(3)表示)物理数据模型版本821(3),并且逻辑数据模型版本831(4)被显示为映射到(用箭头841(4)表示)物理数据模型版本821 (4)。
[0099]逻辑数据模型831可以是映射到物理数据模型821的任一逻辑数据模型。然而,逻辑数据模型831还可以是映射到物理数据模型821的多个逻辑数据模型,在这种情况下逻辑数据模型可被称为统一逻辑数据模型。统一逻辑数据模型的一个示例是图3的整个逻辑数据模型层230,其构成被映射到物理数据模型221的多个逻辑数据模型231和232。
[0100]至少在一些条件下,当数据源810改变时,物理数据模型821的新版本和逻辑数据模型831的新版本可被创建。例如,在图8的上下文中,如果数据源810要改变和/或用于创建新版本的条件被满足,则新的物理数据模型版本821(N+1)(未示出)将被创建,并且对应的逻辑数据模型版本831(N+1)(未示出)将被创建并还使用映射841(N+1)(未示出)被映射到对应的物理数据模型版本821 (N+1)。
[0101]数据消费者对应于逻辑数据模型831的某一版本,使得当从该数据消费者接收到模型查询时,逻辑数据模型的该对应的版本被使用。例如,数据消费者801对应于逻辑数据模型版本831(1)。由此,从数据消费者801接收到的任意模型请求被定向到逻辑数据模型版本831(1)。注意,如果图5和6的模型查询处理可接着可被执行,则是关于逻辑数据模型831
(I)和物理数据模型821(1)的可应用版本。数据消费者802对应于逻辑数据模型版本831
(3)。由此,从数据消费者802接收到的任意模型请求被定向到逻辑数据模型版本831(3)。数据消费者803对应于逻辑数据模型版本831(N),并且由此其模型请求被定向到逻辑数据模型版本831 (N)。
[0102]这允许逻辑数据模型的新版本被创建和修改,而不影响对应于先前版本的现有数据消费者。例如,在创
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1