【技术实现步骤摘要】
一种数据同步方法、装置及计算机可读存储介质
[0001]本申请涉及数据库
,尤其涉及一种数据同步方法、装置及计算机可读存储介质。
技术介绍
[0002]随着大数据时代的来临,不同系统之间进行数据同步的需求也越来越大,目前行业内进行数据同步时通常直接使用数据库自带的同步功能,然而所有数据库自带的同步功能均不能100%保证数据一致性,因为在数据库同步的过程中可能在数据没有同步完的时候主数据库发生宕机,从数据库有部分数据没有同步完成就要升成主数据库继续提供服务,然而当原来的主数据库故障恢复后,会成为从数据库去同步新的主数据库的数据,这样该数据库中就多了一部分原来没有被同步完成的数据,就造成了两个数据库的数据不一致,数据同步的可靠性较差。
技术实现思路
[0003]本申请实施例提供了一种数据同步方法、装置及计算机可读存储介质,至少能够解决相关技术中所提供的数据同步方式难以保证不同数据库的数据一致性的问题。
[0004]本申请实施例第一方面提供了一种数据同步方法,包括:
[0005]在业务逻辑层接 ...
【技术保护点】
【技术特征摘要】
1.一种数据同步方法,其特征在于,所述数据同步方法包括:在业务逻辑层接收到业务处理事件时,通过所述业务逻辑层与主数据库之间的切面类抽取所述主数据库执行的目标SQL语句;将所述目标SQL语句写入至所述主数据库的日志表;通过独立的同步服务线程,将所述主数据库的日志表数据同步至所有从数据库;其中,所述主数据库以及所述从数据库为关系型数据库。2.根据权利要求1所述的数据同步方法,其特征在于,所述将所述目标SQL语句写入至所述主数据库的日志表的步骤,包括:将所述目标SQL语句存放至第一缓存队列;从所述第一缓存队列中获取所述目标SQL语句写入至所述主数据库的日志表。3.根据权利要求1所述的数据同步方法,其特征在于,所述通过独立的同步服务线程,将所述主数据库的日志表数据同步至所有从数据库的步骤之前,还包括:将所述日志表数据按照数据类型进行分类;按照分类结果将不同类型所述日志表数据分别存放至不同第二缓存队列;所述通过独立的同步服务线程,将所述主数据库的日志表数据同步至所有从数据库的步骤,包括:通过独立的同步服务线程依次从不同所述第二缓存队列中相应调用所述主数据库的日志表数据,并同步至所有从数据库。4.根据权利要求3所述的数据同步方法,其特征在于,所述按照分类结果将不同类型所述日志表数据分别存放至不同第二缓存队列的步骤之后,还包括:获取所述业务处理事件对应的事件属性;基于事件属性确定相应的数据缓存时长;在接收到所述从数据库响应的数据同步完成指示时,启动系统时钟进行倒计时;在所述数据缓存时长到达时,将所述第二缓存队列中相应所述日志表数据进行删除。5.根据权利要求3所述的数据同步方法,其特征在于,所述通过独立的同步服务线程依次从不同所述第二缓存队列中相应调用所述主数据库的日志表数据的步骤,包括:根据所述数据类型确定所有所述日志表数据的数据同步优先级顺序;通过独立的同步服务线程,按照所述数据同步优先级顺序依次从不...
【专利技术属性】
技术研发人员:魏洪飞,林峰平,胡鹏飞,吴彬彬,
申请(专利权)人:深圳市康必达控制技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。