[发明专利]一种用于实现数据库高可用性的方法及装置有效
申请号: | 201711239837.1 | 申请日: | 2017-11-30 |
公开(公告)号: | CN109857523B | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 张广舟;林晓斌;范孝剑;窦贤明;曾文旌;周正中;熊亮春;张文杰 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁;窦晓慧 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 实现 数据库 可用性 方法 装置 | ||
本申请公开了一种用于实现数据库高可用性的方法和装置,其中所述方法包括:主数据库服务器并发向复数个从数据库服务器发送已生成的日志;在所述主数据库服务器完成事务提交之前,判断完成所述事务提交前已生成的日志是否全部已被接收;若是,所述主数据库服务器完成所述事务提交。本申请可提高事务提交的效率,进而提升主数据库服务器的性能。
技术领域
本申请涉及数据库,具体涉及一种实现数据库高可用性的方法及装置。
背景技术
随着现代计算机科学技术的发展,数据库已逐步成为计算机信息系统的基础和核心,被广泛应用于电信、金融、政府等行业。数据库应用的高可用性也越来越引起人们的关注。
现有技术中,对可用性要求高的用户(如金融用户),其数据库一般采用一主多从架构(如图1所示),来提供高可用性的服务。正常情况下,由主数据库服务器(称为主库)对外服务。如果对外服务的进程执行了对数据的更改,则会在把更改写入数据库存储前,先写入到事务日志中。主数据库服务器产生的日志,不断通过网络连接,发送给从数据库服务器(称为备库)。从数据库服务器接收到日志后,将其进行回放,以使其数据跟主数据库服务器同步。
在主数据库服务器发生宕机等异常情况时,无法对外服务时,需要切换到从数据库服务器,由从数据库服务器继续提供服务,从而实现高可用性。为使切换后从数据库服务器的状态与主数据库服务器的最后状态一致,要保证从数据库服务器已经有主数据库服务器的所有日志。为此,在正常情况下主数据库服务器对外服务时,在提交一个事务的过程中,就要先等待多个从数据库服务器中的至少一个收到完成事务提交前需要发送到从数据库服务器的所有日志,然后才完成提交过程,通知客户端。
现有技术提供的数据库高可用性的方案中存在一些缺陷:在一主多从架构中,主数据库服务器和从数据库服务器之间经常会发生由于网络不稳定(如丢失数据包)、网络瓶颈、或者从数据库服务器达到性能瓶颈(如CPU利用率达到峰值)而导致部分日志无法及时发送到从数据库服务器的现象。这时主库只能等待或不断重试,直到至少一个从数据库服务器收到需要发送到从数据库服务器的所有日志。而事务在此期间也无法完成提交,因此这很大程度上降低了主库的性能。
如图2所示,从数据库服务器1收到了日志1和4,从数据库服务器2收到2和3,其他日志还在发送或重试发送中。此时,主数据库服务器仍要等待日志1到4在从数据库服务器1或2中的一个被全部接收,才能继续日志4对应的事务已提交,这很大程度上降低了主数据库服务器的性能。
发明内容
本申请提供一种实现数据库高可用性的方法,以解决现有由于主数据库服务器和从数据库服务器之间存在网络问题时或从数据库服务器达到性能瓶颈而导致的主库性能降低的问题。
本申请提供的一种用于实现数据库高可用性的方法,包括:
主数据库服务器并发向复数个从数据库服务器发送已生成的日志;
在所述主数据库服务器完成事务提交之前,判断完成所述事务提交前已生成的日志是否全部已被接收;
若是,所述主数据库服务器完成所述事务提交。
可选的,所述主数据库服务器并发向复数个从数据库服务器发送已生成的日志,包括:
所述主数据库服务器通过并发日志发送进程或线程并发向复数个从数据库服务器发送已生成的日志。
可选的,所述主数据库服务器通过并发日志发送进程或线程并发向复数个从数据库服务器发送已生成的日志,包括:
所述主数据库服务器通过并发日志发送进程或线程以条数为单位并发向复数个从数据库服务器发送已生成的日志;或者
所述主数据库服务器通过并发日志发送进程或线程以字节为单位并发向复数个从数据库服务器发送已生成的日志。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711239837.1/2.html,转载请声明来源钻瓜专利网。