The invention discloses a method for synchronizing log data, which includes: in the process of synchronizing log data, each log data is collected, the GTID of the log data is acquired, and the AID of the log data is generated; the log data, the GTID and the AID are synchronously written to the cache database Redis and the distributed publishing and subscribing message system Kafka; When the current acquisition node is abnormal, the target acquisition node of the log data is determined, and the target GTID and target AID of the log data acquisition time nearest to the current time point are acquired from the Redis. Through the target acquisition node, the log data is continuously collected based on the target GTID and the target AID. The invention also discloses a log data synchronization device, a device and a computer readable storage medium. The invention can ensure the continuity of log data.
【技术实现步骤摘要】
日志数据同步方法、装置、设备及计算机可读存储介质
本专利技术涉及数据采集的
,尤其涉及一种日志数据同步方法、装置、设备及计算机可读存储介质。
技术介绍
数据库在运行过程中,需要采集数据库的日志数据,目前数据库的日志数据的采集方式包括基于Maxwell工具的日志数据采集和基于Canal工具的日志数据采集,上述两种方式均是通过伪装成MySQLServer的从库实现日志数据的采集。然而,在日志数据的采集过程中,当采集的工具出现异常时,容易出现采集到的日志数据存在不连续的问题,因此,如何保证日志数据的连续性是目前亟待解决的问题。
技术实现思路
本专利技术的主要目的在于提供一种日志数据同步方法、装置、设备及计算机可读存储介质,旨在保证日志数据的连续性。为实现上述目的,本专利技术提供一种日志数据同步方法,所述日志数据同步方法包括以下步骤:在日志数据的同步过程中,每采集到一条日志数据,则获取所述日志数据的全局事务标识符GTID,并生成所述日志数据的原子标识符AID;将所述日志数据、所述GTID和所述AID同步写入至缓存数据库Redis和分布式发布订阅消息系统Kafka;当监测到日志数据的当前采集节点出现异常时,确定日志数据的目标采集节点,并从所述Redis中获取采集时间距离当前时间点最近的日志数据的目标GTID和目标AID;通过所述目标采集节点,基于所述目标GTID和所述目标AID继续采集日志数据。进一步地,生成所述日志数据的原子标识符AID的步骤包括:每采集到一条日志数据,则获取上一条日志数据的AID,并在所述AID中基础上自增1,得到所述日志数据的AID。进一步地 ...
【技术保护点】
1.一种日志数据同步方法,其特征在于,所述日志数据同步方法包括以下步骤:在日志数据的同步过程中,每采集到一条日志数据,则获取所述日志数据的全局事务标识符GTID,并生成所述日志数据的原子标识符AID;将所述日志数据、所述GTID和所述AID同步写入至缓存数据库Redis和分布式发布订阅消息系统Kafka;当监测到日志数据的当前采集节点出现异常时,确定日志数据的目标采集节点,并从所述Redis中获取采集时间距离当前时间点最近的日志数据的目标GTID和目标AID;通过所述目标采集节点,基于所述目标GTID和所述目标AID继续采集日志数据。
【技术特征摘要】
1.一种日志数据同步方法,其特征在于,所述日志数据同步方法包括以下步骤:在日志数据的同步过程中,每采集到一条日志数据,则获取所述日志数据的全局事务标识符GTID,并生成所述日志数据的原子标识符AID;将所述日志数据、所述GTID和所述AID同步写入至缓存数据库Redis和分布式发布订阅消息系统Kafka;当监测到日志数据的当前采集节点出现异常时,确定日志数据的目标采集节点,并从所述Redis中获取采集时间距离当前时间点最近的日志数据的目标GTID和目标AID;通过所述目标采集节点,基于所述目标GTID和所述目标AID继续采集日志数据。2.如权利要求1所述的日志数据同步方法,其特征在于,生成所述日志数据的原子标识符AID的步骤包括:每采集到一条日志数据,则获取上一条日志数据的AID,并在所述AID中基础上自增1,得到所述日志数据的AID。3.如权利要求1所述的日志数据同步方法,其特征在于,所述当监测到日志数据的当前采集节点出现异常时,确定日志数据的目标采集节点的步骤包括:当监测到日志数据的当前采集节点出现异常时,获取日志数据的各采集节点,并获取各采集节点各自对应注册的子节点的注册顺序;依据各采集节点各自对应注册的子节点的注册顺序,确定日志数据的目标采集节点。4.如权利要求1所述的日志数据同步方法,其特征在于,所述日志数据同步方法还包括:在日志数据的同步过程中,定时监测当前连接的数据库是否为主数据库;若监测到当前连接的数据库为主数据库,则断开与所述主数据库的连接,并获取备数据库地址,且依据所述备数据库地址连接对应的备数据库。5.如权利要求4所述的日志数据同步方法,其特征在于,所述日志数据同步方法还包括:在日志数据的同步过程中,定时监测当前连接的备数据库是否出现异常;若当前连接的备数据库出现异常,则获取新的备数据库地址,并依据新的备数据库地址连接对应的备数据库。6.如权利要求1-5中任一项所述的日志数据同步方法,其特征在于,所述日志数据同步方法还包括:在日志数据的同步过程中,每采集到一条日志数据,则获取所述日志数据的第一GTID,并从所述Redis中获取上一条日志数据的第二GTID;判断所述第一GTID与所述第二GTID是否相邻...
【专利技术属性】
技术研发人员:邓康华,
申请(专利权)人:深圳前海微众银行股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。