全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211245241.3 (22)申请日 2022.10.12 (71)申请人 中国工商银行股份有限公司 地址 100140 北京市西城区复兴门内大街 55号 (72)发明人 李奇伟 董勇明 朱小珍 刘梦坷  (74)专利代理 机构 北京三友知识产权代理有限 公司 11127 专利代理师 任默闻 (51)Int.Cl. G06F 16/27(2019.01) G06F 16/245(2019.01) G06F 21/62(2013.01) G06F 11/34(2006.01) (54)发明名称 一种基于数据库双集群的读写分离方法及 装置 (57)摘要 本发明提供了一种基于数据库双集群的读 写分离方法及装置, 方法包括: 将查询交易调度 至读集群并将查询交易插入应用日志; 在将查询 交易事务提交 时, 同步写本地和同城另外一个站 点的数据库系统日志, 实现同城同步; 相互复制 读集群和写集群的更新记录, 保证读集群和写集 群中的数据一致。 本申请通过对用户权 限控制, 实现对读集群的表和数据保护; 通过引入序号发 生器, 对读集群取单号, 读写 集群取双号, 防止两 边记录键值重复; 通过数据库系统日志同城双集 群同步写, 保证两个集群中任意一个集群故障 下, 更新数据不丢失; 通过数据库加条件的逻辑 复制, 保证数据最终一致, 在 主库运行批量报表, 实现完整的审计和报表 功能。 权利要求书1页 说明书7页 附图4页 CN 115544162 A 2022.12.30 CN 115544162 A 1.一种基于数据库双集群的读写分离方法, 其特 征在于, 包括: 将查询交易调度至读集群并将所述 查询交易插 入应用日志; 在将所述查询交易事务提交时, 同步写本地和同城另 外一个站点的数据库系统日志, 实现同城同步; 相互复制读集群和写集群的更新记录, 保证读集群和写集群中的数据一 致。 2.根据权利要求1所述的基于数据库双集群的读写分离方法, 其特 征在于, 还 包括: 设置读集群的应用用户的权限, 使应用用户仅有插入应用日志表的权限和读取普通表 的权限。 3.根据权利要求1所述的基于数据库双集群的读写分离方法, 其特征在于, 在查询交易 插入应用日志之前, 还 包括: 通过序号发生器为读集群和写集群分别生成序号; 将生成的序号作为主键中的一列分别插 入读集群和写集群的应用日志 表中。 4.根据权利要求3所述的基于数据库双集群的读写分离方法, 其特征在于, 所述通过序 号发生器为读集群和写集群分别生成序号, 包括: 通过序号发生器为读集群生成奇数的序号; 通过序号发生器为写集群生成偶数的序号。 5.根据权利要求4所述的基于数据库双集群的读写分离方法, 其特征在于, 所述相互复 制读集群和写集群的更新记录, 包括: 复制读集群的更新记录并存 入写集群中; 复制写集群的更新记录并存 入读集群中。 6.根据权利要求1所述的基于数据库双集群的读写分离方法, 其特征在于, 所述保证读 集群和写集群中的数据一 致, 包括: 读取包含查询交易的应用日志 表在内的所有表 记录; 对所述记录进行核对保证读集群和写集群中的数据一 致。 7.根据权利要求1所述的基于数据库双集群的读写分离方法, 其特 征在于, 还 包括: 根据所述更新记录生成表 记录更新前后的镜像, 并将镜像保存。 8.一种基于数据库双集群的读写分离装置, 其特 征在于, 包括: 调度单元, 用于将查询交易调度至读集群并将所述 查询交易插 入应用日志; 同步单元, 用于在将所述查询交易事务提交时, 同步写本地和同城另 外一个站点的数 据库系统日志, 实现同城同步; 更新单元, 用于相互复制读集群和写集群的更新记录, 保证读集群和写集群中的数据 一致。 9.一种电子设备, 包括存储器、 处理器及存储在存储器上并可在处理器上运行的计算 机程序, 其特征在于, 所述处理器执行所述程序时实现权利要求1至7任一项所述的基于数 据库双集群的读写分离方法的步骤。 10.一种计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 该计算机程序被 处理器执行时实现权利要求1至7任一项所述的基于数据库双集群的读写分离方法的步骤。权 利 要 求 书 1/1 页 2 CN 115544162 A 2一种基于数据库双集群的读写分离方 法及装置 技术领域 [0001]本申请属于数据库读写分离技术领域, 具体地讲, 涉及一种基于数据库双集群的 读写分离方法及装置 。 背景技术 [0002]数据库双集群为在A/B站点, 各有一个集群, 每个集群内部有多个主备节点, 以保 障自身的高可用性。 集群间通过日志强同步和逻辑复制, 实现数据的最 终一致。 因为两个集 群可能发生集群间的切换, 所以为对等部署, 即所有组件在两个站点都部署, 为了方便理 解, 将B站 点集群定位为数据库读集群, A站 点为数据库写集群。 因为银行业核心 业务对数据 一致性要求高, 所以读写分离需要以交易为维度进行判断和处理。 当前查询交易普遍使用 的是读集群(B站点), 写集群(A 站点)承担含有更新语句的所有交易。 [0003]对于银行的业务, 有上级监管需求, 即便是查询交易也要记录应用日志, 用于日后 审计、 服务结算以及报表统计等, 现有的读写分离方案只能承接完全只 读交易, 对于占银行 业三分之二的查询交易, 由于无法登记应用日志表, 所以无法分离至读库, 无法实现有效降 低主库负载的目的。 发明内容 [0004]本申请提供了一种基于数据库双集群的读写分离方法及装置, 以至少解决现有的 读写分离方案只能承接完全只读交易, 对于占银行三分之二的查询交易由于无法登记应用 日志表所以无法分离 至读库的问题。 [0005]根据本申请的一个方面, 提供了一种基于数据库双集群的读写分离方法, 包括: [0006]将查询交易调度至读集群并将查询交易插 入应用日志; [0007]在将查询交易事务提交时, 同步写本地和同城另外一个站点的数据库系统日志, 实现同城同步; [0008]相互复制读集群和写集群的更新记录, 保证读集群和写集群中的数据一 致。 [0009]在一实施例中, 基于数据库双集群的读写分离方法还 包括: [0010]设置读集群的应用用户的权限, 使应用用户仅 有插入应用日志表的权限和读取普 通表的权限。 [0011]在一实施例中, 在查询交易插 入应用日志之前, 还 包括: [0012]通过序号发生器为读集群和写集群分别生成序号; [0013]将生成的序号作为主键中的一列分别插 入读集群和写集群的应用日志 表中。 [0014]在一实施例中, 通过序号发生器为读集群和写集群分别生成序号, 包括: [0015]通过序号发生器为读集群生成奇数的序号; [0016]通过序号发生器为写集群生成偶数的序号。 [0017]在一实施例中, 相互复制读集群和写集群的更新记录, 包括: [0018]复制读集群的更新记录并存 入写集群中;说 明 书 1/7 页 3 CN 115544162 A 3

PDF文档 专利 一种基于数据库双集群的读写分离方法及装置

文档预览
中文文档 13 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于数据库双集群的读写分离方法及装置 第 1 页 专利 一种基于数据库双集群的读写分离方法及装置 第 2 页 专利 一种基于数据库双集群的读写分离方法及装置 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-18 22:34:18上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。