麒麟v10 上部署 TiDB v5.1.2 生产环境优化实践
853
2023-04-09
分布式数据库,什么是分布式数据库
分布式数据库,什么是分布式数据库
分布式数据库系统是在集中式数据库系统成熟技术的基础上发展起来的,但不是简单地把集中式数据库分散地实现,它具有自己的性质和特征。集中式数据库系统的许多概念和技术,如数据独立性、数据共享和减少冗余度、并发控制、完整性、安全性和恢复等在分布式数据库系统中都有了不同的、更加丰富的内容。
现状与需求 有些公司拥有多个分支公司,而各地的分支公司都有自己的数据库,总公司需要实现和各个分支公司的互联互通,能够调用各个分支公司的数据库。这就是一种分布式数据库应用系统的调用。 解决方案 东显科技充分考虑了企业的这种实际的需求,为信息化建设投资的企业度身定制了DLAN互联解决方案,低成本、高安全性、高可靠性的实际效果,满足企业的以上需求,实现了真正意义的网络办公及无纸化办公,协同运作、统一管理。 在具有数据库的分公司安装DLAN SERVER端(MDLAN),没有数据库的分支公司采用DLAN VPN的分支端(SDLAN),移动用户采用PDLAN,这样就可以实时完成全网的数据访问。 应用效果
1.实现总公司的应用系统能够实时性的访问总部的数据库。
2.实现了总部与各分支机构的局域网远程互联,实现了真正意义的网络办公及无纸化办公,协同运作、统一管理,为企业更进一步的发展打下基础;
3.实现了工程师远程管理各分公司电脑,大大降低了全公司的维护成本,实现真正意义上的移动办公,公司领导及出差人员只需以任意方式接入Internet,安装了DLAN VPN软件的笔记本电脑即可同样安全的接入公司总部网络,共享信息和应用系统,实现无处不在的移动办公;
4. 足够的保证了数据隧道的安全、数据的加密和分支接入的安全;
5. 同时VPN线路支持语音传输,为企业的内部语音(VOIP)互联和视频通讯打下基础;
(1)数据独立性。数据独立性是数据库方法追求的主要目标之一。在集中式数据库中,数据独立性包括两方面:数据的逻辑独立性和物理独立性。其意义在于程序和数据的逻辑结构和数据的存储结构无关。在分布式系统中,数据库独立性除了上面所说之外,还有数据分布独立性亦称分布透明性,即用户不必关心数据的逻辑分片,不必关心数据的物理位置分布的细节,也不必关心重复副本(冗余数据)的一致性问题。有了分布透明性,用户的应用程序书写起来就如同数据没有分布一样。在集中式数据库中,数据的独立性是通过系统的三级模式和它们之间的二级映象得到的。分布式数据库,分布透明性是由于引入新的模式和模式之间的映象得到的。
(2)集中与自治相结合的控制结构。数据库是供用户共享的,在集中式数据库中,为保证数据的安全性和完整性,对数据库的控制是集中的。由数据库管理员(DBA)负责监督和维护系统的正常运行。
在分布式数据库中,数据的共享有两个层次:一是局部共享,即在局部场地上存储局部用户的共享数据。二是全局共享,即在分布式数据库的各个场地也存储可供网络中其他场地的用户共享的数据,支持全局引用。因此,相应的控制结构也具有两个层次:集中和自治。各局部的DBMS可以独立地管理局部数据库,具有自治的功能。同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。
(3)适当增加数据冗余度。在集中式数据库中,尽量减少冗余度是系统目标之一。其原因是,冗余数据浪费存储空间,而且容易造成个副本之间的不一致性。减少冗余度的目标是用数据共享来达到的。而在分布式系统中却希望增加冗余数据,在不同的场地存储同一数据的多个副本。其原因是提高系统的可靠性和性能,当某一场地出现故障,系统可以对另一场地上的相同副本进行操作,不会造成系统的瘫痪。系统可以根据距离选择离用户最近的数据副本进行操作,减少通信代价。但是增加冗余会碰到集中式数据库同样的问题,即不利于更新,增加了系统维护代价,需要在这些方面作出权衡。
(4)全局的一致性、可串行性和可恢复性。分布式数据库中各局部数据库应满足集中式数据库的一致性、可串行性和可恢复性。除此以外,还要保证数据库的全局一致性、可串行性和可恢复性。例如,在前面提到的银行转帐事务中,包括两个节点上的更新操作,当其中一个节点出现故障,应使全局事务回滚,在一个节点撤销已经执行的操作等。
分布式数据库系统的目标 研制分布式数据库系统的动机、目的,主要包括技术和组织两方面的目标。 (1)降低费用。使用数据库的单位在组织上往往是分布的(部门、科室),在地理上也是分布的。分布式数据库系统的结构符合这种分布的要求。允许用户在自己的本地录用、查询、维护等操作,实行局部控制,降低通信代价,提高响应速度。 (2)提高系统可靠性。将数据分布于多个场地,并增加适当的冗余度可以提供更好的可靠性。在一些可靠性要求高的系统中,这一点尤其重要。避免了因为某个场地的故障而造成全部瘫痪的后果。 (3)保护投资。当在一个企业中已经建成了若干个数据库之后,为了相互利用资源,为了开发全局应用,就要研制分布式数据库系统。否则,就要把现有的数据库集中起来重建一个更大的集中式数据库,将是困难和不经济的。所以,利用分布式数据库充分利用现有数据库资源,提高利用率。 (4)易于扩展处理能力和系统规模。当一个企业增加了新的部门时,分布式数据库系统的结构可以很容易地扩展系统,甚至是唯一的途径:在分布式数据库中增加一个新的节点,不影响现有系统的正常运行。这样比扩大集中式系统要灵活经济。在集中式系统中扩大系统和系统升级,由于有硬件不兼容和软件改变困难等缺点,升级的代价常常是昂贵和不可行的。 现状与前景 尽管在过去的时间里,分布式数据库已经取得了很显著的研究成果,但是,成功地进入商品化运行的软件却仍为数不多。 集中系统的数据库设计是比较复杂的,而分布式数据库的设计就更为复杂了。它除了集中式数据库设计的所有复杂性,还有数据分布的决策、更新同步以及查询分解等的复杂性。另外,还有设计通信系统的问题。 大多数的数据库管理系统也许走一条从集中到分布的道路。首先是跨越数个节点定义数据库,避免不同节点数据的更新同步问题,许可局部和远程查询,回避了复杂的查询处理问题。进一步的工作是增加有限的重复,如果最新的数据并不是最重要的情况下,这样提高了检索的性能。最后,就是完全的分布式数据库管理。系统的功能能够处理复杂的查询,有较好的并发控制机制和保证数据的更新同步。 对分布数据管理的研究有两个方面。一是单项的研究。比如数据的分布问题,通信问题等。在研究一个问题时,假定其他因素是不变的,得出研究成果。此处还要研究的是要将各种因素综合起来,研究它们的相互作用和结果。数据库设计和更新同步之间就有密切的联系,对于更新要求,依据不同的更新同步方案,对通信系统的要求也随着不同。因此,就要对这些因素综合地考虑。 分布式数据库系统的研究领域还包括对计算机网络的研究。计算机网络技术的迅速发展,已经很大程度地影响到了数据库和分布数据库的领域。不管是在远程网络还是局域网领域,都发生了很多的变比。局域网和远程网之间的处理差别,必然会导致处理数据库和分布数据库问题的显然不同的一些原则和方法。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。