凯发娱发k8

阿里云产品介绍(三):云数据库rds -凯发娱发k8

2023-08-17,,

写完云服务器ecs,本来想先写负载均衡的。

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

但这一篇还是决定先写写云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凯发娱发k8的解决方案,欢迎有兴趣的客户点击“阅读原文”.

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

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

阿里云(三):云数据库rds的相关教程结束。

网站地图