当前位置: 首页 > 专利查询>诺宝公司专利>正文

数据库管理系统技术方案

技术编号:13741526 阅读:98 留言:0更新日期:2016-09-22 23:19
本发明专利技术涉及数据库管理系统。一种多用户、弹性的、按需的、分布式关系数据库管理系统。该数据库被划分为被称为原子的分布式对象。对于在一个位置处的原子的副本的任何改变被复制到包含那个原子的副本的所有其他位置。事务管理器操作成满足原子性、一致性、隔离性和持久性的属性。

【技术实现步骤摘要】
分案说明本申请属于申请日为2011年3月18日的中国专利技术专利申请201180014604.6的分案申请。
本专利技术总体上涉及数据库管理系统。更具体地,本专利技术涉及一种方法和设备,用于实现多用户、弹性的、按需的分布式关系数据库管理系统,其特征在于原子性、性能和可扩展性。
技术介绍
在过去这些年中,用于存储和检索消息的数据库的使用已经在大量的商业应用中显现为重要的工具。初始,许多数据库系统在具有多个用户的单个服务器装置上操作。然而,在过去这些年中,各种因素已经产生,它们要求数据库架构的基本特性改变。作为第一因素,数据库存储要求已经变得极大。其次,试图访问这样的数据库的用户的数量也已经变大。第三,用于检索具有最小的更新的相对稳定的数据的数据库的使用已经被替换为事务处理。事务是必须整体完成的工作的单位。单个事务可以包括多个数据操纵。例如,单个事务可以包括读取操作,随后是写入操作。近年来,大量的努力已经针对使得关系数据库能够支持日益增长的事务处理的速率。现在通过限定ACID属性的标准来判断数据库,该ACID属性即原子性、一致性、隔离性和持久性。原子性确保以其整体来完成所有的事务任务。一致性保证仅有效的数据被写入数据库。隔离性保证其
他操作在事务期间不能访问或“观看”在中间状态中的数据。持久性保证一旦已经成功地处理了事务,则它不能被复原。一致性在多用户系统中特别重要,在多用户系统中,两个或更多的用户可能寻求对于共享的易失性数据的同时访问。早期的多用户系统使用锁定操作来保证一致性。锁定可以是排他的或写入的锁定或者是非排他的或读取的锁定,并且可以被应用到单独的记录或被应用到页面。然而,当数据库在大小上已经增大时并且当事务速率已经提高时,用于管理锁定的开销已经变得显著,并且在一些情况下已经变为禁止性的。多版本并发控制(MVCC)是用于保证同时性的替代处理。对于复杂数据库,MVCC可以比锁定更有效。MVCC使用时间戳或增加的事务标识(ID)来串行化记录的不同版本。每一个版本允许事务读取在时间戳或ID前的对象的最近版本。利用该控制方法,其他用户将看不到例如对于记录的任何改变,直到提交了该改变。MVCC也消除了具有其他附加的开销的锁定,并且建立了其中读取操作不能阻挡写入操作的系统。除了满足ACID测试之外,现在存在对于针对用户的连续可用性的要求。一些数据库系统将一个计算机系统专用于事务处理,并且将另一个专用于决定支持和其他报告处理。它们互连使得可以同时支持其他功能。随着数据库在大小和复杂度上增大,现有的数据处理系统被替换为更强大的数据处理系统。用于适应于增长的另一种手段涉及复制系统,其中,一个机器被指定为“头”机器,其使所有的复制机器保持同步。如果头机器故障,则处理将那个功能分配给另一个复制机器。不同的复制机器可用于特定用户。该手段不是可扩展的,因为所有的机器必须具有相同的能力。作为另一种手段,可以将多个自治数据库系统整合为单个“联合”
数据库,该单个“联合”数据库具有计算机网络,该计算机网络互连各个独立的数据库。联合数据库要求“中间件”来将构成的数据库保持同步。这个“中间件”可以变得很复杂。当数据库大小增大时,操作中间件所需要的资源可能施加足以使得整体系统性能变差的大的开销。“分区”是用于实现数据库的另一种手段,在该数据库中,逻辑数据库或其构成元素被划分为不同的独立部分。在分布式数据库管理系统中,每一个分区可以在多个节点上扩展。在给定节点的用户可以对于该分区执行局部事务。也可以通过形成较小的数据库或通过分割仅一个表格的选择的元素来实现分区。对于分区存在两种一般的手段。在也被称为“分片”的水平分区中,将不同的行置于不同的表格和不同的服务器中。一般,它们具有特定的共性,诸如邮政编码的范围或按照范围划分为不同表格的姓。例如,第一数据库可能包括用于在范围A至M中的姓的所有记录;第二数据库针对在范围N至Z中。作为一种形式的水平分区的分片涉及将数据库的行定位在分离的服务器上。分片不计算在每一个表格中的行的数量,并且提高搜索性能。然而,分片在应用级使用散列码,这使得其太难以实现。它也包含两阶段递交。分片的复杂性使得其适合于特定应用,因为用于限定分片的基础被良好地限定。垂直分区包含创建具有较少的列并且在表格上分割列的表格。象联合数据库那样,垂直分区需要中间件来确定如何将对于特定字段的任何请求路由到适当的分区。另外,这些系统使用实现起来复杂的两阶段提交序列。在被称为“无共享”架构的又一种手段中,每一个节点是独立的和自给的。无共享架构对于web发展是普及的,因为它可以简单通过以便宜的计算机的形式添加节点而向上扩展。该手段在数据仓库应用
中是普及的,在数据仓库应用中,更新趋向于比事务处理出现得不频繁。然而,结合的处理在来自不同分区或机器的大数据集上很复杂。一些数据库系统被称为“分布式”系统。分布式系统的一种实现方式包含“簇”和两个通信路径。高速因特网路径在簇之间承载数据。诸如锁定管理的各种控制功能需要高速专用通信路径。虽然该手段解决了数据库的冗余和可用性问题,但是锁定管理如前所述可能限制系统性能。在“全共享”系统中,超高速的通信使系统保持同步。然而,锁定管理可能要求大量的带宽资源。为了避免这一点,这样的系统包含点到点的通信信道和很复杂的盘控制器。共同地,那些现有技术系统满足对于数据库系统的已知要求的一些而不是全部。所需的是一种数据库架构,其是可扩展的、满足ACID属性原子性、一致性、隔离性和持久性。也需要的是一种数据库系统,该数据库系统在因特网上操作而不需要专用高速通信路径,该数据库系统提供事务处理并且在大的地理区域上可操作。
技术实现思路
因此,本专利技术的一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统。本专利技术的另一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统,该数据处理系统是容错的。本专利技术的又一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统,该数据处理系统具有高度的可用性。本专利技术的再一个目的是提供一种弹性的、可扩展的、按需的、分
布式的数据处理系统,该数据处理系统是独立于平台的。本专利技术的又一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统,该数据处理系统是原子的、一致的、隔离的和持久的。本专利技术的又一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统,该数据处理系统在因特网上操作而不需要专用的高速通信路径。本专利技术的再一个目的是提供一种弹性的、可扩展的、按需的、分布式的数据处理系统,该数据处理系统提供事务处理,并且适于在大的地理区域上实现。根据本专利技术的一个方面,一种使得用户能够与由数据和元数据构成的数据库交互的数据库管理系统,包括其间具有通信路径的多个节点和永久存储器。每一个节点包括在用户级处的高级输入和输出命令和在系统级处的输入和输出命令之间的接口,在系统级处的输入和输出命令控制用于与所述数据库交互的操作序列,其中,响应于特定的系统级命令,原子对象生成原子,每一个原子包含数据或元数据的指定片断,据此,原子的所有实例集集体地限定在所述数据库中的所有所述元数据和数据。每一个节点另外包括:用于在所述系统中与每一个节点建立通信路径的本文档来自技高网
...

【技术保护点】
一种使得用户能够与由数据和元数据构成的数据库交互的数据库管理系统,所述系统包括:A)多个节点,每一个节点包括:i)在用户级处的高级输入和输出命令和在系统级处的输入和输出命令之间的接口,在系统级处的输入和输出命令控制用于与所述数据库交互的操作序列,其中,响应于特定的系统级命令,原子对象生成原子,每一个原子包含数据或元数据的指定片断,据此,原子的所有实例集集体地限定在所述数据库中的所有所述元数据和数据;ii)用于在所述系统中与每一个其他节点建立通信路径的通信控制;iii)响应于来自所述接口的系统命令而从选择的节点请求与查询相关但是在该节点中不存在的原子的副本的方法;iv)响应于来自另一个节点的对于原子的请求而复制所请求的原子以传送到该请求节点的方法,据此,仅完成查询所需的原子需要在任何给定的时间位于任何事务节点中;以及v)响应于在该节点处的原子中的改变而复制该原子以传送到在该原子所驻留的系统中的每一个其他节点的方法,B)连接到所述多个节点以在所有所述节点之间提供通信路径的装置,以及C)连接到所述通信装置以对于在原子中的信息提供永久存储器的装置,据此,在永久存储器中的原子的集合集体地包含在所述数据库中的所有所述数据和元数据。...

【技术特征摘要】
2010.03.18 US 61/315,3511.一种使得用户能够与由数据和元数据构成的数据库交互的数据库管理系统,所述系统包括:A)多个节点,每一个节点包括:i)在用户级处的高级输入和输出命令和在系统级处的输入和输出命令之间的接口,在系统级处的输入和输出命令控制用于与所述数据库交互的操作序列,其中,响应于特定的系统级命令,原子对象生成原子,每一个原子包含数据或元数据的指定片断,据此,原子的所有实例集集体地限定在所述数据库中的所有所述元数据和数据;ii)用于在所述系统中与每一个其他节点建立通信路径的通信控制;iii)响应于来自所述接口的系统命令而从选择的节点请求与查询相关但是在该节点中不存在的原子的副本的方法;iv)响应于来自另一个节点的对于原子的请求而复制所请求的原子以传送到该请求节点的方法,据此,仅完成查询所需的原子需要在任何给定的时间位于任何事务节点中;以及v)响应于在该节点处的原子中的改变而复制该原子以传送到在该原子所驻留的系统中的每一个其他节点的方法,B)连接到所述多个节点以在所有所述节点之间提供通信路径的装置,以及C)连接到所述通信装置以对于在原子中的信息提供永久存储器的装置,据此,在永久存储器中的原子的集合集体地包含在所述数据库中的所有所述数据和元数据。2.一种使得用户能够与由数据和元数据构成的数据库交互的数据库管理系统,所述系统包括:A)向用户提供对于所述数据库的访问的至少一个事务节点和维持所述整个数据库的档案的至少一个档案节点,每一个事务节点包括数据库请求引擎,所述数据库请求引擎提供在用户级处的高级输入和输
\t出查询命令和在系统级处的输入和输出命令之间的接口,在系统级处的输入和输出命令控制用于与所述数据库交互的操作序列,其中,响应于特定的系统级命令,原子对象生成原子,每一个原子包含数据或元数据的指定片断,据...

【专利技术属性】
技术研发人员:詹姆斯·A·斯塔基
申请(专利权)人:诺宝公司
类型:发明
国别省市:美国;US

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

1