《阿里云认证的解析与实战-关系型数据库ACP认证》——RDS关系型数据库的解析与实践(上)—— 二、 RDS的架构原理

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云解析 DNS,旗舰版 1个月
简介: 《阿里云认证的解析与实战-关系型数据库ACP认证》——RDS关系型数据库的解析与实践(上)—— 二、 RDS的架构原理

1. RDS架构解析

 

1) RDS整体访问架构

 

image.png

 

正常情况下,业务部署在ECS上,通过URL访问会解析到负载均衡SLB上转发到主实例;如果主实例出现故障,可以切换到备实例

如果开通数据库代理,会到主实例中来。数据库代理有读写分离的地址,ECS换了URL,用此URL到负载均衡SLB,再到数据库代理,判断读写流量的去向

备份以及日志备份,存在OSS中。基于备份一键生成一个新的RDS实例时,数据恢复的过程就是备份,基于备份生成新实例。

 

2) RDS底层系统架构

 image.png

 

用户访问,解析DNS到防火墙,转发到客户端。

控制实例有:HA控制系统、备份系统、在线迁移系统、任务调度系统、监控系统等。

当创建/删除实例时,先到任务调度系统,触发是做迁移还是备份,最后发送到指定的cluster中,再进行下一步相关的操作。

 

3) RDS主从切换原理

 

RDS高可用版采用主备架构,具备高可用性。

 image.png

 

高可用控制系统主要负责所有数据库实例主备之间的健康检查,以及实时切换,以保证数据库高可用性达到99.95%;

3秒轮循一次,实例轮询并发进行,当发现有节点不健康时,需要完成秒级切换;

高可用控制系统是作为第三方身份去判断数据库实例是否在正常运行,不会出现脑裂现象;

可模拟应用去做更新,这样对故障点的判断更为准确;

高可用系统集群本身也是一个高可用的环境,集群内所有节点相互检查和任务接管。

 

2. RDS核心技术解析

 

1) RDS自研内核 - AliSQL简介

 

AliSQL是阿里云深度定制的独立MySQL分支,除了社区版的所有功能外,AliSQL提供了类似于MySQL企业版的诸多功能,如企业级备份恢复、线程池等;

RDSMySQL使用AliSQL内核,为用户提供了MySQL所有的功能,同时提供了企业级的安全、备份、恢复、监控、性能优化、只读实例等高级特性;

在通用基准测试场景下,AliSQL版本比MySQL官方版本有着70%的性能提升。在秒杀场景下,性能提升100倍。

 

image.png 

2) AliSQL增强Feature介绍

 

功能增强类

ThreadPool

StatementOutline

SequenceEngine

Returning

Lizard事务系统

 

性能增强类

FastQueryCache

BinloginRedo

StatementQueue

InventoryHint

 

稳定性增强类

FasterDDL

Statement(oncurrencyControl)

PerformanceAgent

Rurge,LargeFileAsynchronously

PerformanceInsight

 

安全增强类

RecycleBin

 

AliSQL详细信息请参考

https://help.aliyun.com/document.detail/129925.html

 

a) 示例:ThreadPool

 

Multi-queuethreadpool

限制线程数量,避免过多线程调度和大量缓存失效;

区分语句和事务的优先级,控制并发数量,从而减少资源竞争;

给予管理类SQL语句更高的优先级,保证这些语句优先执行;

给予复杂查询SQL语句较低的优先级,并且限制其最大并发数

 

参数配置

thread_poolenabled:是否开启线程池功能,默认开启,ON|OFF;

thread_pool_size:线程池内分组的数量,默认值4;

thread_pooloversubscribe:每个分组中允许的活跃线程数量,默认值32

 

image.png

 

b) 示例:StatementQueue

 

将冲突的SQL语句放在同一个队列(桶)中排队,减少冲突导致的开销;

支持两种Hint

/*+ccl_queue_value([int|string])*/

根据输入的值的hash进行分桶

/*+ccl_queue_field(column)*/

根据指定column值的hash进行分桶

 

参数设置

ccl_queue_bucket_count:桶的数量

ccl_queue_bucket_size:一个桶内允许的并发数

 

image.png

 

c) 示例:RecycleBin

 

回收机制

DROP/TRUNCATETABLE的表对象移到RecycleBin目录(新库"_recycle_bin_");

表相关的trigger以及foreignKey会被删除;

表的附属属性(ColumnStatistics)会进入RecycleBin

 

回收站清理

无法直接使用DROPTABLE清理回收站中的数据;

可通过DBMS_RECYCLE.purge_table()清理;

清理时需要用户具有原表和回收站表的DROP权限

 

Master-Slave独立回收

回收站功能的开启及保留周期都是实例级别,主备之间不会通过binlog进行同步

 

image.png

相关文章
|
10天前
|
存储 人工智能 数据管理
|
3天前
|
存储 人工智能 数据管理
媒体声音|专访阿里云数据库周文超博士:AI就绪的智能数据平台设计思路
在生成式AI的浪潮中,数据的重要性日益凸显。大模型在实际业务场景的落地过程中,必须有海量数据的支撑:经过训练、推理和分析等一系列复杂的数据处理过程,才能最终产生业务价值。事实上,大模型本身就是数据处理后的产物,以数据驱动的决策与创新需要通过更智能的平台解决数据多模处理、实时分析等问题,这正是以阿里云为代表的企业推动 “Data+AI”融合战略的核心动因。
|
24天前
|
存储 NoSQL 关系型数据库
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
我们的风控系统引入阿里云数据库MongoDB版后,解决了特征类字段灵活加减的问题,大大提高了开发效率,极大的提升了业务用户体验,获得了非常好的效果
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
|
11天前
|
人工智能 Cloud Native 关系型数据库
双位数增长,阿里云连续五年领跑关系型数据库
阿里云蝉联中国关系型数据库整体市场份额第一,在公有云业务双位数增长的驱动下,阿里云同时在公有云关系型数据库市场取得了38%的市场份额,连续五年位居首位。
|
19天前
|
弹性计算 Cloud Native Serverless
阿里云 SAE 邀您参加 Serverless 高可用架构挑战赛,赢取精美礼品
阿里云 SAE 邀您参加 Serverless 高可用架构挑战赛,赢取精美礼品。
|
2月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
87 2
|
3月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
87 0
|
12天前
|
存储 设计模式 算法
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。 行为型模式分为: • 模板方法模式 • 策略模式 • 命令模式 • 职责链模式 • 状态模式 • 观察者模式 • 中介者模式 • 迭代器模式 • 访问者模式 • 备忘录模式 • 解释器模式
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
|
12天前
|
设计模式 存储 安全
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: • 代理模式 • 适配器模式 • 装饰者模式 • 桥接模式 • 外观模式 • 组合模式 • 享元模式
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析

推荐镜像

更多