1.系统概述

  在一个高并发的事务型系统中,当写事务占的比例相对读事务相对较小时,可以借助DM7的主备系统备机可读的特点,将读事务转移到备机执行,减少单节点的并发压力,通过增加备机节点资源,提高系统的并发能力,增强系统性能。

  DM7提供一种独具创新的主备方案,即时归档主备系统,该系统可通过客户端来实现读写事务的自动分离,读事务在备机执行,写事务在主机执行,减轻主机的负载。备机可以配置多个,备机配置的越多,更能分担主机的压力,系统整体并发效率越高。

  2.读写分离流程

  DM7使用JDBC驱动与服务器结合的方式实现读写分离,大致流程如下:

  1) 用户登录后,客户端首先连接到主机,主机根据即时归档的配置,获取一个有效的备机信息,并返回给客户端。

  2) 客户端根据主机返回的备机IP和端口,建立与该备机的连接。

  3) 客户端执行语句时先在备机上执行,如果是只读事务,则只在备机上执行。

  4) 如果系统收到客户端试图在备机模式下修改数据等错误,则说明该事务是写事务,则转移到主机上执行。

  5) 一旦主机上执行的写事务提交,则下次继续从备机开始执行。

  6) 为了实现负载均衡,防止出现读事务过多占用备机资源、主机空闲的情况,客户端采用一定的算法进行均衡,主机上也会执行一部分读事务。


▲图1 读写分离流程

  3.即时归档

  DM7支持多种归档类型,本地归档、实时归档、同步归档、异步归档等类型。为了实现读写分离,新增一种即时归档(Timely archive)类型,以区别实时归档。

  实时归档是实时发送日志到备机,备机收到日志不会等待日志APPLY完成,立即响应给主机,主机收到响应后才刷本地日志。

  即时归档是一种比实时归档更加严格的远程归档方式,先刷本地日志,然后发送到备机,并且等待备机APPLY完成,之所以要这么做,原因有2个:

  首先,即时归档主备系统不会发生主备切换,在主机发送完日志到备机后刷日志前主机崩溃的情况下,不能让备机多一段日志,确保主机数据是完整且最新的。

  其次,需要保证主备机的数据一致性,避免从备机读的数据到主机进行更新时数据已经不一致了。

  在某些不需要保证严格一致性的情况下,可以通过dmarch.ini中的ARCH_WAIT_APPLY配置项,来配置不需要等待备机重做完日志的主备系统,类似于实时归档,可以进一步提高系统性能。

4.事务一致性

  若事务全为读操作,则全部在备机上执行。

  若事务全为写操作,则全部在主机上执行。

  若事务既有读又有写,备机会将写操作返回给主机执行,该事务中从写操作开始以后所有操作均在主机上执行,保证事务一致性。

  5.数据同步

  配置读写分离集群之前,必须先同步主备机数据,确保两者保持完全一致;主数据库可以是新初始化的数据,也可以是正在生产、使用中的数据。DM7提供了两种方式初始化同步主备机数据,数据文件拷贝以及备份还原方式。

  不能使用分别初始化库的方法,原因如下:

  1) 每个库都有一个永久魔数(permenant_magic),主备机传送日志时会判断这个值是否一样,确保来自同一个库,不同的库传送不了日志

  2) 由于dminit初始化数据库时,会生成随机密钥用于加密,每次生成的密钥都不相同,备机无法解析采用主机密钥加密的数据

  1. 数据文件拷贝

  如果搭建系统之前,数据库系统已经上线运行了,可通过拷贝数据文件的方式实现主备数据库的同步。具体步骤包括:

  1) 正常关闭数据库。

  2) 严格按照数据文件在主机上的分布,拷贝数据文件到备机的对应目录。

  3) 如果数据文件统一存放在一个目录下,则直接拷贝整个目录即可。

  2. 备份还原方式

  用户也可以通过脱机备份、脱机还原的方式同步主备机数据,更详细的说明可以参考备份恢复相关文档。具体步骤包括:

  1) 正常关闭数据库

  2) 进行脱机备份

  /dmbackup TYPE=FULL INI_PATH=/dm7data/DM1/DAMENG/dm.ini NAME=BACKUP_FILE

  3) 拷贝备份文件到备机

  4) 执行脱机数据库恢复

  /dmrestoreINI_PATH=/dm7data/DM1/DAMENG/dm.ini FILE=/dm7data/DM1/DB_DAMENG_20120910180136000741.bak

  六、 读写分离效果

  搭建1主2备系统,最优情况可提升吞吐量250%。


▲图2 读写分离测试效果

数据库高性能读写分离集群操作说明相关推荐

  1. 金仓数据库KingbaseES主备和读写分离集群使用手册(日常运维管理)

    对应10小节作的整改,包括但不限于一键启动的检查项目.对属于一键启动的检查项作个说明即可,比如 本检查属于一键启动默认检查项. 目录 7.1. 集群启停 ¶ 7.1.1. 一键启停方式 ¶ 7.1.2 ...

  2. Windows 2012 always on 读写分离集群搭建配置

    Windows 2012 always on 读写分离集群搭建配置. Always on简介 AlwaysOn 可用性组 (SQL Server) AlwaysOn 可用性组功能是一个提供替代数据库镜 ...

  3. Maxscale读写分离集群过渡PXC集群

    一.实验环境 第一次写博客,欢迎大家交流指正!!! 不喜勿喷!!! 操作系统 : Centos7.5虚拟机 数据库软件 : mysql-5.7.17 主机名 ip地址 角色 web33 192.168 ...

  4. Maxscale Keepalived MySQL实现高可用读写分离集群

    图片是模拟两个从节点down是否正常提供服务 访问http://ip:8989端口,登录名admin,密码mariadb 环境说明: IP地址 数据库服务 读写分离代理服务 负载均衡服务 虚拟IP 1 ...

  5. 达梦-主备与读写分离集群

    DM8-主备与读写分离集群 文章目录 DM8-主备与读写分离集群 1. 基本概念 1.1 DM集群 1.2 DM归档类型 2. 数据守护集群 2.1 概念 2.2 数据守护集群架构及原理 2.3 守护 ...

  6. MySQL8读写分离集群

    文章目录 前言 MySQL读写分离原理 搭建MySQL读写分离集群 MySQL8.0之前 MySQL8.0之后 后记 前言 上一期介绍并实现了MySQL的主从复制,由于主从复制架构仅仅能解决数据冗余备 ...

  7. 分布式.数据库架构(Mysql 就这么点东西,分库分表读写分离集群演化)

    缘起 讲个创业故事,某一天老总想做一个HR的Saas系统,其中员工信息表,但不同员工信息表有一部分是相同的,也有一部分不同的.我们就把不同的放在一个json字段(Mysql 8.0以后支持)中,Dao ...

  8. 三、kylin读写分离集群部署

    1.部署图 注意: 1.在kylin服务机器上hbase shell 作为存储Hbase集群的客户端,配置需要存储集群的客户端配置,cdh 的hbase配置路径在/etc/hbase/conf下,hb ...

  9. DM数据守护读写分离集群

    1 安装环境 操作系统:CentOS Linux release 7.9.2009 x64 硬盘空间:20G 软件版本:DM8企业版 1.1 服务器信息 IP地址 节点类型 操作系统 备注 192.1 ...

最新文章

  1. idea中配置xml不自动提示解决方案
  2. 全栈工程师?并没有什么卵用。每个人都应该去创业,不为别的,就为了健全你的人格(转)...
  3. 深度学习如何验证自己的想法
  4. php基础教程 第十一步 面向对象
  5. JS 停留几秒后返回上一页
  6. 基于JAVA+SpringBoot+Mybatis+MYSQL的在线论坛管理系统
  7. eclipse adt开发android ndk没有NDK选项问题的解决方案
  8. C#中如何生成矢量图
  9. 使用CSS实现透明边框的效果——兼容当前各种主流浏览器[xyytIT]
  10. hello语音为什连接不上服务器,Hello语音交友怎么玩_Hello语音交友打不开
  11. SLE12 Server 在线安装MySQL Server
  12. 目前常见的web网络安全漏洞
  13. JS 转换数字/日期大全
  14. 传小米要在A股港股同时上市;车好多完成8亿美元融资;三星市值蒸发近600亿美元丨价值早报
  15. 布衣联盟XP SP2之国兴奥运版
  16. Allegro Layout常用功能
  17. 2022人才市场洞察及薪酬指南
  18. JAVA的学习心路历程之JDK基础入门(上)
  19. 问题 D: 清点人数
  20. PlatoFarm推出正式版游戏经济模型的特点分析

热门文章

  1. TI-DM8127:MCFW、ISS中对sensor的驱动和控制
  2. 东北师大计算机考研报名人数,东北师范大学考研难吗?一般要什么水平才可以进入?...
  3. 华为鸿蒙手机官网价格表,曝下半年华为将推出两款鸿蒙手机:国内独享,价格良心...
  4. 迪杰斯特拉算法c++_《算法图解》学习记录7--迪杰斯特拉算法
  5. Java项目:人力管理系统(java+Gui+文档)
  6. 一台支持vlan管理的交换机_关于交换机的VLAN技术你了解多少?
  7. 【java】第一阶段基础知识整理
  8. Spark的安装和使用
  9. Hbase的过滤器查询
  10. 2021梧州一中高考成绩查询,2021年广西高考成绩查询网站查分网址:https://www.gxeea.cn/...