说明:收录各省市地方标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210106968.7 (22)申请日 2022.01.28 (71)申请人 苏州浪潮智能科技有限公司 地址 215000 江苏省苏州市吴中经济开发 区郭巷街道官浦路1号9幢 (72)发明人 李世刚  (74)专利代理 机构 北京连和连知识产权代理有 限公司 1 1278 专利代理师 朝鲁蒙 陈黎明 (51)Int.Cl. G06F 16/18(2019.01) G06F 16/178(2019.01) G06F 16/172(2019.01) G06F 16/17(2019.01) G06F 16/23(2019.01)G06F 16/25(2019.01) (54)发明名称 实现数据库和缓存一致性的方法、 系统、 设 备和存储介质 (57)摘要 本发明提供一种实现数据库和缓存一致性 的方法、 系统、 设备和存储介质, 方法包括: 配置 日志文件同步工具; 配置所述日志文件同步工具 监听的数据库的用户名和密码以建立所述日志 文件同步工具与所述数据库的连接; 配置所述日 志文件同步工具对接的Redis集群的地址和端口 号以建立所述日志文件同步工 具与所述Redi s集 群的连接; 以及将所述数据库中的更新内容映射 到对应要更新的缓存数据上。 本发 明可以在不侵 入业务系统代码的情况下对数据库日志文件的 变化进行监听, 同时也可以在数据库内部发生节 点故障切换的情况下进行监听, 保证监听的连续 性。 权利要求书1页 说明书6页 附图3页 CN 114528266 A 2022.05.24 CN 114528266 A 1.一种实现数据库和缓存一 致性的方法, 其特 征在于, 包括如下步骤: 配置日志文件同步工具; 配置所述日志文件同步工具监听的数据库的用户名和密码以建立所述日志文件同步 工具与所述数据库的连接; 配置所述日志文件同步工具对接的Re dis集群的地址和端口号以建立所述日志文件同 步工具与所述Redis集群的连接; 以及 将所述数据库中的更新内容映射到对应要更新的缓存数据上。 2.根据权利要求1所述的方法, 其特 征在于, 所述配置日志文件同步工具包括: 对指定数据库的日志文件进行监听, 将监听到的所述日志文件的变化内容进行解析。 3.根据权利要求2所述的方法, 其特 征在于, 所述配置日志文件同步工具包括: 响应于所述日志文件的事 件类型为预设类型, 获取 所述日志文件的全局事务标识。 4.根据权利要求1所述的方法, 其特 征在于, 所述方法还 包括: 配置所述数据库集群对外提供服 务的虚拟IP和端口号以实现日志文件的监听和输出。 5.一种实现数据库和缓存一 致性的系统, 其特 征在于, 包括: 第一配置模块, 配置用于配置日志文件同步工具; 第二配置模块, 配置用于配置所述日志文件同步工具监 听的数据库的用户名和密码以 建立所述日志文件同步工具与所述数据库的连接; 第三配置模块, 配置用于配置所述日志文件同步工具对接的Redis集群的地址和端口 号以建立所述日志文件同步工具与所述Redis集群的连接; 以及 执行模块, 配置用于将所述数据库中的更新内容映射到对应要更新的缓存数据上。 6.根据权利要求5所述的系统, 其特 征在于, 所述第一配置模块配置用于: 对指定数据库的日志文件进行监听, 将监听到的所述日志文件的变化内容进行解析。 7.根据权利要求6所述的系统, 其特 征在于, 所述第一配置模块配置用于: 响应于所述日志文件的事 件类型为预设类型, 获取 所述日志文件的全局事务标识。 8.根据权利要求5所述的系统, 其特 征在于, 所述系统还 包括: 第四配置模块, 配置用于配置所述数据库集群对外提供服务的虚拟IP和端口号以实现 日志文件的监听和输出。 9.一种计算机设备, 其特 征在于, 包括: 至少一个处 理器; 以及 存储器, 所述存储器存储有可在所述处理器上运行的计算机指令, 所述指令由所述处 理器执行时实现权利要求1 ‑4任意一项所述方法的步骤。 10.一种计算机可读存储介质, 所述计算机可读存储介质存储有计算机程序, 其特征在 于, 所述计算机程序被处 理器执行时实现权利要求1 ‑4任意一项所述方法的步骤。权 利 要 求 书 1/1 页 2 CN 114528266 A 2实现数据库和缓存一致性的方 法、 系统、 设 备和存储介质 技术领域 [0001]本发明涉及人工智能训练领域, 更具体地, 特别是指一种 实现数据库和缓存一致 性的方法、 系统、 设备和存 储介质。 背景技术 [0002]人工智能训练平台在设计开发过程中, 考虑到在高并发环境下减轻数据库的压 力, 引入了分布式缓存, 用于在大量的读写操作涌向数据库时, 在数据库之前加一层缓存, 从而提高系统的响应速度, 并降低数据库的压力。 但由于缓存的引入, 同时也引入了系统设 计的复杂性, 首先要考虑的就是如何保证数据库和缓存的数据一致性的问题。 在分布式的 情况下, 无论是先更新数据库还是先更新缓存, 都会由于存在时间间隙, 在高并发的情况 下, 都有可能造成数据库和缓存数据不一致的情况。 并且在MariaDB(MariaDB是MySQL的一 个分支)进 行高可用部署的环 境中, 更加增加了系统的复杂性, 给实现数据库和缓存的一致 性增加了难度。 [0003]对于实现数据库和缓存的一致性, 通过监听binlog(二进制日志文件, 用于记录用 户对数据库更新的SQL语句信息)获取数据库的变化, 从而对缓存数据完成更新, 是一种常 见的解决方案。 对于通过监听binlog的变化更新缓存的方案, 使用较多的是开源的canal, 但是canal采用了client ‑server(客户端 ‑服务端)的模式, 部署比较复杂, 且需要额外资源 消耗和维护开销, 并且canal是完整独立的包, 无法直接用springboot集 成使用。 另外, 通过 监听binlog变化更新 缓存时, 一般都是采用直接监听binlog的变化内容 从而进行缓存更新 的, 这样在数据库采用集群部署时, 如果涉及到节点间的故障切换, 会产生数据不一致的情 况。 发明内容 [0004]有鉴于此, 本发明实施例的目的在于提出一种实现数据库和缓存一致性的方法、 系统、 计算机设备及计算机可读存储介质, 本发明在mariadb高可用部署模式下, 通过监听 虚拟IP所在节点的mariadb数据库的binlog变化并提取其中的GTID(Global  Transaction   Identifier全局事务标识)和变化的内容, 以实现缓存数据更新。 [0005]基于上述目的, 本发明实施例的一方面提供了一种实现数据库和缓存一致性的方 法, 包括如下步骤: 配置日志文件同步工具; 配置所述日志文件同步工具监听的数据库的用 户名和密码以建立所述日志文件同步工具与所述数据库的连接; 配置所述日志文件同步工 具对接的Redis集群的地址和端口号以建立所述日志文件同步工具与所述Redis集群的连 接; 以及将所述数据库中的更新内容映射到对应要更新的缓存数据上。 [0006]在一些实施方式中, 所述配置日志文件同步工具包括: 对指定数据库的日志文件 进行监听, 将监听到的所述日志文件的变化内容进行解析。 [0007]在一些实施方式中, 所述配置日志文件同步工具包括: 响应于所述日志文件的事 件类型为预设类型, 获取 所述日志文件的全局事务标识。说 明 书 1/6 页 3 CN 114528266 A 3

.PDF文档 专利 实现数据库和缓存一致性的方法、系统、设备和存储介质

文档预览
中文文档 11 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共11页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 实现数据库和缓存一致性的方法、系统、设备和存储介质 第 1 页 专利 实现数据库和缓存一致性的方法、系统、设备和存储介质 第 2 页 专利 实现数据库和缓存一致性的方法、系统、设备和存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 11:19:24上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。