用于通用数据库的带语义保留的跨模型数据访问的制作方法

文档序号:9261418阅读:254来源:国知局
用于通用数据库的带语义保留的跨模型数据访问的制作方法
【技术领域】
[0001] 本公开的各种实施例一般性地设及数据库信息访问,例如,带数据语义保留的跨 不同数据库模型访问数据库信息。
【背景技术】
[0002] 传统的数据库与多个数据库模型相关联。一般而言,数据库模型各不相同且不可 互操作。在特定的数据库模型下,存储在数据库中的数据可W被称为"孤立的数据(siloed data)",例如,每个数据库模型充当单独的筒仓(silo),使得存储在一个数据库筒仓中的数 据与存储在另一数据库筒仓中的数据通常不可直接访问或不可直接互操作。因此,与一数 据库筒仓(例如,在第一数据库模型下存储的数据)相关联的数据库管理系统值BM巧通常 不可与另一数据库筒仓(例如,在第二数据库模型下存储的数据)相关联的另一数据库管 理系统互操作。在那些访问信息的请求未采用与该信息相关的数据库模型的相关联的数据 库管理系统的情况下,该可能限制存储在数据库中的信息的交换。
[0003]另一方面,传统的数据库筒仓可能将数据库管理系统的用户制约在遗产(legacy) 数据库筒仓内,例如,迁移到另一数据库管理系统较困难或代价较高。在其他考虑因素当 中,该种到传统数据库模型的制约与与将数据迁移到另一数据库模型时的数据语义信息的 丢失、培训用户使用新的数据库管理程序包、与在新的数据库模型内进行操作所必须的新 设备或系统相关联的支出等相关联。另外,即使在遗产数据库对相关联的实体而言够用时, 随着遗产数据库老化,其它实体可能采用较新的和不兼容的数据库模型,使得遗产数据库 模型要么被迫升级要么承担无法与较新的实体合作的风险。作为一个例子,第一家公司可 W正在使用遗产数据库环境,其采用足W满足第一家公司需求的过时的数据库模型。然而, 在第一家公司想要与使用采用较新的数据库模型的较新的数据库环境的新公司交互时,两 个数据库模型可能无法互操作。因此,该第一家公司可能被迫升级到更新的数据模型,并且 可能产生与重新培训其员工使用新的数据库模型、招聘熟悉新的数据库模型的新员工、冒 着丢失数据或数据关系的风险而将过时的数据库的数据和语义重建为较新的数据库、购买 与较新的数据模型相关联的新硬件或软件等相关联的费用。并且,随着数据库模型的不断 发展,每次需要改变到另一数据库模型时都会重复产生该些成本。
[0004] 此外,即使在数据库环境相对现代化的情况下,也可能与其它相对现代化的数据 库筒仓不兼容。多个数据库筒仓本身可能是在它们之间共享数据的障碍。作为一个例子, 第一家公司采用与第一数据库相关联的第一数据库模型,第二家公司为其数据采用第二数 据模型,而第=家公司为其数据采用第立数据模型,跨该=个数据筒仓共享数据可能不切 实际或不可能。当第一家公司购买第二家公司时,合并第二家公司的数据可能会出现问题, 例如,可能需要冒着丢失数据或语义的风险将数据重写到第一数据模型中。或者,第一家公 司可W单独操作两个数据库,但在内部面临两个数据库的不一致、承担与操作或维护两个 单独的数据库相关联的费用等问题。另外,第一家公司即使可W访问第一数据库和第二数 据库,也仍然会面临与第=家公司共享数据的严重挑战。

【发明内容】

[0005]下面给出本主题公开的各种实施例的简述概要,W便提供对本文所描述的一些方 案的基本理解。此概述不是所公开主题的详尽的概述。其既不旨在指出所公开主题的关键 或重要元素,也不描绘本主题公开的各种主题实施例的范围。其唯一目的是W简化形式给 出所公开主题的一些概念,作为下文将给出的更详细描述的前序。
[000引各种数据模型的数据库管理系统值BM巧已经普及到许多公司,并且随着时间的 推移,已成为公司内的遗产数据库。然而,需要访问该些遗产数据库,例如,用于与电子商务 相关的海量信息传输等。遗产数据库,例如,传统的数据库,可W与多个数据库模型相关联, 例如,数据库筒仓。该些数据库筒仓可能不同,并且在不花费很大成本或丢失数据或数据语 义信息的情况下不能互操作。筒仓数据(例如,在一个数据库模型动作内的数据通常仅在 该数据库模型内可直接访问或可互操作,但不能与另一个数据库筒仓中存储的数据可直接 访问或可互操作,该可能在希望访问未采用相关DBMS的信息时限制信息交流。
[0007] 此外,将遗产数据写入另一个数据库模型一般设及风险,诸如数据丢失、语义信息 丢失、增加费用、支持多种数据库环境等。作为一个例子,大多数XML(可扩展模型语言)数 据库管理系统可W将有限的一组指定的遗产数据库转化成XML文档,但是,该转化通常不 为遗产数据库模型保留数据语义约束考虑。该可能不足W满足转化要求,例如,丢失一些或 全部语义信息可能降低数据的价值。此外,一些丢失的风险可能迫使产生两个数据库系统、 遗产数据库和新数据库,例如,用于内部数据处理的传统的数据库和用于外部计算(诸如 与跨互联网的其它DBMS共享数据)的复制的XML文档。
[0008] 本文公开了提供诸如通过使用开放式通用数据库网关(0UDG)的带语义保留的跨 模型数据访问,可W在扁平化0XML文档中捕捉第一遗产数据库的数据语义(例如,基数、 包含关系、泛化、聚合等)。此包括数据和相关的语义信息的扁平化XML文档可W和与另一 数据库模型相关的另一数据库或DBMS共享(例如,传送,存储等)。此示例性0UDG可W将 遗产数据库转换成扁平化XML模型,然后将扁平化XML模型转换到不同的数据库模型下的 另一数据库,同时保留数据语义。其结果是,用户可W经由示例性扁平化XML文档访问彼此 的数据库。该可W让用户运用自己熟悉的查询语言来访问其它数据库,例如,用户可W使用 SQL(关系数据库语言)来访问面向对象数据库、网络数据库或XML数据库。类似地,用户 可W,例如,使用0QL(面向对象数据库语言)、IDMS(网络数据库语言)或XQuery狂ML数据 库语言)来访问其它数据库筒仓的数据。此外,生成扁平化XML文档作为第一数据库的复 制同时保留第一数据库的语义的例子,允许W透明的方式继续使用第一数据库,例如,无需 额外的费用、培训、装置等。此外,在更新第一数据库时,可W更新XML文档,允许外部面对 XML文档W用第一数据库的内部面对保持更新。
[0009] 本发明所公开主题的一个实施例可包括一种系统,其具有存储器和处理器,所述 处理器执行指令W接收与第一数据存储相关的信息。所述系统还可W确定与第一数据存储 的数据相关的语义信息。所述系统还可W将所述数据变换成与中间数据存储相关的第二数 据,其中所述变换保留语义信息。所述变换可W基于与所述第一数据存储和所述语义信息 相关的fg息。
[0010] 在另一个实施例中,所公开主题可臥为方法的形式。所述方法包括;接收第一信 息,所述第一信息包括描述与第一数据存储相关联的第一数据相关的数据关系的语义信 息。所述方法还包括接收第一数据。所述方法包括将所述第一数据转化成与中间数据存储 相关联的移交数据,同时在所述中间数据存储中保持上述数据关系。所述转化可W基于所 述第一信息。
[0011] 在另一个实施例中,所公开主题可W是存储在非暂时性计算机可读存储介质上的 计算机可执行指令的形式。计算机可执行指令的执行可W包括;接收与第一数据存储相关 的信息,其中所述信息包括描述与所述第一数据存储相关联的数据关系的数据语义信息。 此外,所述执行可W包括;接收与所述第一数据存储相关联的第一数据,并且将所述第一数 据改写成与第二数据存储相关联的第二数据,其中所述改写所述第一数据保留由所述数据 语义信息描述的所述数据关系,并且基于与所述第一数据存储相关的所述信息。而且,所述 指令的所述执行导致将与所述第二数据存储相关联的所述第二数据改写成与第=数据存 储相关联的第=数据,其中所述改写所述第二数据保留由所述数据语义信息描述的所述数 据关系,并且基于与所述第二数据存储相关的所述信息。
[0012] 在又一个实施例中,所公开主题可W是具有W下的系统;器件,用于接收与第一数 据存储相关联的第一数据;器件,用于基于与所述第一数据存储相关的信息,将所述第一数 据改写成与第二存储相关联的第二数据,所述改写所述第一数据保留与基数、包含关系、泛 化关系或聚合关系相关联的数据语义。此外,所述系统可W包括;器件,用于基于与所述第 二存储相关的信息,将与所述第二存储相关联的所述第二数据改写成与第=数据存储相关 联的第=数据,所述改写所述第二数据保留与基数、包含关系、泛化关系或聚合关系相关联 的数据语义。
[0013]下面的描述和附图中详细公开主题的详细某些说明性方案。然而,该些方案仅指 示可W采用本主题公开的各种实施例的原理的各种方式的一小部分,并且所公开主题意图 包括所有该些方案及其等同方案。通过下面本主题公开的详细描述,当结合附图考虑时,其 它优点和所公开主题的显著特征将变得显而易见。
【附图说明】
[0014] 图1是根据所公开主题的一个方案能够便于带语义保留的跨模型数据访问的系 统的图。
[0015] 图2是示出根据所公开主题的一个方案在多个不同数据库模型之间带语义保留 的跨模型数据访问的图。
[0016] 图3是示出根据所公开主题的一个方案具有一对多基数语义的带语义保留的跨 模型数据访问的图。
[0017] 图4是示出根据所公开主题的一个方案具有多对多基数语义的带语义保留的跨 模型数据访问的图。
[0018] 图5是示出根据所公开主题的一个方案具有包含(is-a)关系语义的带语义保留 的跨模型数据访问的图。
[0019] 图6是示出根据所公开主题的一个方案具有泛化语义的带语义保留的跨模型数 据访问的图。
[0020] 图7是示出根据所公开主题的一个方案具有聚合语义的带语义保留的跨模型数 据访问的图。
[0021] 图8是示出根据所公开主题的一个方案对于在扁平化XML模式中的若干语义的带 语义保留的跨模型数据访问的多个方案的图。
[0022] 图9是示出根据所公开主题的一个方案对于在扁平化XML模式中的若干附加语义 的带语义保留的跨模型数据访问的多方案的图。
[0023] 图10示出根据所公开主题的一个方案基于数据修改信息能够便于带语义保留的 跨模型数据访问的示例性系统。
[0024] 图11是根据所公开主题的一个方案能够便于带语义保留的双向跨模型数据访问 的系统的图。
[00巧]图12是根据所公开主题的一个方案采用中间数据库组件的能够便于带语义保留 的跨模型数据访问的系统的图。
[0026] 图13示出根据所公开主题的一个方案,采用扁平化XML模式和扁平化XML文档的 能够便于带语义保留的跨模型数据访问的系统的示例性系统。
[0027] 图14示出根据所公开主题的一个方案便于带语义保留的跨模型数据访问的方 法。
[0028] 图15示出根据所公开主题的一个方案基于所确定的改变的便于带语义保留的跨 模型数据访问的方法。
[0029] 图16描绘根据所公开主题的一个方案便于带语义保留的连续跨模型数据访问的 方法。
[0030] 图17示出根据所公开主题的一个方案能够便于带语义保留的跨模型数据访问的 示例性电子设备的框图。
【具体实施方式】
[0031] 本公开主题提供了带语义保留的跨模型数据访问。在一个方案中,传统的数据库 可W与通常不兼容的多个数据库模型(例如,数据库筒仓)相关联。在特定的数据库模型下 存储在数据库中的数据通常可能与W另一数据库模型存储的数据不可访问或不可互操作。 因此,与一数据库筒仓(例如,存储在第一数据库模型下的数据)相关联的数据库管理系统 值BM巧可能与另一数据库筒仓(例如,存储在第二数据库模型下的数据)相关联的另一数 据库管理系统值BM巧不可互操作。传统的数据库环境、系统和技术的该些方案可W限制存 储在数据库中的信息的交换。该将数据库管理系统的用户制约在遗产数据库筒仓内。在不 同的数据库筒仓之间共享数据可能与数据迁移到另一数据库模型时数据语义信息的丢失、 培训用户使用新的数据库管理程序包、与在新的数据库模型内进行操作所必须的新设备或 系统相关联的支出等相关联。并且,随着数据库模型的不断发展,每发展出另一数据库模型 时都会重复经历该种制约。此外,即使在数据库环境相对现代化的情况下,也可能与其它相 对现代化的数据库筒仓不兼容。多个数据库筒仓本身可能是在它们之间共享数据的障碍。
[0032] 提供如本文所公开的带语义保留的跨模型数据访问,例如,通过采用开放式通用 数据库网关(0UDG),可W保留数据和相关联的数据语义(例如,基数、包含关系、泛化、聚合 等),W便于一个数据库筒仓与另一数据库筒仓(例如,在两个数据库模型之间)共享数据。 中间数据库包括经转化的数据和保留的相关语义信息,可W从采用第一数据库模型的第一 数据库生成。转化到中间数据库环境可w被称为"向下转化"。此中间数据库可w便于进一 步将语义保留转化到采用另一数据库模型的另一数据库。此从中间数据库环境的转化可W 被称为"向上转化"。在一个实施例中,中间数据库和数据库模型可W作为可共享的数据库 的环境,例如,类似于中间人或稻草人,允许在两个或更多个不同的数据库模型或筒仓之间 的转化。此中间数据库可W本地或远程存储,允许访问W向上转化到目标数据库环境。作 为一个例子,OUDG设备可W便于将初始数据库向下转化到扁平化XML模型和XML模式(例 如,中间数据库环境)中,其保留来自初始数据库的语义。然后,此中间数据库环境可W便 于向上转化到不同的数据库模型下的另一数据库中,同时继续保留数据语义。
[0033] 继续上面的例子,0UDG设备可W便于在设备内向下转化和向上转化,允许单个设 备的两个不同的数据库模型之间的带语义保留的跨模型数据访问。该可W便于邻近第一数 据库筒仓将向上转化信息的通信发送到位于远程的数据库筒仓的带语义保留的跨模型数 据访问。该还可W便于通过将本地数据库通信到0UDG设备可W接着处理向下转化和向上 转化使得在远程数据库筒仓处可访问信息的远程位置的带语义保留的跨模型数据访问。在 另一实例的实施例中,第一 0UDG设备可W与第二0UDG设备进通信,W便于在第一 0UDG设 备处向下转化、中间数据库的通信和在第二0UDG设备处的向上转化。该还可W便于在远离 第一 0UDG和第二0UDG的位置处存储中间数据库,例如将中间数据库存储在第=方服务器 上W便于在第一方数据库环境和第二方数据库环境之间带有语义保留的跨模型数据访问。
[0034] 结果,用户可W经由从源数据库环境保留语义信息的中间数据库环境访问彼此的 数据库。该可W使用户应用自己熟悉的查询语言来访问采用其它数据库模型的数据库,例 如,可W采用S化访问面向对象数据库、网络数据库或XML数据库。类似地,使用0化、IDMS 或者XQuery可W被用于访问其它数据库筒仓中的数据。此外,中间数据库环境可W作为源 数据库环境的复
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1