【视频】-RDS-云关系行数据库的解析与实践|学习笔记(二)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 快速学习【视频】-RDS-云关系行数据库的解析与实践

开发者学堂课程【关系型数据库 ACP 认证课程【视频】-RDS-云关系行数据库的解析与实践】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/927/detail/14618


【视频】-RDS-云关系行数据库的解析与实践


3.RDS 功能概览

image.png(1)基础管理与监控

①实例管理

②库/账号管理

③连接数据库

④参数管理

参数的调整是相对复杂的, 而RDS 中的各种参数模板可以解决这个问题。

⑤监控管理

⑥安全管理

⑦可用性管理

(2)访问与存储

①访问方式

②数据库代理

③存储类型

④存储引擎

⑤读写分离

(3)备份与恢复(主要使用 DBS )

①备份方式

②全量/增量

③自动/手动

④数据库恢复

⑤库表级备份/恢复

⑥跨地域备份/恢复

(4)数据迁移(主要使用 DTS )

①数据迁入

②数据迁出

 

二、RDS 的架构原理

1. RDS 架构解析

(1)下图是 RDS 的整体访问架构:

image.png

可以看到,从访问的角度看,前台业务一般在 ECS 中部署,然后 ECS 通过一个地址去(和传统数据库不同的是,为了保证数据的安全,RDS 访问时对外开放的地址只是一个 url 地址,当业务访问 url 地址时,会解析到一个负载均衡 SLB 上,然后通过 SLB 转到主实例上或者备实例上)访问数据库。如果用户开通了数据库代理,可以得到一个读写分离的地址,代理的写流量可以直接到达主实例或者备实例,读流量可以直接到达只读实例。其中实例里数据备份和日志备份存储在 OSS 中,然后生成新实例,基于新实例去找到需要恢复的数据,并将它们恢复。

(2)下图是 RDS 的底层系统架构:

image.png

可以看到,用户通过 url 解析 DNS 到防火墙,再由防火墙转到后端控制系统,当需要创建或删除实例时,会先到任务调度系统里,触发数据迁移和备份之后,再返回到集群里进行相应操作,如果用户重新创建实例,需要先到 API ,然后发送给任务调度系统,系统接受指令后创建 RDS ,再将 RDS 创建的指令返回给集群,集群会重新生成一个 RDS ,然后将信息返回给用户,最后用户根据 url 地址做相应的连接。

(3)RDS 主从切换原理

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

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

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

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

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

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

如图:

image.png

当主备服务器发生切换时,首先需要 HA 系统做一个轮循,为了避免传统模式可能出现的脑裂现象,高可用控制系统是作为第三方身份先进行轮循,判断数据库实例是否在正常运行,若发现主实例无法正常运行, HA 将发送信号给任务调度系统,以告知 LVS 需要进行主从切换,即把主实例切换到备实例,这样就不会出现脑裂现象。

2. RDS 核心技术解析

(1)RDS 自研内核-AliSQL 简介

AliSQL 是阿里云深度定制的独立 MySQL 分支,除了社区版的所有功能外,AliSQL 提供了类似于  MySQL 企业版的诸多功能,如企业级备份恢复、线程池等。RDS MySQL 使用 AliSQL 内核,为用户提供了 MySQL 所有的功能,同时提供了企业级的安全、备份、恢复、监控、性能优化、只读实例等高级特性。

如图:

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

(2)AliSQL 增强 Feature 类别介绍

image.png①功能增强型如:

Thread Pool

Statement Outline

Sequence Engine

Returning

Lizard事务系统

②性能增强型如:

Fast Query Cache

Binlog in Redo

Statement Queue

Inventory Hint

③稳定性增强型如:

Faster DDL

Statement Concurrency

ControlPerformance Agent

Purge Large File Asynchronously

Performance Insight

④安全增强型如:

Recycle Bin

关于AliSQL的详细信息请参考:

http://help.aliyun.com/document_detail/129925.html

文档中很多信息都是详细的,例如RDS My SQL 数据库中有阿里内核,可以看到功能概览等等,而且help中可以进行检索,如在使用My SQL中遇到一些问题,也有最佳实践进行参考。

 

三、RDS 的基本管理

(1)实例管理

即创建/删除/变配数据库的过程,包含:

①计费方式

②类型

③实例规格

有入门级和企业级等不同规格,其中入门级的配置比企业级的更低。

④网络类型

⑤地域/可用区

由于高可用版本有主从两个节点,所以需要选择主可用区。

⑥系列

⑦存储类型

⑧存储引擎

(2)库/账号管理

● 由于 RDS 拥有自身的数据库及数据库账号管理体系,使得用户无法直接使用命令进行数据库创建。

● 用户可以通过 RDS 管理控制台创建数据库,且数据库名称实例内唯一,实例间互不影响。

如图:

image.png● 对于 MySQL 实例,最多可创建500个数据库

● 数据库账号管理可用于创建新的数据库账号,或者修改已有数据库账号的信息。

● RDS MySQL 实例支持两种数据库账号:高权限账号和普通账号,其中普通账号只有读权限和写权限,而高权账号虽然有创建普通账号和给普通账号赋权等权限,但是并不等于 ROOT 账号,但足以满足各种需求。

如图:

image.png● 对于 MySQL 实例,每个实例最多可创建500个数据库账号

● 账号创建后,若账号类型无法切换,可以删除账号后重新创建同名账号

(3)如何连接 RDS 数据库

image.png首先给一个 url 地址,把原来地址替换成 url ,然后进行以下步骤:

①确认是否满足内网访问的条件:

ECS 实例与 RDS 实例位于同一地域

ECS 实例与 RDS 实例的网络类型相同

②设置IP白名单(只有在白名单里的才能被放在 RDS 中):

通用白名单模式

高安全白名单模式

③连接 RDS 实例:可以通过原生命令行、第三方工具、程序编码、 DMS 等连接。

(4)参数管理

● RDS MySQL 为了保障服务可用性,没有开放部分重要参数,但为了满足不同的业务场景需求(如追求更高性能),RDS MySQL 提供各类系统参数模板,可以创建自定义参数模板,根据自己的业务场景,实现批量参数设置。

如图:

image.png可以看到,上图包括可修改参数、参数修改历史、模板等可供选择,其中参数的修改包括修改参数的默认值、运行参数值、是否重启、参数值范围、参数描述等。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
25天前
|
SQL 关系型数据库 数据库
阿里云RDS数据库介绍:产品功能、实例规格、收费标准餐参考
阿里云RDS是企业级云端数据库服务,支持MySQL、SQL Server、PostgreSQL等主流引擎,以高可用性、弹性扩展、安全防护及智能化管理为核心优势。提供倚天版、Serverless实例等规格,适配高性能计算与负载波动场景。功能涵盖全密态加密、自动扩缩容、集群高可用架构及自治运维服务。计费模式灵活,包括包年包月、按量付费、Serverless等,结合优惠活动降低企业成本。
|
NoSQL MongoDB 数据库
MongoDB 自动删除集合中过期的数据——TTL索引
简介 ​ TTL (Time To Live, 有生命周期的) 索引是特殊单字段索引,MongoDB可以用来在一定时间后自动从集合中删除文档的特殊索引。 这对于某些类型的数据非常好,例如机器生成的事件数据,日志和会话信息,这些信息只需要在数据库中保留一段时间。 ​ 创建 TTL 索引,只需要在使用 db.collection.createIndex() 方法,对字段值为日期或者包含日期的数组设置 expireAfterSeconds 选项即可。 1、如果字段是一个数组,并有多个日期值时,MongoDB使用最低(即最早)日期值来计算失效阈值。 2、如果字段不是日期类型也不是一个包含日期的数组
1227 0
|
存储 SQL 弹性计算
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务。云数据库RDS提供三种数据存储类型:ESSD云盘、本地SSD盘和SSD云盘,本文介绍三种存储类型的区别及选购建议。
1759 0
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
|
Prometheus 监控 Cloud Native
Prometheus 安全性与数据隐私
【8月更文第29天】Prometheus 是一个开源的监控系统,广泛应用于各种规模的企业中。随着 Prometheus 的普及,确保其安全性变得尤为重要。本文将详细探讨如何确保 Prometheus 服务器的安全性,包括认证、授权、加密通信等方面的措施,并提供相应的配置示例。
835 2
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
1015 0
|
存储 NoSQL MongoDB
MongoDB技术架构详解
MongoDB技术架构详解
|
存储 算法 安全
web3:同态加密(一)
web3:同态加密
1234 0
web3:同态加密(一)
|
人工智能 弹性计算 资源调度
《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第1天——一、阿里云整体架构
《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第1天——一、阿里云整体架构

热门文章

最新文章