分布式数据库系统的研究开始于20世纪70年代中期,当时美国计算机公司研制了第一个分布式数据库系统的原型SDD-1。这个系统是在1976-1978年进行设计和研发的,之后在1979年实现了在DEC-10和DEC-20计算机上的部署和使用。它几乎包括了分布式数据库系统的全部理论和实现技术,是分布式数据库系统发展的典范。目前已经有一些同构分布和异构分布的分布式数据库系统的原型。
我国对分布式数据库的研究始于80年代,虽然起步晚,但是起点比较高。目前已经研发出的原型系统无论是性能上还是功能上都已经达到世界平均水平。经过将近几十年的发展,分布式数据库系统的理论和技术已经非常成熟,而且技术难点问题也已经攻克。在九十年代已经有产品开始进入市场,但是由于当时系统复杂性对于完全透明的分布式数据库还很难达到,所以当时分布式数据库系统基本上没有进入实用化阶段。
分布式数据库系统极大的满足了当今信息系统应用的需求,同时也符合当今企业组织的管理思想和方式。对那些管理上集中而地域上分散的跨国集团、大机关、大企业,例如全球性的或全国性的银行、公司、保险业、连锁店、各类交通运输业,以及全国性的人、财、资源、环境管理机构和军事国防部门等需求极其强烈。在这些组织当中,既要有各部门的局部控制和分散管理,同时也需要整个组织的全局控制以及高层次的协同管理。因此,分布式数据库系统是未来数据库的必然趋势。
一、分布式存储的定义
分布式存储,是将数据分散存储在多台独立的存储设备上。传统的存储系统采用集中式地的服务器来存放所有的数据,因此,存储服务器的性能就成为系统性能的瓶颈,同时也是安全性和可靠性的关键点,无法满足大规模存储的需要。分布式存储采用可扩展的系统结构,同时利用多台存储服务器来分担存储负荷,利用位置服务器定位存储数据的存储位置信息,它不但提高了系统的可用性、可靠性和存取效率,还易于扩展存储设备。
分布式系统主要支持分布式的处理,它是多处理机结构体系,通过计算机网络把多个处理机连接起来,把一个任务分解为多个子任务然后分布到多个处理机上同时执行,最终将结果生成出来,返回给业务系统。分布式系统主要包括操作系统、编译系统、文件系统、程序设计和分布式数据库系统等。分布式系统在进行任务处理时,首先将一个计算的任务拆分成多个子任务,将多个子任务分发到多个处理机上同时进行处理,最终合并子任务处理的结果,把最终结果提交给业务系统使用。这一点与并行系统相似,但它和并行系统也存在着区别,分布式系统是将子任务单独进行处理,独立执行,相互之间几乎没有任何影响,例如其中的一个子任务在进行业务处理时,由于某方面原因,导致结果错误或者数据异常,无法返回正确的结果,但对其他的子任务却没有任何影响,其他子任务仍能正常运行,返回正确的结果。所以,分布式系统是允许最终的结果有一定的错误和误差,并且对实时性要求也不高的系统。
它通常包括如下三个基本特点:
1) 分布式数据库系统中最重要是的分层控制结构,分层控制结构是整个分布式数据库系统管理的基础,它通常以全局数据库为核心,使各个局部数据库管理系统都拥有管理本地数据库的自主权。
2) 数据库独立性是整个分布式数据库的核心,而且对数据的分布式透明性进行了定义和介绍。分布式透明性是指程序的正确性不受数据转移的丝毫影响,仿佛数据是集中式存储的,完全没有被分散。只是在使用数据时,同时从分布在不同物理位置上的数据库进行提取数据,然后将提取出来的数据进行合并,返回给业务系统使用,数据的访问速度比集中式数据库速度要慢,降低了数据处理的效率。
3) 数据的冗余特性是分布式数据库系统新增的主要特性,这也是分布式数据库和集中式数据库的一个主要区别。增加数据的冗余度主要出于几个方面:一方面,我们在不同的数据库节点上保留相同的数据可以使用户访问数据时直接使用本地数据,使本地数据库的应用增强。另一方面,当某个数据库节点一旦发生故障或者损坏时,我们可以通过使用其他的数据库节点来进行复制数据,从而保证了数据库节点的正常运行,对分布式数据库系统的稳定性和安全性提供了有力的保障。
二、分布式数据库的概念
近年来,计算机技术突飞猛进,计算机的使用越来越广。单计算机系统的服务器越来越无法满足人们对计算机性能和功能上的需求,因此,通过计算机网络连接多台计算机服务器组成分布式环境是当今数据库的发展趋势。随着企业发展的不断壮大,企业趋向于分散化,传统的集中式软件系统已无法满足企业的需要,开始逐步从集中式过渡到分布式。分布式数据库必然成为数据库技术的主要研究方向。
另一方面,在21世纪经济发展中,信息是企业发展和扩大的核心因素。由于企业发展不断壮大,企业结构分散化加剧,使得传统的数据库部署方式已无法满足企业的需要,数据库的分布式部署方式已经成为企业数据库的核心,也是未来数十年之内的发展方向。
分布式数据库由一组数据节点构成,这些数据库节点在逻辑上是同一个数据库,但是物理上这些数据库节点却是分散在不同地理位置,通过计算机网络将其连接起来,并统一由分布式数据库管理系统进行数据的管理,管理所有节点上的数据。
按功能进行划分,分布式数据库系统主要包括分布式数据库管理系统和分布式数据库。分布式数据库使用计算机网络将分散在各地的各个数据库节点连接起来形成一个统一的逻辑集合。分布式数据库主要包括局部应用和全局应用:分布应用(或全局应用)主要是指对两个以上结点上的数据库执行应用;而局部应用仅对本结点的数据库执行应用。只有支持全局应用的才被称为分布式数据库系统。它主要对分布式环境下数据进行管理和维护,使数据保持一致。
三、分布式数据库系统的体系结构
分布式数据库系统的体系结构主要由局部概念层、局部内层、全局外层以及全局概念层等几部分组成的,分布式数据库是通过网络通讯、全局数据库管理系统以及局部数据库管理系统同时进行管理的。三者共同构成了分布式数据库的管理系统。通过对它们的实现,支撑了整个分布式数据库体系。
分布式数据库系统是传统的集中式数据库系统在计算机网络方面的的延伸。因此,分布式数据库不仅具有传统集中式数据库的全部特点,同时它又比集中式数据库技术实现上要求更高,实现更加复杂。
分布式数据库系统主要划分为以下四层模式,如下图所示。这四层主要包括:全局概念外层、全局视图(或称全局外层)、局部内层以及局部概念层等基本部分。各个层次之间拥有各自的联系,进行不同映射。
分布式数据库系统结构图
分布式数据库是整个企业私有云架构在数据存储方面的关键核心,它的实现对于私有云平台的实现至关重要,尤其是云计算ERP的实现。ERP系统最关键的核心就是数据,而数据的存储一直是系统的性能瓶颈,只有从根本上解决数据存储问题才能彻底解决ERP系统的性能瓶颈。分布式数据库从根本上解决了数据的存储,通过把不同的业务系统模块的数据部署到不同的数据库服务器上,从而减少了单个数据库的并发操作和海量数据的处理,从根本上提升了性能。所以,分布式存储是未来ERP数据存储的发展方向。
本文主要介绍了分布式数据库的定义、特点、分类、系统结构等方面,通过对分布式数据库核心技术的研究,后期我们将设计在私有云平台方面的数据的分布式架构,实现云计算ERP数据存储在分布式数据库上的应用。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:企业私有云在RS10中的应用之二:云计算中的分布式存储
本文网址:http://www.toberp.com/html/consultation/10839710570.html