[发明专利]日志同步方法及装置、存储介质、电子设备有效
申请号: | 201710692113.6 | 申请日: | 2017-08-14 |
公开(公告)号: | CN110019498B | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 李强;廖耀华 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/18 |
代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 王辉;阚梓瑄 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 同步 方法 装置 存储 介质 电子设备 | ||
本公开是关于一种日志同步方法及装置,属于数据处理技术领域。该方法包括:从源数据库中读取事务日志并将所述事务日志存储到多个读取环形队列中;将各所述读取环形队列中的事务日志存储至消费环形队列中,并将所述消费环形队列中的事务日志发送至与目标数据库建立连接的线程;由所述线程将所述事务日志写入所述目标数据库并记录成功写入的事务日志所对应的日志编码。该方法通过采用环形队列对事务日志进行存储,提高了事务日志存储的速度,并且大大的降低了内存损耗。
技术领域
本公开涉及数据处理技术领域,具体而言,涉及一种日志同步方法、日志同步装置、计算机可读存储介质以及电子设备。
背景技术
随着互联网技术的发展,使用互联网的用户越来越多,为了保证系统的稳定性,系统的部署结构也开始由最开始的单机房部署,逐步向同城多机房以及异地多机房部署等进行转变。当系统多机房部署后,产生的数据也会分布于多个机房,因此也给多机房之间的数据同步带来了巨大的挑战。
目前保持数据之间同步的方法,可以包括如下两种:一种是依靠数据源软件本身提供的同步机制完成数据同步;例如,MySql(关系型数据库管理系统)或者Redis等都可以提供相应的机制来完成数据同步;另一种是通过应用进行双写来保证数据一致性;具体的可以包括:应用完成对数据源A的写入操作后,同时对数据源B再进行写入操作。
但上述两种方法都存在相应的缺点:首先,针对于MySql来说,依靠MySql本身提供的同步机制,当源数据库负载压力较大时,会导致数据同步延迟;针对Redis来说,使用Redis数据同步时,当更换主节点或者超出主节点日志缓冲范围时,会出现数据全量同步的情况,导致数据同步的时间延长,并且数据同步期间Redis不能对外提供服务;其次,应用双写将数据一致性逻辑侵入应用程序中,导致程序逻辑相对复杂;同时对多个数据源进行写入操作,当出现其中部分数据源写入失败的情况时,难以所有数据源数据的一致性。
因此,有必要提出一种新的日志同步方法。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种日志同步方法、日志同步装置、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开的一个方面,提供一种日志同步方法,包括:
从源数据库中读取事务日志并将所述事务日志存储到多个读取环形队列中;
将各所述读取环形队列中的事务日志存储至消费环形队列中,并将所述消费环形队列中的事务日志发送至与目标数据库建立连接的线程;
由所述线程将所述事务日志写入所述目标数据库并记录成功写入的事务日志所对应的日志编码。
在本公开的一种示例性实施例中,所述事务日志包括多个数据源,且各所述数据源与各所述读取环形队列一一对应。
在本公开的一种示例性实施例中,在将所述事务日志存储到多个读取环形队列中之后,所述日志同步方法还包括:
以增量的方式对各所述读取环形队列中的事务日志进行编码。
在本公开的一种示例性实施例中,在将所述事务日志存储到多个读取环形队列中之后,所述日志同步方法还包括:
将所述读取环形队列中的事务日志存储至本地数据库。
在本公开的一种示例性实施例中,在将所述事务日志存储到多个读取环形队列中之前,所述日志同步方法还包括:
对所述事务日志进行解析,并将解析后的所述事务日志进行格式化处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710692113.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据读取方法及装置
- 下一篇:数据重分布的处理方法和装置以及电子设备