云数据库RDS

RDS的概念

1.传统数据库

传统数据库搭建过程一般如下:购买硬件->按照操作系统->按照数据库软件->配置数据库(包括安全性配置,性能配置,高可用配置,备份容灾配置等)

2.云数据库RDS的概念

阿里云关系型数据库RDS Relational Database Servcie 是一种稳定可靠,可弹性伸缩的在线数据库服务。基于阿里云分布式文件系统和固态盘SSD盘高性能存储,RSD支持MySQL,SQL Server,PostgreSQL,PPAS(Postgre Plus Advanced Server,高度兼容Oracle数据库) 和MariaDB TX引擎,并且提供了容灾,备份,恢复,监控,迁移等方面的全套解决方案。RDS就是把传统数据库放到了云上,除了具备传统数据库的特点,还具有云上的优点。

  • 便宜易用:具有灵活计费,按需变配,即开即用等优点
  • 高性能:得益于云架构和数据库的调优,包括参数优化,SQL优化建议等
  • 高可用:高可用架构和多种容灾方案
  • 高安全性:提供多种安全措施保障数据安全

RDS支持的数据库如下

3.RDS和传统数据库相比

  • RDS把线下的数据库搬到云上,本质还是以前的线下数据库。和传统数据库相比,RDS多了云端的优点,基于阿里云分布式文件系统和SSD盘高性能存储

云数据库RDS_第1张图片

RDS VS PolarDB

  • RDS就是线上的传统数据库,PolarDB是除了是线上数据库,还具有云计算的优势

数据库的优点

线上云端的优点

云计算的优点

线下数据库

没有

没有

RDS

没有

PolarDB

RDS VS 自建数据库

自建数据库包括

  • ECS自建:购买阿里云ECS,在这台ECS自己搭建数据库
  • IDC自建:不用任何阿里云的资源,自己搭建数据库

云数据库RDS_第2张图片

云数据库RDS_第3张图片

4.RDS的相关概念

实例

  • 实例是虚拟化的数据库服务器,在一个实例中可以创建和管理多个数据库。
  • 这个RDS实例的概念和ECS实例概念和PolarDB的集群概念是一样的

地域和可用区

  • 地域和可用区 一旦确定,不能修改。RDS实例应该和ECS实例位于同一地域,以实现最高的访问性能。

数据库引擎

  • RDS支持多种数据库引擎,如MySQL,SQL Server,PostgreSQL,PPAS(Postgre Plus Advanced Server,高度兼容Oracle数据库) 和MariaDB。
  • 方便把数据库从线下,迁移到线上

网络类型

  • 可以选择将实例创建在经典网络(不建议)或专有网络VPC中。
  • VPC是阿里云中做网络隔离的,是阿里云上一种隔离的网络环境,安全性比传统的经典网络更高,建议选择VPC

产品系列

  • 分为基础版(一个节点),高可用版:(两个节点),集群版:(SQL Server支持的),三节点企业版:(就是以前的金融版)
  • 这个和PolarDB的区别就是,PolarDB做集群可以自己选择节点(1个主节点和最多15个只读节点)

规格组

  • 分为通用型,独享型,独占物理机型。成本依次升高

存储类型

  • 分为SSD本地盘,SSD云盘和ESSD云盘

RDS的规格(产品选型)

在使用RDS时,需要注意的选择的内容主要有:产品系列,实例规格和存储类型

1.RDS产品系列(RDS实例版本)

阿里云RDS提供四种版本的实例:基础版,高可用版,集群版和三节点企业版(原金融版)

基础版:单节点实例,采用计算与存储分离的架构,可实现超高的性价比。

  • 适用场景:个人学习,微型网站,中小企业的开发测试环境,不建议生产环境。
  • 基础版目前只有MySQL版本。
  • 如果出现宕机,可能会服务不可用,但是数据存在云盘,不会丢。

高可用版:2个节点一主一备,一旦主节点发生故障,备节点可以立刻启用。采用一主一备的经典高可用架构,适合80%以上的用户场景

  • 适用场景:大中型企业的生产数据库,互联网/互联网/零售电商/物流/游戏等行业的数据库

集群版:仅仅SQL Server支持,基于AlwaysOn技术实现,最大支持一主一备高可用架构和7个只读实例,购买时默认为高可用架构(仅仅包括主实例和备实例,没有只读实例)

  • 适用场景:大中型企业的生产数据库,如互联网新零售行业,汽车制造行业,企业大型ERP系统等

三节点企业版(原金融版):仅MySQL提供,一主两备,提供金融级的可靠性

  • 适用场景:对数据安全性要求非常高的金融,证券,保险行业的核心数据库;各行业大型企业的生产数据库

云数据库RDS_第4张图片

云数据库RDS_第5张图片

2.RDS实例规格族--内存/CPU/存储资源有没有复用

云数据库RDS提供两种实例规格族:共享型,通用型和独享型

共享型

  • 独享被分配的内存,与同一物理机上的其它通用型实例共享CPU资源和存储资源。
  • CPU资源复用
  • 实例有资源争抢的风险

通用型

  • 独享被分配的内存,与同一物理机上的其它通用型实例共享CPU资源和存储资源。
  • 通过资源复用换取利用率最大化,性价比较高,享受规模红利
  • 存储大小不和CPU/内存绑定,可以灵活选配
  • CPU资源轻微复用

独享型

  • 具有完全独享的CPU和内存,性能长期稳定,不会因为物理机上其它实例的行为而受到影响
  • 独享型:多人用同一个物理机,但是CPU和内存没有复用
  • 独享型的顶配是独占主机型,也叫独占物理机型:完全独占一台物理机所有的资源

云数据库RDS_第6张图片

云数据库RDS_第7张图片

3.RDS存储类型

为满足不同场景的需求,云数据库RDS提供三种数据存储类型:本地SSD盘,SSD云盘,ESSD云盘

  • 本地SSD盘:本地SSD是指与数据库引擎位于同一个节点的SSD盘,把数据存储在本地SSD盘,可以降低I/O延迟
  • SSD云盘:SSD云盘是指基于分布式存储架构的弹性块存储设备。把数据存储在SSD云盘,实现了计算和存储的分离
  • ESSD云盘:增强型SSD云盘,ESSD云盘基于新一代分布式块存储结构,结合25GE网络和RDMA技术,提供单盘高达100万的随机读写能力和更低的单路延迟能力

4.云数据库RDS灾备实例

RDS通过数据传输服务DTS实现主实例和异地灾备实例之间的实时同步。主实例和灾备实例均搭建主备高可用架构,当主实例所在区域发生突发性自然灾害等状况,主节点Master和备节点Slave均服务连接时,可将异地灾备实例切换为主实例,在应用端修改数据库链接地址后,即可快速恢复应用的业务访问。

灾备实例可通过DTS管理控制台实现同步对象变更、同步速度设置、延迟报警等同步链路原生功能。

云数据库RDS_第8张图片

5.只读实例

在对数据库有少量写请求,但有大量读请求的应用场景下,单个实例可能无法承受读取压力,甚至对业务产生影响。为了实现读取能力的弹性扩展,分担数据库眼里,可以创建一个或者多个只读实例,利用只读实例满足大量的数据库读取需求,增加应用的吞吐量。

云数据库RDS_第9张图片

云数据库RDS产品优势

便宜易用:云数据库RDS便宜易用,具有灵活计费,按需变配,即开即用等优点

高性能:RDS的所有参数都经过多年的生产实践和优化。在RDS实例的生命周期内,DBA持续对其进行优化。

灾备设计:RDS默认提供备份功能,支持自动备份。同时支持本地和异地容灾

高安全性:云数据库RDS有大量安全手段提供数据库的安全性

云数据库RDS产品优势-灵活计费

  • 按需变配:在业务初期,可以购买小规格的RDS实例来应对业务压力。随着业务高低峰变化,可以随时调整实例规格
  • 即开急用:无需购置数据库服务器硬件或软件,节省大量成本。开始使用RDS,只需通过阿里云控制台或者API创建指定规格的RDS实例。
  • 透明兼容:RDS与原生数据库引擎的使用方法一直,无需二次学习,上手即用。RDS兼容现有的程序和工具。使用通用的数据导入倒出工具即可将数据迁移至RDS
  • 管理编辑:阿里云负责RDS的日常维护和管理,包括但不限于软硬件故障处理,数据库补丁更新等工作,保障RDS的正常运转。也可以通过阿里云控制台或者API自行完成数据库的增加,删除,重启,备份,恢复等管理操作。

云数据库RDS产品优势-灵活计费

  • 参数优化:阿里云聚集国内顶尖的数据库专家,RDS的所有参数都经过多年的生产实践和优化。在RDS实例的生命周期内,DBA持续对其进行优化,确保RDS实例一直基于最佳配置运行。
  • SQL优化建议:针对应用场景特定,RDS会锁定效率地下的SQL语句并提出优化建议,以便优化业务代码
  • 高端设备投入:RDS使用的所有服务器硬件都经过多方测评,保证在性能和稳定性上都遥遥领先
  • 高速访问:RDS可以配合同一地域的云服务器ECS一起使用,通过内网通信,缩短应用响应时间,同时也节省了公网流量费用

云数据库RDS产品优势-灾备设计

  • RDS默认提供备份功能,支持自动备份和手动备份
  • RDS默认支持按备份集和指定时间点进行数据恢复
  • 除了默认的备份恢复功能,RDS for MySQL还提供跨地域备份恢复功能

同城容灾

云数据库RDS_第10张图片

云数据库RDS产品优势-高安全性

  • 防DDoS攻击:当RDS安全体系认为RDS实例正在遭受DDoS攻击时,会首先启用流量清洗功能,如果流量清洗无法抵御攻击或者攻击达到黑洞阈值时,将会进行黑洞处理,保证RDS服务的可用性
  • 检测SQL注入威胁:云安全中心基于第三代SQL注入威胁检测数据智能算法引擎,支持检测RDS的SQL注入威胁,实时识别潜在的数据安全风险。
  • 访问控制策略:可以为每个实例定义IP白名单,只有白名单中的IP地址所属的设备才能访问RDS
  • 系统安全:RDS处于多层防火墙的保护之下,可以有力地抗击各种恶意攻击,保证数据地安全。RDS服务器不允许直接登录,只开放特定地数据库服务所需要的端口。RDS服务器不需要主动向外发起连接,只能接受被动访问。
  • 数据加密:阿里云提供各类加密功能,保障数据安全
  • 专业安全团队:阿里云安全团队负责RDS的安全技术支持

云数据库RDS的使用

通常,从新购实例到可以开始使用实例,需要完成如下操作:创建实例-设备白名单-申请外网地址-创建数据库-创建账号-连接并使用数据库

数据管理

云数据库RDS_第11张图片

只读实例

云数据库RDS_第12张图片

手动数据备份

备份尽量选在业务不繁忙的时候,不要修改表内容

云数据库RDS_第13张图片

RDS的数据备份

可以通过设置备份策略调整RDS数据备份和日志备份的周期来实现自动备份

云数据库RDS_第14张图片

数据恢复

云数据库RDS_第15张图片

数据多样化存储

RDS可以搭配云数据库Redis,云数据库Memcache和对象存储OSS等产品使用,实现多样化存储。

云数据库缓存产品有两个特性:

  1. 响应速度快。请求的时延通常在几毫秒以内
  2. 缓存区能够支持比RDS更高的QPS(每秒请求数)

云数据库RDS_第16张图片

开放搜索

开放搜索服务OpenSearch是一款结构化数据搜索托管服务,为移动应用开发者和网站站长提供简单,高效,稳定,低成本和可扩展的搜索解决方案。通过OpenSearch自带功能,可将RDS中的数据自动同步至OpenSearch实现各类复杂搜索,如下图所示

云数据库RDS_第17张图片

读写分离

阿里云数据库RDS for MySQL/SQL Server可以添加只读实例,分担主实例的读取压力。主实例和只读实例都有独立的连接地址,当开启读写分离功能后,系统会额外提供一个读写分离地址,联动主实例及其下的所有只读实例,实现了自动的读写分离。应用程序只需连接同一个读写分离地址进行数据读取及写入操作,读写分离模块会自动将写入请求发往主实例,而将读取请求按照设置的权重发往各个只读实例。您只需增加只读实例的个数,即可不断扩展系统的处理能力,应用程序无需做任何修改。

云数据库RDS_第18张图片

大数据分析

开放数据处理服务又称为大数据计算服务MaxCompute,原名ODPS,可服务于批量结构化数据的存储和计算,提供海量数据仓库解决方案以及针对大数据的分析建模服务。

通过数据集成服务,可将RDS数据导入MaxCompute,实现大规模的数据计算,如下图所示

云数据库RDS_第19张图片

MySQL数据库异地备份和查询

数据库异地备份方案基本采用本地备份压缩后上传异地的方式来实现。对于历史备份数据,随着时间间隔的增大,被查询的可能性越来越低,会浪费一定的存储资源。本方案可以帮助实现低成本快速查询备份数据集的需求。

云数据库RDS_第20张图片

数据管理和数据传输

数据管理DMS

数据管理DMS(Data Management Service)是一种集数据管理,结构管理,用户授权,安全审计,数据趋势,数据追踪,BI图表,性能与优化和服务器管理于一体的数据管理服务。

云数据库RDS_第21张图片

数据管理DMS基础架构

阿里云数据管理提供的数据库管理服务包括三层结构:业务层,调度层,连接层,用于对RDBMS,NoSQL的实时数据访问和后台数据任务的调度

业务层

  • DMS业务层提供数据库实时点击和SQL访问,业务层为无状态无节点,可线性扩展,确保为DMS整体服务能力的提示
  • 宕机无状态切换,确保7*24小时服务

调度层

  • DMS调度层为提供调度,其后台主要通过线程池进行调度,分为实时调度和后台定时调度两类
  • 实时调度提供前端点击后立即调度并一次性任务处理,数据管理后台自动完成所有工作
  • 后台定时调度任务为用于定时获取用户指定的数据,提供查阅和分析

连接层:连接层为数据管理的访问数据的核心部件,主要包含如下几点:

  • 兼容MySQL,SQLServer,PostgreSQL,PPAS,Redis,MongoDB的请求
  • 前端操作上会话隔离和保持,即通过数据管理打开多个SQL窗口,接近客户端的体验
  • 实例会话数量控制,防止对单个实例建立大量的连接数
  • 按功能分级回收连接策略,尽可能确保不同功能体验的基础上减少对数据库的连接数。

数据管理DMS产品优势

产品优势包括:轻松拥有数据分析能力,极大提升研发效率,实时优化数据库性能,全面的访问安全保护,丰富的数据源支持

云数据库RDS_第22张图片

数据传输DTS

数据传输服务DTS(Data Transmission Service)支持RDBMS,NoSQL(not only SQL),OLAP等数据源间的数据交互,集数据迁移/订阅/同步于一体,构建安全,可扩展,高可用的数据架构

数据传输服务DTS的特点:

  • DTS承诺99.95%的链路稳定性及99.999%的数据可靠性
  • 数据传输支持同/异构数据源之间的数据交互,提供数据迁移/订阅/同步交互功能
  • 支持节点的故障容灾,可实现链路的秒级恢复
  • 支持断点续传,可有效解决因硬件,网络等异常导致的传输中断
  • DTS支持RAM主子账号体系,用户可以使用子账号创建并管理DTS实例,提高企业安全性。详情请参见子账号访问DTS。

数据传输服务DTS的系统架构

架构说明

  • 系统高可用数据传输服务内部每个模块都有主备架构,保证系统高可用
  • 数据源地址动态适配对于数据订阅及同步链路

数据传输服务的整个系统架构及基本实现原理

云数据库RDS_第23张图片

数据传输服务DTS的优势

不停服的迁移

云数据库RDS_第24张图片

总结

目标ACP

  1. 了解云数据库演进历程
  2. 了解云数据库RDS与传统数据库的优势
  3. 掌握如何选择云数据库RDS版本
  4. 掌握如何使用云数据库RDS

小结ACP

  1. 阿里云RDS的概念
  2. 阿里云RDS的规格
  3. 阿里云RDS的优势
  4. 创建RDS的流程
  5. 只读实例的创建过程
  6. DMS概念和原理
  7. DTS的概念和产品优势

思考题ACP

  1. 阿里云RDS对比传统数据库有什么不同? 传统数据库需要手动维护,RDS硬件安全购买即可。
  2. 简述RDS的两种规格和四个版本? 共享型和独享型。基础班,高可用版,集群版和三节点企业版(原金融版)
  3. 只读实例的作用?提高读的性能,增加只读实例的数量,来提高读性能
  4. RDS的安全体系是什么?防DDoS攻击,防SQL注入,白名单等
  5. 什么是DMS?DMS的作用是什么?数据管理服务。可以管理整个数据管理,结构管理等
  6. 什么是DTS?DTS的核心功能是什么?数据传输服务。完成数据的迁移,同步和订阅。

你可能感兴趣的:(AliCloud,big,data,postgresql,数据库)