分布式数据库系统技术方案

技术编号:2891004 阅读:153 留言:0更新日期:2012-04-11 18:40
在分布数据库系统中,数据库的不同部分由一些相互连接的处理器进行处理。数据库不同部分包括一些数据实体(58,66,66″,93),为每个这样的数据实体提供有关该数据实体所在处理器的全局信息(82),和关于该实体在本处理器中所处位置的本地信息(79,80,84),全局信息(82)在系统中的每个处理器中,以先前已定义的每个数据实体组共用及专用的形式存在。所述数据实体分布实体,每个分布实体又包括关于位于某个处理器中的某类数据实体实例组的信息,以便可以用来找到处理器地址的信息。(*该技术在2015年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术一般涉及一个分布式数据库系统,在该系统中,数据库的不同部分分别由一些互连的处理器控制处理,不同的数据库部分包含了一定数量的数据实体。本专利技术具体涉及到数据库分布,也就是说,在当前连接中,数据实体在数据库系统中是如何寻址和分布的。这里的数据实体是指诸如面向对象系统中类型对象的实体。现有技术在面向对象分布式数据库系统中,所包括的每个处理器除了需要访问其它处理器数据库部分的对象外,还可能需要访问本数据库部分中的对象。因此对于每个对象,就有涉及对象所在的子网和处理器的信息,有关于在另一个执行诸如获取对象之类所需服务的处理器中的、代理的信息,以及关于在处理器内存中所述对象的确切位置分布信息。如果所有的这些信息在所有的处理器上皆可用,那就得有很大的地址表,并且当一个对象创建、删除和移动时,需要在整个数据库系统上对对象的地址作大量的更新。EP405,829涉及一个电信系统,其中的软件是用对象形式的独立软件组件实现的。在“运行中系统”中,函数“运行中连接器”记录对象并存储指向对象数据的数据指针。源对象往运行中系统发送消息来与其它对象通信。这些消息包括目标对象响应方法的名称和标识。运行中系统只支持单个处理器或对象组,而且,如果目标对象属于由运行中系统支持的对象组,系统通过方法标识和数据指针来调用目标对象。如果目标对象处于另一处理器,运行中系统便向其它处理器广播这一消息。在每个接收处理器中,运行中系统检查它的“连接器表”。是否有这一消息目标对象的符号名,如果找到,便依据消息中的响应方法标识和运行中连接器中的数据指针信息调用目标对象。处理器间消息包括了源处理器任命,而当收到处理器间消息时,每个处理器的运行中系统存储源处理器的名称和源对象的符号名。“别名表”包含了注册的本地处理器的所有“别名”。如果一个名字没有列在别名表中,便要做一次搜索,检查目标对象是否位于连接器表中。如果答案是否定的,那么就对目标表作搜索,且如果目标处理器为已知,便向目标处理器发送消息。在专利US4,901,231中描述了在许多处理器上运行的多处理器系统。一个处理器中的用户进程可以访问其它处理器中的系统资源。当用户进程访问本地文件时,访问操作是通过用户文件表来进行的。当用户进程访问远程文件,访问操作是这样完成的通过端口表,并经过端口表标识的虚拟信道到一个部分进程,然后通过用户文件表和部分进程的系统文件表来完成。专利US5,187,790涉及一个计算机系统,该系统有多个同时运行的进程,这些进程至少包括一个服务器进程和多个客户进程。每一进程都有表示对象访问权限的一系列标识,每一对象都具有带标识的访问检查列表,用以确定允许访问对象的处理器。专利技术概述本专利技术的一个主要目标是提供一个用介绍定义的那种系统,它运行时可以只用少量的需存储、维护和分布的地址信息。本专利技术的另一个目标是提供一个通过介绍定义的一种系统,它可以不仅在数据库中而且在一个应用中(即在数据库中写和读的程序)接受简单的手工配置,并且在创建数据实体时不需要声明它属于哪个处理器,也就是说这应该是预定义的。本专利技术还有一个目标是提供一个用介绍来定义的那种系统,它允许灵活的分布和冗余转换,这保证了服务的可维护性和可用性。也就是说在冗余转换的情况下,必须更新的地址信息不可太多。依据本专利技术的第一个方面,上述目标在分布式数据库系统中已经实现,在该系统中数据库的不同部分由一定数量的互连处理器分别控制处理。这些不同的数据库部分包括许多数据实体。对每个这样的数据实体,有关于该数据实体位于哪一处理器的全局信息,以及关于该数据实体在本处理器中位于何处的本地信息。全局信息以通用全局信息的形式位于系统中的每个处理器中,它对于每个预定义的数据实体集是特定的。根据一个优选实施例,上述数据实体集包含了分布实体,每个实体都包含了位于某处理器中具体实体的一些实例信息,以及用以找到处理器地址的信息。数据实体既可以通过键值也可以通过数据实体标识来寻址,所述数据实体标识包含了关于数据实体属于哪个分布实体的信息以及标识数据实体的信息。此数据实体标识可包括本地和全局数据实体标识,每个标识都有两个信息域。对于本地标识,其中的一个域标识本处理器,而另一个域标识数据实体。对于全局标识,一个域标识分布实体而另一个域标识数据实体。本地信息至少包括在三张表中。第一张表含有本地数据实体标识,第二张表包含全局数据实体标识,而第三张表至少包含键值。全局信息包括在第四张表中,它包含分布实体的编号,每个这样的分布实体编号指向另一个处理器。依据本专利技术的第二个方面,上述目标已通过在一个分布式数据库系统中,访问属于特定类数据实体的方法实现,而访问操作是利用了数据实体唯一键值和类的标识号。在所述数据库系统中,数据库的不同部分分别由一些互连处理器控制处理。数据库的不同部分包含了一些上文所指类型的数据实体,每个这样的数据实体有关于数据实体位于哪个处理器的全局信息,以及在本处理器数据实体位于何处的本地信息。搜索数据实体是利用键值从本处理器开始的。如果通过搜索发现此数据实体不在同一处理器中,那么处理的方法则包括以下进一步的步骤产生一个逻辑分布实体编号,它标识位于某个处理器中被访问数据实体的一些实例信息,以及关于这个处理器的寻址信息。通过组合数据实体的类的信息和逻辑分布实体编号,产生相应的物理分布实体编号。被搜索的数据实体所处的数据库所在的处理器由物理分布实体编号来标识。消息发送到上文说的处理器,包含有关被搜索数据实体的信息,而该被搜索数据实体被利用已找到的处理器中的键值来作本地搜索。找到了的数据实体的拷贝返回给要求访问的处理器。依照本专利技术第三个方面,所述目标通过在分布式数据库系统中访问属于特定数据实体类的数据实体的方法来实现。在该数据库系统中,数据库的不同部分分别由一些互连处理器来控制处理。不同的数据库部分包含一些上文所指类型的数据实体,且对每个这样的数据实体,有着关于该数据实体处于何处理器的全局信息,以及至于该数据实体在本处理器中位于何处的本地信息。本地数据实体标识被创建,它除了包含有标识数据实体的信息外,还包含了有关分布实体的信息,分布实体又包括了位于本处理器中的数据实体类的一些实例的第一部分信息。为了试图用本地数据实体在本地处理器中找到数据实体,搜索首先从本地处理器开始。如果这一搜索结果表明数据实体不处于本处理器,则搜索方法包括以下进一步的步骤。本地数据实体标识被转变成包含分布实体第一部分信息的全局数据实体标识。它又包括了在特定处理器中数据实体特定类的一些实例的信息,数据实体属于哪个类的信息,以及对该处理器寻址的信息。全局数据实体标识也包含了标识数据实体的第二部分信息。利用包含在全局数据实体标识中的分布实体,对被搜索数据实体所处的处理器进行搜索。相关消息被送往上述的处理器,该处理器包括了全局数据实体标识。通过全局数据实体标识来对找到的处理器进行搜索。已找到的数据实体标识被返回给启动访问的处理器。依据本专利技术第四个方面,所述的目标通过分布式数据库系统中的分布实体实现,在分布式数据库系统中,数据库的不同部分分别由一些互连处理器控制处理。这些不同的数据库部分包含了一些数据实体。上述的分布实体包括位于某特定处理器中数据实体特殊类型的一些实例的信息,以及这个处理器的地址本文档来自技高网...

【技术保护点】
一个分布式数据库系统,包括一个数据库和用来控制处理所述数据库不同部分的一些互连处理器,该数据库部分包括一些数据实体,每个数据实体具有与之相关的信息,包括关于数据实体位于哪个处理器的全局信息,和数据实体位于本处理器何处的本地信息,该全局信息以通用全局信息的形式位于每一个系统中的处理器上,并且对每个预定义的数据实体集是特定的。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:BM塞缪尔森A比扬纳斯泰特
申请(专利权)人:艾利森电话股份有限公司
类型:发明
国别省市:SE[瑞典]

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

1