YashanDB主备高可用

简介: YashanDB主备高可用

主备复制是数据库最主要的高可用手段,通过将主库上的数据实时复制到备库来实现。主库是执行业务的数据库实例,备库是复制主库数据的数据库实例。当主库发生故障时,业务可以转移到备库上继续执行,降低故障对业务的影响,提高数据库的可用性。

YashanDB支持主备模式(一主多备)和级联备模式(不限层级)的高可用部署架构。

主备实例部署在不同的服务器上,两台服务器一般应连接到同一交换机,确保网络低时延,并应考虑交换机的冗余配置,保证高可用避免单点故障。

级联备为异步备库,从备库接收日志,减少主库上的带宽负载,通常用于异地容灾中。

以下图为例:

主库

当前提供在线数据库服务,读写模式。

分布式主备高可用部署中,每个MN Group和DN Group组内包含一个主库。

共享集群主备高可用部署中,主库被扩展为主集群的概念,主集群中多实例同时提供在线数据库服务,均为读写模式。

备库

从主库接收日志并回放,只读模式,主库故障时从备库状态切换为主库状态,一个主库可以有多个备库。

分布式主备高可用部署中,每个MN Group和DN Group组内包含一个或多个备库。

共享集群主备高可用部署中,备库被扩展为备集群的概念,但只需要备集群中的1号实例进行日志接收和回放。

级联备

备库的备库,从备库接收日志并回放,一个备库可以有多个和多层级联备。当上级备库升为主库后,级联备转为普通备库;当主库变成备库后,它的备库变成级联备。

分布式和共享集群主备部署中无级联备。

主备复制链路
主备复制中,通过主库发送redo日志,备库接收日志并回放,以实现备库和主库的在线同步。YashanDB采用环形Log Cache缓存redo日志,同步模式下日志发送和备库回放优先从缓存读取数据,提高速度。

日志回放是指备库通过重演主库发送过来的redo日志来恢复数据页面,以达到和主库的及时同步。当在Log Cache和redo文件中均未找到需要的数据时,将启动线程同步主库的归档日志文件到备库并从中查找所需数据,最大程度保障主备库的数据一致性。

主备库复制链路:

主备集群复制链路:

主备切换
YashanDB支持手动切换主备库和特定场景下无需外部干预的自动选主。

手动切换

支持Switchover(主备库同步正常的情况)和Failover(主库数据库损坏,或者由于系统损坏导致主库不可用的情况)两种模式的手动切换,更多详情请查阅主备切换。

自动选主

根据不同的部署形态,YashanDB实现了不同机制的自动选主,包括主备自动选主和yasom仲裁选主,降低运维复杂度。当主库发生异常不能对外服务时,系统根据相应的机制在备库中选出主库并自动执行主备切换,更多详情请查阅自动选主。

相关文章
|
存储 缓存 安全
C语言中的内存管理与优化技巧
C语言中的内存管理与优化技巧
|
移动开发 安全 JavaScript
uniapp打包成H5部署到服务器教程
uniapp打包成H5部署到服务器教程
3506 0
|
SQL 存储 关系型数据库
第二篇:关系型数据库的核心概念与 SQL 基础
本篇内容深入浅出地讲解了关系型数据库的核心概念与SQL基础,适合有一定计算机基础的学习者。文章涵盖数据库的基本操作(CRUD)、数据类型、表的创建与管理等内容,并通过实例解析SELECT、INSERT、UPDATE、DELETE等语句的用法。此外,还推荐了多种学习资源与实践建议,帮助读者巩固知识。学完后,你将掌握基础数据库操作,为后续高级学习铺平道路。
870 1
|
7月前
|
存储 人工智能 关系型数据库
传统数据库与向量数据库:一个管“是什么”,一个管“像什么”
向量数据库是AI时代的语义检索引擎,将文本、图片等非结构化数据转化为“语义向量”,支持基于相似性的毫秒级搜索。它不替代MySQL等传统数据库,而是作为大模型的“海马体”,赋能RAG、智能问答与多模态应用,实现从“关键词匹配”到“理解含义”的跃迁。(239字)
1125 7
|
11月前
|
人工智能 算法 安全
如何构建Tb级DDoS攻击防御体系实现业务零中断?
本文基于NIST与MITRE框架,详解构建Tb级DDoS防御体系的六大核心技术模块,涵盖分布式清洗、智能调度、全栈高可用架构等,助力企业实现业务零中断。
730 0
|
JSON 自然语言处理 Nacos
垂直和领域 Agent 的护城河:上下文工程
上下文工程是智能体应对复杂任务的核心能力,通过对项目状态、需求文档、团队沟通等多维度信息的结构化整合,提升大模型输出的准确性与适配性。它超越传统提示词工程,构建系统化的信息输入框架,使智能体更贴近人类思维逻辑,成为实现高质量人机协作的关键方法。
948 0
|
机器学习/深度学习 人工智能 API
基于昇腾适配Meta AI在Science正刊发表的蛋白质结构预测模型ESMFold
ESMFold是由Meta AI团队开发的一种基于深度学习的高效蛋白质结构预测模型,其核心目标是利用大规模蛋白质语言模型(ESM)直接从氨基酸序列快速推断蛋白质的三维结构。ESMFold通过预训练的语言模型捕捉序列中的进化与结构关联性,结合几何优化模块生成高精度原子坐标,显著降低了传统方法对多重序列比对(MSA)和模板依赖的计算成本。该模型在蛋白质从头预测(de novo prediction)、功能位点解析、突变效应模拟等领域具有重要价值,以高效的推理性能,推动结构预测技术的普惠化应用。
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch 中的动态图与静态图:理解它们的区别及其应用场景
【8月更文第29天】深度学习框架中的计算图是构建和训练神经网络的基础。PyTorch 支持两种类型的计算图:动态图和静态图。本文旨在阐述这两种计算图的区别、各自的优缺点以及它们在不同场景下的应用。
4283 0
|
JSON Go 数据格式
Go 读取 YAML 配置文件的两种方式
本文介绍了读取 YAML 配置文件的两种方式,第一种是通过 yaml.v3 包,第二种是通过 viper 包。如果是在项目里解析配置文件,推荐使用 viper 包,它支持解析多种格式的配置文件,监听配置文件的更新,修改配置文件等。
2231 1
Go 读取 YAML 配置文件的两种方式
|
SQL Java 数据库连接