跨多个模型的数据检索制造技术

技术编号:14557085 阅读:143 留言:0更新日期:2017-02-05 11:28
标识并指向从一个或多个逻辑数据模型中进行检索的模型查询。模型查询引擎解释模型查询,并与被指定在相应模型查询中的所标识的逻辑数据模型进行相应地交互。该交互可具有对相应逻辑数据模型的相应逻辑数据模型查询的形式,并且结果被返回在该相应逻辑数据模型的建模符号中。在潜在地将建模符号翻译成被物理数据模型使用的公共符号后,模型查询引擎可接着使用结果来与物理数据模型进行交互。与物理数据模型的交互可以具有物理数据模型查询的形式,其中来自其的结果被组装到结果集。因此,查询者可通过参考模型来制定查询,而不必理解数据源的模式。

Data retrieval across multiple models

Identifies and points to model queries retrieved from one or more logical data models. The model query engine interprets the model query and interacts with the identified logical data model that is specified in the corresponding model query. The interaction may be in the form of a query of the corresponding logical data model for the corresponding logical data model, and the result is returned to the modeling symbol of the corresponding logical data model. The model query engine can then use the results to interact with the physical data model after translating the modeling symbols into public symbols that are used by the physical data model. The interaction with the physical data model can have a physical data model query form, where the results from it are assembled into the result set. Therefore, the query can be made by reference to the model without understanding the pattern of the data source.

【技术实现步骤摘要】
【国外来华专利技术】背景计算系统和相关联的网络彻底改变了人类工作、游戏和通信的方式。我们生活的几乎每个方面都在某种方式上受到计算系统的影响。网络的扩增允许计算系统共享数据并通信,从而快速地增加信息访问。出于这个理由,现在的时代通常被称为“信息时代”。数据模型描述经结构化的数据的结构(即,定义、格式、关系、约束等)以供存储在数据管理系统(诸如关系数据库)中。在操作期间,各个执行软件在确定要检索的数据、数据的含义、数据与其它数据的关系、数据的属性或特性等时可参考数据模型。当设计针对组织的数据系统时,通常首先设计相对独立于底层数据管理系统(例如,相对独立于底层数据库管理系统)的逻辑数据模型。逻辑数据模型通常包括描述业务实体的数据对象。例如,如果组织是刨冰公司,则业务实体可包括刨冰站、雇员、口味、大小、价格、营业收入、销售量等。当然,这些术语独立于任何底层物理数据管理系统。一旦逻辑数据模型被设计,数据管理系统的其余部分就被设计来满足逻辑数据模型的需要。例如,物理数据模型位于逻辑数据模型之下,并还描述实体、关系、属性等,但是以更加对准底层数据管理系统的工具和约束的方式。逻辑数据模型内的实体和属性被映射到物理数据模型内的实体和属性。此处要求保护的主题不限于解决任何缺点或仅在诸如上述环境这样的环境中操作的各实施例。相反,提供该背景仅用于例示其中可实现所述一些实施例的一个示例性
简要概述本文中描述的至少一些实施例涉及模型查询。模型查询标识并指向从一个或多个逻辑数据模型中进行检索。模型查询引擎解释模型查询,并与被指定在相应模型查询中的所标识的逻辑数据模型进行相应地交互。至少部分基于该交互,模型查询引擎制定针对该模型查询的响应。在一些实施例中,该交互可具有对相应逻辑数据模型的相应逻辑数据模型查询的形式,并且结果被返回在该相应逻辑数据模型的建模符号中。在潜在地将建模符号翻译成被物理数据模型使用的公共符号后,模型查询引擎可接着使用结果来与物理数据模型进行交互。在一些实施例中,与物理数据模型的交互可以具有物理数据模型查询的形式,其中来自其的结果被组装到结果集。因此,查询者可通过参考模型来制定查询,而不必理解底层数据源的模式。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在被用来帮助确定所要求保护的主题的范围。附图简述为了描述能够获得上述和其它优点和特征的方式,各实施例的更具体的描述将通过参考各附图来呈现。可以理解,这些附图只描绘了示例实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释各实施例,在附图中:图1抽象地解说了其中可采用本文中所描述的一些实施例的计算系统;图2示出数据管理环境,该数据管理环境包括数据存储系统、物理数据模型层、包括多个逻辑数据模型的逻辑数据模型层以及在物理数据模型层和逻辑数据模型层之间作为中介的映射层;图3示出在示例逻辑数据模型上执行的四种不同的逻辑数据模型结构更改类型的示例;图4示出用于扩充已经包括展示数据存储系统的一个或多个逻辑数据模型的数据模型的方法的流程图;图5示出类似于图2的数据管理环境的数据管理环境,并且其中模型查询引擎用作用于处理模型查询的中枢;图6示出用于模型查询引擎对接收到的模型查询进行操作的方法的流程图;以及图7示出类似于图2的数据管理环境的数据管理环境,除了附加的逻辑数据模型被示出,逻辑和物理数据模型中的每一个具有相关联的索引,并且存在用于模型查询的高速缓存。详细描述本文中描述的至少一些实施例涉及模型查询。模型查询标识并指向从一个或多个逻辑数据模型中进行检索。模型查询引擎解释模型查询,并与被指定在相应模型查询中的所标识的逻辑数据模型进行相应地交互。至少部分基于该交互,模型查询引擎制定针对该模型查询的响应。在一些实施例中,该交互可具有对相应逻辑数据模型的相应逻辑数据模型查询的形式,并且结果被返回在该相应逻辑数据模型的建模符号中。在潜在地将建模符号翻译成被物理数据模型使用的公共符号后,模型查询引擎可接着使用结果来与物理数据模型进行交互。在一些实施例中,与物理数据模型的交互可以具有物理数据模型查询的形式,其中来自其的结果被组装到结果集。因此,查询者可通过参考模型来制定查询,而不必理解底层数据源的模式。将参考图1描述对计算设备的一些介绍性讨论。接着,将参考之后的附图来描述用于展示数据存储系统的多个逻辑数据模型的结构和使用以及对该数据存储系统的查询。计算系统现在越来越多地采取多种多样的形式。例如,计算系统可以是手持式设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统、数据中心、或甚至是常规上不被认为是计算系统的设备(诸如可穿戴设备(如眼镜))。在本说明书以及权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包含至少一个物理且有形的处理器以及其上能具有可由处理器执行的计算机可执行指令的物理且有形的存储器。存储器可以采取任何形式,并可以取决于计算系统的性质和形式。计算系统可以分布在网络环境中,并可包括多个组分计算系统。如图1所例示,在其最基本的配置中,计算系统100通常包括至少一个硬件处理单元102和存储器104。存储器104可以是物理系统存储器,该物理系统存储器可以是易失性的、非易失性的、或两者的某种组合。术语“存储器”也可在此用来指示诸如物理存储介质这样的非易失性大容量存储器。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。如本文中所使用的,术语“可执行模块”或“可执行组件”可指可在计算系统上执行的软件对象、例程或方法。此处所描述的不同组件、模块、引擎以及服务可以实现为在计算系统上执行的对象或进程(例如,作为分开的线程)。在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果这样的动作是以软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已经执行了计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实现。这样的操作的示例涉及对数据的操纵。计算机可执行指令(以及被操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可包含允许计算系统100例如通过网络110与其他计算系统通信的通信信道108。计算系统100还包括显示器112本文档来自技高网...

【技术保护点】
一种包括其上具有计算机可执行指令的一个或多个计算机可读存储介质的计算机程序产品,所述计算机可执行指令被结构化成使得在计算系统的一个或多个处理器执行时,使所述计算系统实例化和/或操作模型查询引擎,所述模型查询引擎被配置成:解释标识并指向从多个逻辑数据模型中的任意一个或多个中进行检索的模型查询;通过与所标识的一个或多个逻辑数据模型进行交互对解释所述模型查询进行响应;以及制定针对所述多个逻辑数据模型之中公共的数据存储系统的查询。

【技术特征摘要】
【国外来华专利技术】1.一种包括其上具有计算机可执行指令的一个或多个计算机可读存储
介质的计算机程序产品,所述计算机可执行指令被结构化成使得在计算系统的
一个或多个处理器执行时,使所述计算系统实例化和/或操作模型查询引擎,所
述模型查询引擎被配置成:
解释标识并指向从多个逻辑数据模型中的任意一个或多个中进行检索的
模型查询;
通过与所标识的一个或多个逻辑数据模型进行交互对解释所述模型查询
进行响应;以及
制定针对所述多个逻辑数据模型之中公共的数据存储系统的查询。
2.如权利要求1所述的计算机程序产品,其特征在于,针对所述多个
逻辑数据模型中的一个或多个的第一集合发生的交互使用与针对所述多个逻
辑数据模型中的一个或多个的第二集合发生的交互所不同的建模符号。
3.如权利要求1所述的计算机程序产品,其特征在于,所述模型查询
引擎进一步被配置成:
使用与所标识的一个或多个逻辑数据模型进行交互的一个或多个结果来
与物理数据模型进行交互以访问一个或多个所得到的数据集。
4.如权利要求3所述的计算机程序产品,其特征在于,与所述物理数
据模型进行交互包括以下针对所标识的一个或多个逻辑数据模型中的至少一
个:
将与所述逻辑数据模型交互的结果从被所述逻辑数据模型使用的建模符
号转换成被映射到所述逻辑数据模型的物理数据模型所使用的建模符号的动
作。
5.如权利要求1所述的计算机程序产品,其特征在于,所述模型查询
引擎被配置成解释所述模型查询中的集合表达式以标识对应于所述查询的逻

\t辑数据模型实体集。
6.如权利要求1所述的计算机程序产品,其特征在于,与所标识的一
个或多个逻辑数据模型进行交互包括以下针对至少一个所标识的一个或多个
逻辑数据模型中的每一个;
制定与所述模型查询中对应于特定逻辑数据模型的那部分相对应的逻辑
数据模型查询的动作;
将所述逻辑数据模型查询提交到对应的逻辑数据模型的动作;以及
从所述对应的逻辑数据模型接收所述逻辑数据模型查询的结果的动作。
7.如权利要求6所述的计算机程序产品,其特征在于,对逻辑数据模
型查询的制定进一步包括以下针对所标识的一个或多个逻辑数据模型的一个
或多个中的每一个:
标识对应于所述逻辑数据模型的建模符号的动作;以及
使用所标识的建模符号来制定所述逻辑数据模型查询的动作。
8.如权利要求6所述的计算机程序产品,其特征在于,制定针对所述
多个逻辑数据模型之中公共的数据存储系统的查询包括针对映射到所标识的
至少一个逻辑数据模型中的一个或多个的至少一个物理数据模型:
使用从接收所述逻辑数据模型查询的结果的动作中接收到的结果中的至
少一些来制定对应于特定物理数据模型的物理数据模型查询的动作;
将所述物理数据模型查询提交到所述特定物理数据模型的动作;以及
从所述特定逻辑数据模型接收所述物理数据模型查询的结果的动作。
9.如权利要求1所述的计算机程序产品,其特征在于,所述数据存储
系统包括混合数据存储系统,所述混合数据存储系统包括多个构成数据存储系
统,所述多个构成数据存储系统中的至少一些具有不同的类型。
10.如权利要求1所述的计算机程序产品,其特征在于,所述模型查询

\t中的每一个都具有跨所述多个逻辑模型的公共模式。
11.一种模型查询引擎用来对接收到的模型查询进行操作的方法,所述
方法包括:
解释标识多个逻辑数据模型中的一个或多个的第一集合的第一模型查询
的动作;
与一个或多个所标识的逻辑数据模型的第一集合中的每一个进行交互的
动作;以及
至少响应于与一个或多个所标识的逻辑模型的第一集合中的每一个进行
交互的动作,访问数据存储系统中被所述第一模型查询定为目标的一个或多个
数据集的第一集合的动作。
12.如...

【专利技术属性】
技术研发人员:Z·刘C·C·B·麦克N·王Y·L·胡耶恩周纯星
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1