分布式数据库是指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展,传统的关系型数据库开始从集中式模型向分布式架构发展,基于关系型的分布式数据库在保留了传统数据库的数据模型和基本特征下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。
另一方面,随着数据量越来越大,关系型数据库开始暴露出一些难以克服的缺点,以NoSQL 为代表的非关系型数据库,其高可扩展性、高并发性等优势出现了快速发展,一时间市场上出现了大量的key-value 存储系统、文档型数据库等NoSQL 数据库产品。NoSQL 类型数据库正日渐成为大数据时代下分布式数据库领域的主力。
这种组织数据库的方法克服了物理中心数据库组织的弱点。 首先,降低了数据传送代价,因为大多数的对数据库的访问 *** 作都是针对局部数据库的,而不是对其他位置的数据库访问; 其次,系统的可靠性提高了很多,因为当网络出现故障时,仍然允许对局部数据库的 *** 作,而且一个位置的故障不影响其他位置的处理工作,只有当访问出现故障位置的数据时,在某种程度上才受影响; 第三,便于系统的扩充,增加一个新的局部数据库,或在某个位置扩充一台适当的小型计算机,都很容易实现。然而有些功能要付出更高的代价。例如,为了调配在几个位置上的活动,事务管理的性能比在中心数据库时花费更高,而且甚至抵消许多其他的优点。 分布式软件系统(Distributed Software Systems)是支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式 *** 作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。
分布式 *** 作系统负责管理分布式处理系统资源和控制分布式程序运行。它和集中式 *** 作系统的区别在于资源管理、进程通信和系统结构等方面。 分布式程序设计语言用于编写运行于分布式计算机系统上的分布式程序。一个分布式程序由若干个可以独立执行的程序模块组成,它们分布于一个分布式处理系统的多台计算机上被同时执行。它与集中式的程序设计语言相比有三个特点:分布性、通信性和稳健性。 分布式文件系统具有执行远程文件存取的能力,并以透明方式对分布在网络上的文件进行管理和存取。 分布式数据库系统由分布于多个计算机结点上的若干个数据库系统组成,它提供有效的存取手段来 *** 纵这些结点上的子数据库。分布式数据库在使用上可视为一个完整的数据库,而实际上它是分布在地理分散的各个结点上。当然,分布在各个结点上的子数据库在逻辑上是相关的。
Hadoop的分布式文件系统HDFS,作为开源的分布式平台,为目前流行的很多分布式数据库提供了支持,譬如HBase等。Yonghong的分布式文件系统ZFS,为分布式数据集市Z-DataMart提供了底层平台。
分布式存储,无疑是云计算时代最受关注的一门技术。
到底什么是分布式存储?
简单来说,人多力量大,利用多个存储服务器构建存储池,满足互联网时代越来越多的存储需求。
互联网行业的发展,数据成指数级增长,人们对存储的需求越来越大,采用集中式的存储成为数据中心系统的瓶颈,不能满足大规模存储应用的需要。
受益于服务器技术的发展和成熟,与标准服务器的分布式存储开始出现,分布式存储开始被广泛的应用起来。
分布式存储就是将数据分散存储到多个存储服务器上,并将这些分散的存储资源构成一个虚拟的存储设备,实际上数据分散的存储在企业的各个角落。分布式存储的好处是提高了系统的可靠性、可用性和存取效率,还易于扩展。
为了便于大家理解,这里打个简单的比方。我们可以将数据比作成货物,存储比作成拉货的卡车货,直连存储就相当于用普通货车拉货。
随着存储需求的逐渐增多,为了提升拉货的效率,我们就得不断的对卡车进行升级,变成更大型的货车,才能满足需求,这种扩展就相当于Scale up(纵向扩展)方式。
Scale up的优势是扩展简单,成本增长较慢,但是扩展能力有限,很难满足大容量存储的需求。
于是随着业务量的持续增长,扩展单机能力已经不能解决当前的问题,需要Scale-out,这也就是分布式存储系统。
分布式存储就像我们的拉货的货车,改用一节一节连接起来的火车拉货,当不能满足存储需求的时候,我们只需要添加一节一节的车厢就能满足需求了。
分布式系统的出现是让企业客户可以用普通的服务器完成单个计算机无法完成的计算、存储任务。让企业用户可以利用更多的普通机器,处理更多的数据需求。
▉ 分布式存储的优势
最后我们来汇总看下分布式存储额优势:
1、易于扩展
得益于合理的分布式架构,分布式存储可预估并且d性扩展计算、存储容量和性能。
2、高性能
一个具有高性能的分布式存储通常能够高效地管理读缓存和写缓存,并且支持自动的分级存储。
3、支持分级存储
由于通过网络进行松耦合链接,分布式存储允许高速存储和低速存储分开部署,或者任意比例混布。
4、多副本一致性
与传统的存储架构使用RAID模式来保证数据的可靠性不同,分布式存储采用了多副本备份机制,最小化对业务的影响。
5、存储系统标准化
随着分布式存储的发展,存储行业的标准化进程也不断推进,分布式存储优先采用行业标准接口(SMI-S或OpenStackCinder)进行存储接入,用户可以实现跨不同品牌、介质地实现容灾,从侧面降低了存储采购和管理成本。
▉ 最后总结
分布式存储是一个大的概念,其包含的种类繁多,除了传统意义上的分布式文件系统、分布式块存储和分布式对象存储外,还包括分布式数据库和分布式缓存等。
分布式数据库系统通常使用较小的计算机系统 每台计算机可单独放在一个地方 每台计算机中都有DBMS的一份完整拷贝副本 并具有自己局部的数据库 位于不同地点的许多计算机通过网络互相连接 共同组成一个完整的 全局的大型数据库
这种组织数据库的方法克服了物理中心数据库组织的弱点 首先 降低了数据传送代价 因为大多数的对数据库的访问 *** 作都是针对局部数据库的 而不是对其他位置的数据库访问 其次 系统的可靠性提高了很多 因为当网络出现故障时 仍然允许对局部数据库的 *** 作 而且一个位置的故障不影响其他位置的处理工作 只有当访问出现故障位置的数据时 在某种程度上才受影响 第三 便于系统的扩充 增加一个新的局部数据库 或在某个位置扩充一台适当的小型计算机 都很容易实现 然而有些功能要付出更高的代价 例如 为了调配在几个位置上的活动 事务管理的性能比在中心数据库时花费更高 而且甚至抵消许多其他的优点
分布式数据库系统主要特点
多数处理就地完成
各地的计算机由数据通信网络相联系
克服了中心数据库的弱点 降低了数据传输代价
提高了系统的可靠性 局部系统发生故障 其他部分还可继续工作
各个数据库的位置是透明的 方便系统的扩充
为了协调整个系统的事务活动 事务管理的性能花费高
数据分片
类型
( )水平分片 按一定的条件把全局关系的所有元组划分成若干不相交的子集 每个子集为关系的一个片段
( )垂直分片 把一个全局关系的属性集分成若干子集 并在这些子集上作投影运算 每个投影称为垂直分片
( )导出分片 又称为导出水平分片 即水平分片的条件不是本关系属性的条件 而是其他关系属性的条件
( )混合分片 以上三种方法的混合 可以先水平分片再垂直分片 或先垂直分片再水平分片 或其他形式 但他们的结果是不相同的
条件
( )完备性条件 必须把全局关系的所有数据映射到片段中 决不允许有属于全局关系的数据却不属于它的任何一个片段
( )可重构条件 必须保证能够由同一个全局关系的各个片段来重建该全局关系 对于水平分片可用并 *** 作重构全局关系 对于垂直分片可用联接 *** 作重构全局关系
( )不相交条件 要求一个全局关系被分割后所得的各个数据片段互不重叠(对垂直分片的主键除外)
数据分配方式
( )集中式 所有数据片段都安排在同一个场地上
( )分割式 所有数据只有一份 它被分割成若干逻辑片段 每个逻辑片段被指派在一个特定的场地上
( )全复制式 数据在每个场地重复存储 也就是每个场地上都有一个完整的数据副本
lishixinzhi/Article/program/Oracle/201311/18621
具有以下突出的特点:
具有灵活的体系结构。
适应分布式的管理和控制机构。
经济性能优越。
系统的可靠性高、可用性好。
局部应用的响应速度快。
可扩展性好,易于集成现有系统。
分布式数据库系统是一个单独的系统。
分布式软件系统(Distributed Software Systems)是支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式 *** 作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。
分布式 *** 作系统负责管理分布式处理系统资源和控制分布式程序运行。它和集中式 *** 作系统的区别在于资源管理、进程通信和系统结构等方面。
分布式程序设计语言用于编写运行于分布式计算机系统上的分布式程序。一个分布式程序由若干个可以独立执行的程序模块组成,它们分布于一个分布式处理系统的多台计算机上被同时执行。它与集中式的程序设计语言相比有三个特点:分布性、通信性和稳健性。
分布式文件系统具有执行远程文件存取的能力,并以透明方式对分布在网络上的文件进行管理和存取。
分布式数据库系统由分布于多个计算机结点上的若干个数据库系统组成,它提供有效的存取手段来 *** 纵这些结点上的子数据库。分布式数据库在使用上可视为一个完整的数据库,而实际上它是分布在地理分散的各个结点上。当然,分布在各个结点上的子数据库在逻辑上是相关的。
---------------
分布式数据库系统是由若干个站集合而成。这些站又称为节点,它们在通讯网络中联接在一起,每个节点都是一个独立的数据库系统,它们都拥有各自的数据库、中央处理机、终端,以及各自的局部数据库管理系统。因此分布式数据库系统可以看作是一系列集中式数据库系统的联合。它们在逻辑上属于同一系统,但在物理结构上是分布式的。
分布式数据库系统已经成为信息处理学科的重要领域,正在迅速发展之中,原因基于以下几点:
1、它可以解决组织机构分散而数据需要相互联系的问题。比如银行系统,总行与各分行处于不同的城市或城市中的各个地区,在业务上它们需要处理各自的数据,也需要彼此之间的交换和处理,这就需要分布式的系统。
2、如果一个组织机构需要增加新的相对自主的组织单位来扩充机构,则分布式数据库系统可以在对当前机构影响最小的情况下进行扩充。
3、均衡负载的需要。数据的分解采用使局部应用达到最大,这使得各处理机之间的相互干扰降到最低。负载在各处理机之间分担,可以避免临界瓶颈。
4、当现有机构中已存在几个数据库系统,而且实现全局应用的必要性增加时,就可以由这些数据库自下而上构成分布式数据库系统。
5、相等规模的分布式数据库系统在出现故障的几率上不会比集中式数据库系统低,但由于其故障的影响仅限于局部数据应用,因此就整个系统来讲它的可靠性是比较高的。
特点
1、在分布式数据库系统里不强调集中控制概念,它具有一个以全局数据库管理员为基础的分层控制结构,但是每个局部数据库管理员都具有高度的自主权。
2、在分布式数据库系统中数据独立性概念也同样重要,然而增加了一个新的概念,就是分布式透明性。所谓分布式透明性就是在编写程序时好象数据没有被分布一样,因此把数据进行转移不会影响程序的正确性。但程序的执行速度会有所降低。
3、集中式数据库系统不同,数据冗余在分布式系统中被看作是所需要的特性,其原因在于:首先,如果在需要的节点复制数据,则可以提高局部的应用性。其次,当某节点发生故障时,可以 *** 作其它节点上的复制数据,因此这可以增加系统的有效性。当然,在分布式系统中对最佳冗余度的评价是很复杂的。
分布式系统的类型,大致可以归为三类:
1、分布式数据,但只有一个总 据库,没有局部数据库。
2、分层式处理,每一层都有自己的数据库。
3、充分分散的分布式网络,没有中央控制部分,各节点之间的联接方式又可以有多种,如松散的联接,紧密的联接,动态的联接,广播通知式联接等。
分布式数据库是一个逻辑数据库,它的物理数据库在地理位置上分布在多个数据库管理系统的计算机网络中,这些数据库系统构成了分布式的数据库管理系统。在分布式数据库管理系统中,每台计算机上的用户在访问数据库时并不感到他使用的数据在物理上不存储在自己的计算机中,而是由分布式数据库系统由网络从其它机器中传输过来。因此,对每一用户来说,看到的都是一个统一的概念模式。分布式数据库系统的主要特点是:(1)具有较高的可靠性,当系统中一台机器发生故障时、不会导致整个系统的破坏。当故障排除后,分布式数据库系统可将故障期间的数据库加以恢复修改。(2)分散了工作负荷,使大量的处理均匀分担。(3)便于实现系统的扩充。分布式数据库系统是计算机通讯和数据库技术相结合的产物,是非常有代表性的数据库技术发展方向之一。
以上就是关于分布式数据库的简介全部的内容,包括:分布式数据库的简介、分布式储能技术优势是什么、快速了解分布式数据库的主要特点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)