Moebius数据库多活集群

news2024/11/16 9:57:27

背景

数据库是信息化的基石,支撑着整个业务系统,发挥着非常重要的作用,被喻为“IT的心脏”。因此,让数据库安全、稳定、高效地运行已经成为IT管理者必须要面对的问题。数据库在底层架构层面需要满足以下几点建设要求:

安全和可靠不能因为服务器的软硬件故障导致数据丢失和业务中断;

容灾:多数据中心间的数据同步,某一个数据中心出现故障后,可以在另一个数据中心快速拉起业务;

读写分离(报表分离):把接口程序、报表程序、集成平台数据抽取、大数据运算等高消耗的查询语句分离到备机执行,从而避免对主服务器的性能消耗以及造成的阻塞和死锁;

负载均衡需要多台服务器同时负载并发请求,降低单台服务器的压力,提升系统整体性能;

弹性扩展通过增加服务器的方式应对数据量或者访问量增加带来的性能瓶颈。

Moebius(莫比斯)

Moebius数据库多活集群是格瑞趋势为SQL Server数据库研发的能够同时满足可用性、数据安全、容灾、读写分离、负载均衡的一站式多活集群。集群的名字取自Moebius环,寓意无限扩展。

      Moebius采用“share nothing”架构,每个节点的SQL Server服务独立安装,使用每个服务器自己存储介质内的数据库文件。不基于共享存储设备,也不基于磁盘镜像等功能,通过SQL Server的日志同步技术实现各节点中数据的一致性。在主节点写入数据时会产生日志,Moebius捕获并传输日志到其他节点,并通过REDO技术把日志转换成数据。因此每个节点的SQL Server服务都是启动的,数据都是“活”的。Moebius有实时和准实时两种同步方式,不同的节点可以使用不同的同步方式。

       Moebius 通过“网络心跳”及“仲裁机制”实现故障监控,当侦测到某节点发生故障并经过仲裁后,将此节点剥离出集群,如果故障节点是主节点,则会进行自动故障转移,重新选择健康的节点作为主节点。节点故障恢复后会自动从主节点同步差异数据,同步完成后加入到集群中。

       Moebius的调度引擎支持连接级和SQL语句级两种调度方式,通过规则的配置,在不改动或者少改动应用程序的前提下,透明的实现读写分离、负载均衡。
 

功能亮点

故障切换

  • 多节点仲裁、文件夹仲裁、共享盘仲裁三种仲裁方式确保故障切换稳定准确;

  • 每个节点都是活动的,故障切换时,辅助节点不需要经历挂载磁盘、启动实例、初始化数据库等步骤,在10秒内可完成切换;

  • 可以和告警系统对接,故障切换时及时通知系统运维人员。

数据同步

  • 充分利用SQL Server特性,只同步日志,不同步数据,同步数据量小,同步速度更快;

  • 实时和准实时两种同步方式,准实时同步方式支持恶劣网络条件下的断点续传;

  • 同步过程中数据压缩,带宽消耗更小;

  • 节点多活,可以随时在辅助节点上执行查询语句验证数据同步。

读写分离&负载均衡

  • 在集群中通过配置规则的方式实现读写分离和负载均衡,不用或者少量修改应用程序;

  • 规则支持正则表达式编程,可以从数据库名称、客户端主机名、登录名等多种维度进行配置;

  • 多台服务器负载均衡,同时负载并发请求,提升整体性能。

软件价值

高可用服务器出现故障时,快速切换到正常节点,确保系统持续运行;

高数据安全:有多份一致的数据,确保数据足够安全;

高用户体验:通过读写分离和负载均衡,提升系统性能,大幅减少阻塞、死锁等问题,给业务系统带来高效的用户体验;

高扩展性:当现有服务器资源不够时,可根据需要随时添加服务器节点,增加处理能力;

低系统总体拥有成本TCO

    1. 集群不强制需要存储设备,可以用性价比更高的SSD盘,节省存储设备的开销;

    2. 可以充分利用原有服务器组建集群,避免资源浪费;

    3. 可以用多个廉价PC服务器代替单一的昂贵服务器,节省硬件成本;

    4. 不需要再购买双机、备份、容灾等其它软件。

常见问题

虚拟化\超融合平台下还有做Moebius的必要吗?

虚拟化或者超融合虽然能够保障可用性和数据安全,但本质上提供的是一个单数据库服务器。如果有在SQL Server层面的容灾或者读写分离、负载均衡的需求,就是有必要的。

Moebius兼容虚拟化\超融合平台吗?

兼容,Moebius的节点可以是物理机,也可以是虚拟机,或者是两者的组合。

做了Moebius后还有必要做存储双活吗?

如果存储设备只是为了数据库服务器提供的,那么是没有必要再做双活的,因为Moebius的数据就是多份的,既能保障数据安全,又可以随时验证数据的一致性。可以让每个Moebius节点各接一个独立的存储设备,这样既节省了双活模块的成本,又提升了磁盘空间的利用率。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/814948.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

虚拟机安装的问题

CentOS7报错: Host SMBus Controller not enabled! 1.在上图界面中直接输入root用户的密码登录到系统 2.输入命令,lsmod | grep i2c 3.输入命令,vi /etc/modprobe.d/blacklist.conf 创建黑名单,添加以下内容: blacklist i2c_piix…

851. 喧闹和富有;1765. 地图中的最高点;1171. 从链表中删去总和值为零的连续节点

851. 喧闹和富有 核心思想:这题的题意是找到比b有钱的人且这个人是最安静的人。简单的想法就是找出统计出所有b的有钱人,然后给有钱人的安静值排个序即可。给安静值排序这个我们可以进行优化一下,按照常规思路,我们统计出a的儿子…

Day02-作业(JavaScriptVue)

作业1&#xff1a;实现5秒之后&#xff0c;当前页面直接跳转到官网首页&#xff08;首页地址&#xff1a;https://www.itcast.cn&#xff09; 提示&#xff1a; 5秒之后&#xff0c;才触发某一个动作 素材&#xff1a; <!DOCTYPE html> <html lang"en"&…

【二叉树进阶】搜索二叉树的性能分析及其应用

文章目录 前言1. 二叉搜索树的性能分析2. 二叉搜索树的应用2.1 K模型2.2 KV模型英汉互译统计次数 3. 源码展示3.1 KV结构改造3.2 测试 前言 上一篇文章我们学习了搜索二叉树的实现&#xff0c;这篇文章我们来对搜索二叉树进行一个性能分析&#xff0c;并来讲解一下它的应用。 1…

OpenCV4.3 Java 编程入门:透明度与抠图

1. 基础知识 JPG 格式图片有损压缩和不支持半透明&#xff0c;如果想在图片上添加透明通道&#xff0c;一定不要用 JPG 格式的图片&#xff1b;PNG&#xff1a;既支持3通道RGB图像&#xff0c;也支持4通道RGBA图像&#xff08;红色、绿色、蓝色和透明度&#xff09;&#xff1…

一篇文章帮你弄懂邻接矩阵,邻接表和链式前向星的区别

前言&#xff1a; 在学C的时候&#xff0c;面对各种各样的存图方式&#xff0c;脑子都大了不少&#xff0c;各种算法还在向我冲来&#xff0c;结果一个邻接矩阵/邻接表/链表轻松给了我一下暴击就直接让我KO了&#xff0c;趁着脑子还算清楚&#xff0c;详细的介绍下这三种存图方…

探索工程机械远程控制新纪元:Intewell-Hyper II震撼发布!

在当前的工程技术领域&#xff0c;远程控制技术以其卓越的效率和方便性&#xff0c;正受到越来越多的关注和运用。而在这个过程中&#xff0c;某机械集团以Intewell-HyperII操作系统为基础&#xff0c;打造出了具有前瞻性的工程机械远程控制器&#xff0c;为行业的发展提供了新…

树莓派-搭建wireguard服务

一、简介 官网&#xff1a;https://www.wireguard.com/ WireGuard is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headac…

SpringBoot原理分析 | 安全框架:Shiro

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; Shiro Shiro是一个安全框架&#xff0c;用于认证、授权和管理应用程序的安全性。它提供了一组易于使用的API和工具&#xff0c;可以帮助您轻松地添加安全性到您的应用…

apple pencil到底值不值得买?好用的iPad电容笔

随着ipad平板型号版本的不断更新&#xff0c;其的功能越来越多&#xff0c;现在它的性能已经可以和笔记本电脑相媲美了。而现在&#xff0c;随着技术的进步&#xff0c;IPAD已经不再是单纯的娱乐&#xff0c;而是一种功能强大的学习、绘画、工作等等。要增加生产效率&#xff0…

按键消抖(有/无状态机)

一&#xff0c;理论概念 按键抖动 按键抖动&#xff1a;按键抖动通常的按键所用开关为机械弹性开关&#xff0c;当机械触点断开、闭合时&#xff0c;由于机械触点的弹性作用&#xff0c;一个按键开关在闭合时不会马上稳定地接通&#xff0c;在断开时也不会一下子断开。因而在闭…

<MyBatis>MyBatis把空字符串转换成了0的问题处理方案

先看问题: Postman入参: MyBatis采用map循环插入: // Mapper接口层void addPar(Param(value "question") Map<String, Object> paramMap);<!-- 新增&#xff1a;参数 --><insert id"addPar" parameterType"map">INSERT IGNO…

高忆管理:集合竞价可以卖股票吗?

集合竞价是证券买卖所开盘前的一种买卖方式&#xff0c;其意图是为了在买卖所开盘之前构成有用的商场价格。因为商场处于初始状况&#xff0c;买卖量较小&#xff0c;因而集合竞价价格或许与买卖日中的实践买卖价格有所不同。那么&#xff0c;集合竞价是否能够卖股票呢&#xf…

Python3,1行代码,批量把图片转换成PDF文档,女神终于同意跟我吃夜宵了。

批量图片转换成PDF文档 1、引言2、代码示例2.1 安装2.2 单张转换2.3 批量转换 3、总结 1、引言 小屌丝&#xff1a;鱼哥&#xff0c; 求助&#xff0c;求助。 小鱼&#xff1a;有啥事&#xff0c;这大惊小怪的。 小屌丝&#xff1a;我女神跟我说&#xff0c; 如果我把她的照片…

Spark 5:Spark Core 内核调度

DAG Spark的核心是根据RDD来实现的&#xff0c;Spark Scheduler则为Spark核心实现的重要一环&#xff0c;其作用就是任务调度。Spark的任务调度就是如何组织任务去处理RDD中每个分区的数据&#xff0c;根据RDD的依赖关系构建DAG&#xff0c;基于DAG划分Stage&#xff0c;将每个…

跨境电商ERP源码选型指南,如何找到最适合你的?

在跨境电商行业&#xff0c;一个高效的ERP系统是保证业务顺利进行和管理的关键。选择适合自己的跨境电商ERP源码至关重要。本指南将帮助你了解如何找到最适合你的跨境电商ERP源码。 跨境电商ERP源码的重要性 跨境电商ERP源码在现代电商营运中起着至关重要的作用。它提供了一套…

音频开发-小程序和H5

微信录音 1、引入sdk 2、录音操作 浏览器录音 参考文献&#xff1a;前端H5实现调用麦克风&#xff0c;录音功能_h5 录音_Darker丨峰神的博客-CSDN博客 function record() { window.navigator.mediaDevices.getUserMedia({ audio: { sampleRate: 44100, // 采样率 channelCount…

游戏APP开发:创新设计的秘诀

在游戏 APP开发中&#xff0c;创新设计是游戏开发公司的一大追求&#xff0c;为了可以为用户带来更好的游戏体验&#xff0c;这就需要对游戏 APP开发进行创新设计。那么&#xff0c;游戏 APP开发中的创新设计是什么呢&#xff1f;接下来&#xff0c;我们就一起来看看吧。 想要…

一起学算法(递推篇)

前言&#xff1a;递推最通俗的理解就是数列&#xff0c;递推和数列的关系就好比算法和数据结构的关系&#xff0c;数列有点像数据结构中的顺序表&#xff0c;而递推就是一个循环或者迭代的过程的枚举过程 1.斐波那契数列 斐波那契数形成的序列称为斐波那契数列&#xff0c;该…

【Java|golang】143. 重排链表---快慢指针

给定一个单链表 L 的头节点 head &#xff0c;单链表 L 表示为&#xff1a; L0 → L1 → … → Ln - 1 → Ln 请将其重新排列后变为&#xff1a; L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值&#xff0c;而是需要实际的进行节点交换。 …