阿里云产品介绍(三):云数据库RDS

阿里云产品介绍(三):云数据库RDS

写完云服务器ECS,原本想先写负载均衡的。git

由于发现不少客户,都是直接将单台云服务器应用对外提供访问,若是云服务器宕机,应用就会中止服务。云服务器标称有99.95%的可用率,一年下来宕机四个多小时也是正常的。要想提高应用的可用率,就须要多台云服务器(至少两台,最好分布式两个不一样的可用区),而后利用负载均衡将流量按必定规则导向后端的云服务器应用集群。github

但这一篇仍是决定先写写云数据库RDS,云数据库RDS有好几个曾用名。最先的名字就是RDS(阿里云的产品,大部分在命名的时候故意和亚马逊有一点微小的差别,好比ECS和EC2。只有RDS这个名字是彻底同样,Rational Database Service,关系型数据库服务)。数据库

 

 

RDS不仅是一种数据库,目前阿里云的RDS已经支持包括MySQL、PostgreSQL、PPAS、SQL Server等四种不一样的关系型数据库。后端

 

而后呢,RDS越作越好,团队也也来越大,后面包括Redis、MongoDB、Greenplum等愈来愈多的数据存储类产品都被归入到旗下,因此起了一个更大的品牌叫作AliCloudDB,中文名就叫云数据库,RDS则变成了旗下的一个产品线,中文名就变成了云数据库RDS。后来么,AliCloudDB又换成了ApsaraDB,Apsara就是传说中的飞天啦。安全

先不说其余的NoSQL数据库产品,这一篇集中精力来看看云数据库RDS。服务器

企业使用阿里云,通常来讲,购买云服务器ECS基本上是必须的。但须要数据库的时候,就会面临两种选择:一种固然是直接使用云数据库RDS,另一种则是在云服务器ECS上本身安装部署数据库。这两种选择有什么不同呢?架构

首先,使用RDS固然是最省事的。RDS背后汇集了阿里最好的DBA团队负责运维,最好的数据库内核开发团队负责改进数据库(主要指MySQL和PostgreSQL开源数据库,SQL Server自己只能期望微软了),将不少须要DBA平常运维的工做逐渐归入实现产品化。负载均衡

使用的客户就能够从不少底层的任务中解放出来,好比建立新的MySQL备库,只须要在RDS控制台点一下“建立只读实例”、“建立灾备实例”或者“建立临时实例”便可。为何有三种不一样实例?分别对应了三种不一样的场景:同城读写分离、异地机房容灾、按时间点恢复取数。运维

RDS的总体架构,提及来也不复杂。主要有两种模式:分布式

 

  • 标准模式

     

     

    标准模式很是简单,只是经过负载均衡SLB将RDS背后的主备库对应用作了屏蔽,发生切换时,只须要修改负载均衡的配置,将后面服务的物理IP更换成新主库的地址便可。标准模式有一个限制,同一时间,RDS只能支持外网访问地址或者内网访问地址中的一种。由于只是加了负载均衡,也不具有SQL拦截的能力。对于用户来讲,这种模式的RDS只是提供了一个Web控制台+主备切换。

  • 高安全模式

    高安全模式在负载均衡和主备库之间加了一层透明的代理层(Proxy),对数据库的全部访问都会在Proxy进行解析处理,所以在标准模式的基础上,还能够作到防止SQL注入。同时,由于多了一层代理,响应时间也会相应的受到影响,官方的说法是20%左右。该模式支持内外网访问地址同时存在。

和云服务器同样,云数据库RDS的购买也支持包年包月和按量付费两种模式,而后选择对应的地域和可用区,如何选择地域和可用区能够参考以前介绍云服务器ECS的文章

前面也说到,RDS支持四种不一样的关系型数据库,卖的最火的毫无疑问是MySQL,也有很多企业客户由于使用的是Windows平台和.net技术会选择带正版License的SQL Server,其次是最近逐渐升温的老牌开源数据库PostgreSQL,企业客户能够根据自身的业务场景需求来选择。

 

至于号称和Oracle高度兼容的PPAS,我的观点,尽可能仍是避免使用吧,若是应用真的对Oracle有重度依赖,目前阿里云已经推出独享型ECS,在独享型ECS中自建Oracle多是更好的选择。

RDS的规格从1核1G(链接数300,IOPS600)开始,最高的30核220G(链接数64000,IOPS20000)规格也支持独占物理机,对于大部分数据库场景来讲,应该都可以很好的支持。

 

若是须要更高的IOPS支持,要么采用DRDS来作分库分表作水平拆分,要么采用高规格的独享型ECS+4块SSD数据盘(每块盘最高支持IOPS20000)作到单实例80000 IOPS的支持。

RDS是个好东西,在绝大部分场景下,直接使用云数据库,对于企业客户来讲都是更优的选择。袋鼠云也选择RDS for MySQL作为自身产品SaaS版本的数据库。

 

但像上面说的,也有一些场景须要考虑在云服务器上自建数据库,好比说云上Oracle,好比说须要单实例更高IOPS支持,好比说有些客户具有较强的DBA能力,但愿可以更多的控制数据库而不是面对一个封装的黑盒子产品,等等。

针对自建数据库的场景,袋鼠云的 EasyDB数据库管理平台(https://easydb.dtstack.com) 能够帮助企业客户更好的管理数据库,不论是云上仍是云下的Oracle/MySQL,对于性能监控、高可用、备份恢复等DBA平常运维管理场景都提供了很好的支持。

 

尤为是云上Oracle场景,袋鼠云作为业界领先的数据库专家团队,和阿里云紧密合做,为阿里云的客户提供独家的云上Oracle解决方案,欢迎有兴趣的客户点击“阅读原文”.

另外,作为RDS的重头产品MySQL,背后使用的并不是官方版本,而是积累了阿里多年电商使用场景的经验修改过内核的版本,在8.9的北京云栖大会上已经宣布即将开源,并在9.15中秋节正式开启5.6.32版本内测(https://github.com/alibaba/AliSQL),相信很快就会彻底开放。

 

基于AliSQL在自有服务器或者云服务器ECS上自建数据库也会成为一种选择,EasyDB也将全面支持AliSQL。

相关文章
相关标签/搜索