2018年双十一刚过,阿里云数据库发布RDS for SQL Server AlwaysOn集群版,这是业界除微软云SQL Database外,首家云计算公司基于SQL Server最新AlwaysOn核心技术实现的数据库集群版,并且是经过双十一检验的商业化版本。

全形态的产品集合

纵观整个RDS for SQL Server的产品迭代图,AlwaysOn集群版的上线标志这SQL Server数据库在阿里云RDS平台的全面覆盖,阿里云数据库实现了针对企业客户不同阶段的产品体系的匹配。

基础版针对可用性要求不高的业务,并且成本是首要关注选项的客户,如初创企业,是最优选择。WEB版价格甚至比自建还要低,却能获得RDS的运维管理等多项服务,性价比最高。

随着业务的发展,关键业务的可用性要求变高,甚至要求7X24小时的不间断服务,RDS for SQL Server 高可用版基于微软Mirror技术实现,满足此类业务需求。此外,针对企业级客户特性,在高可用版中开放了大量高级特性,如复制模式设置,用户可以根据需求设置主备节点复制模式可实现业务的高可靠或者高性能。此外高可用版本支持Linked Server,实现在RDS中访问其他RDS甚至自建数据库。特别地,在高可用版本中,开放了变更数据捕获(CDC,Change Data Capture)技术,客户可根据CDC提供的能力,同步数据库的变化,实现数据复制到其他实例。高可用版满足了企业客户主流业务需求。

随着业务的急速发展,系统负载不停增加,企业就对数据库的横向扩展能力提出了要求,RDS for SQL Server集群版就是为了满足此类苛刻要求而推出的。AlwaysOn集群版不但提供了高可用版的所有特性,而且还实现了数据库能力的横向扩展,客户可简单的通过购买只读实例,就可以实现扩容数据库读能力,最少可扩容到原主实例的七倍读能力。此外,客户可通过增加一个独立的只读实例,专门提供一个特定业务的查询服务,比如专给数据智能部门提供数据分析服务。

RDS for SQL Server AlwaysOn集群的只读实例支持独立选择规格,同时默认和主实例采用异步数据复制方式兼顾了性能和性价比,当然客户可自定义为同步方式,从而实现三个节点的数据同步一致性,对数据提供最大的安全保护。注意,我们支持最多可设置1个只读节点和主实例之间的复制模式为同步复制,并且建议该只读节点的规格要和主实例规格保持一致,否则会影响主实例的写入性能。

如何购买阿里云数据库RDS for SQL Server AlwaysON集群版

要购买AlwaysON集群版,在RDS购买页面选择SQL Server后,选择“2017企业集群版”,然后选择对应规格后购买,生产出来的就是AlwaysON集群版的主实例,包括Primary主节点和一个用作保障高可用的Secondary备节点,主备节点之间是数据复制默认是同步模式,客户也可基于实际情况选择性能优先设置为异步复制模式。

RDS for SQL Server AlwaysON集群版是基于2017版本的,官方兼容以前版本,实际使用情况可兼容到2008r2版本。这也说明要使用AlwaysON集群版,客户必须购买2017企业版SQL Server,若客户之前是低版本则需要升级。 RDS将会短期内提供从RDS低版本升级到2017企业版的工具。在购买完主实例后,客户可以在主实例的管控界面购买只读实例,最多可购买七个只读实例。另外只读实例提供了通用型实例规格,最大16核64G内存规格,具有很高的性价比,可以将更多的读请求放到只读实例,实现成本的最优化搭配。

RDS for SQL Server AlwaysOn集群版的核心技术

AlwaysOn是原生支持High Availability和Disaster Recovery的技术,本身又分为Failover Cluster Instances(后续简称FCI)和Availability Groups(后续简称AG),下面的图是FCI和AG的基础架构,其中FCI和常规版本的AG都依赖Windows Server Failover Clustering(后续简称WSFC),不同点是FCI是Share Storage而AG是Share Nothing,FCI是实例级别同步而AG是DB级别

阿里云数据库设计AlwaysON集群版,鉴于扩展性和稳定性要求我们选择的是AG技术方案,同时我们更近一步在实现上去除了WSFC(如下图所示),替代于阿里自研的HA监控系统,实现了集群依赖元素最少设计,根除WSFC和AD证书带来的稳定性问题。同时由于灵活的节点配置,新架构下可方便实现在不同可用区、甚至未来在不同地域独立部署只读节点,可以在数据库层实现原生的两地三中心架构。在数据可靠性方面,2017版本中引入了REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT参数,可实现主备节点的强制同步,确保数据不丢。

RDS for SQL Server AlwaysOn 集群版的案例

2018年双十一中,三只松鼠利用最新版的RDS for SQL Server AlwaysON集群版顺利支撑了原来50倍业务压力的增长。

结合于RDS for SQL Server AlwaysON集群版的灵活价格,三只松鼠双十一架构采用了如图的2+3模式,其中主实例的主备节点通过临时开启异步复制以获得最大性能,三个只读实例全部异步复制实现性能最大化。将所有的与写无关读全部引流到只读实例1和只读实例2,顺利支撑了50倍业务压力增长。另外将业务BI分析查询放到专门的只读实例3,将高峰期的流量干扰降低到最小,并且只读实例3规格按需使用,极大的节省了成本。

阿里云数据库RDS for SQL Server AlwaysOn 集群版商业化发布,除微软外在业界实属首家,它与 Azure SQL Database遥想呼应,将SQL Server强大的AlwaysON技术能力带到云上,为企业级客户的发展提供了全栈的产品支持。

阅读原文​​​​​​​

更多技术干货 请关注阿里云云栖社区微信号 yunqiinsight

阿里云重磅发布RDS for SQL Server AlwaysOn集群版的更多相关文章

  1. SQL Server AlwaysOn 集群 关于主Server IP与Listener IP调换的详细测试

    1. 背景 SQL Server 搭建AlwaysOn后,我们就希望程序连接时使用虚拟的侦听IP(Listener IP),而不再是主Server 的IP.如果我们有采用中间件,则可以在配置中,直接用 ...

  2. SQL Server AG集群启动不起来的临时自救大招

    SQL Server AG集群启动不起来的临时自救大招 背景 前晚一朋友遇到AG集群发生来回切换不稳定的情况,情急之下,朋友在命令行使用命令重启WSFC集群 结果重启WSFC集群之后,非但没有好转,导 ...

  3. 搭建SQL server AwaysOn集群

    1.环境 系统:windows server 2012 R2 数据库版本:SQL server 2012 三台服务器,IP分别是:10.10.10.111,10.10.10.112,10.10.10. ...

  4. 阿里云重磅发布DMS数据库实验室 免费体验数据库引擎

    2月27日,阿里云数据管理DMS发布年度巨献——数据库实验室,用户可在该实验室环境下免费体验数据库引擎.以及DMS各项产品功能.数据库实验室是DMS所提供的体验空间,免费赠送数据库引擎资源. 用户只需 ...

  5. 阿里云搭建JAVA WEB环境(SQL Server + TomCat + 配置域名)

    假期刚刚搭完,先写个提纲,今晚写完: 1.申请一个月的免费的云服务器ECS; 2.在云服务器上安装Java开发环境+Sql Server+Tomcat; 3.购买域名并认证,绑定服务器共有IP地址; ...

  6. 图文详解在Windows server 2008 R2上安装SQL Server 2012集群

    1.准备: 4台服务器(1台AD.2台SQL服务器.1台iSCSI存储服务器) 9个IP(1个AD的IP.2个SQL服务器的IP.2个心跳IP.1个iSCSI存储服务器的IP.1个集群IP.1个DTC ...

  7. Sql Server 2012 集群配置

    基于Windows Server 2008 R2的WSFC实现SQL Server 2012高可用性组(AlwaysOn Group) 2012年5月 微软新一代数据库产品SQL Server 201 ...

  8. 创建SQL Server数据库集群的经历

    自己尝试安装SQL Server集群和配置AlwaysOn可用性组,服务器系统是Windows Server 2012 R2,SQL Server是2014企业版,我的环境是一台服务器,然后用Hype ...

  9. (转载) SQL Server AG集群启动不起来的临时自救大招

    背景 前晚一朋友遇到AG集群发生来回切换不稳定的情况,情急之下,朋友在命令行使用命令重启WSFC集群 结果重启WSFC集群之后,非但没有好转,导致整个AG无法启动,主副本和辅助副本都处于正在解析的状态 ...

随机推荐

  1. UITextfield 允许和禁止编辑

    1.enabled属性 2.resignFirstResponder,设置的时候,如果不起作用,可以延时一会儿,因为键盘升起需要时间. dispatch_after(dispatch_time(DIS ...

  2. 在CentOS上部署kubernetes1.9.0集群

    原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...

  3. 前端每日实战:38# 视频演示如何用纯 CSS 创作阶梯文字特效

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/MXYBEM 可交互视频教程 此视频 ...

  4. linux设备驱动学习笔记--内核调试方法之printk

    1,printk类似于用户态的printf函数,但是比printf函数多了一个日志级别,内核中最常见的日志输出都是通过调用printk来实现的,其打印级别有8种可能的记录字串, 在头文件 <Li ...

  5. php7.0 新增运算符??

    ??是php7 新增符号 其作用近似于三目运算符 ?: 但存在着细微差别 比较示例代码如图:         $b = $a?$a:2; 三目运算 <=>     $e = $a??'ho ...

  6. java并发编程笔记(八)——死锁

    java并发编程笔记(八)--死锁 死锁发生的必要条件 互斥条件 进程对分配到的资源进行排他性的使用,即在一段时间内只能由一个进程使用,如果有其他进程在请求,只能等待. 请求和保持条件 进程已经保持了 ...

  7. 软件-Axure:Axure RP

    ylbtech-软件-Axure:Axure RP Axure RP是一款专业的快速原型设计工具.Axure(发音:Ack-sure),代表美国Axure公司:RP则是Rapid Prototypin ...

  8. MAC使用命令行打包出ipa包-通过xcodeproj

    参考 : https://www.jianshu.com/p/32af2f71b4e5--老了,里面的一些命令现在都没有了,但可以借鉴思路 https://www.jianshu.com/p/004c ...

  9. 用 Flask 来写个轻博客 (26) — 使用 Flask-Celery-Helper 实现异步任务

    Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 扩展阅读 Celery 将 Celery 加入到应用中 实现向新用户发 ...

  10. python读取mysql返回json

    python内部是以tuple格式存储的关系型数据库的查询结果,在实际的使用过程中可能需要转换成list或者dict,json等格式.在这里讲解如何将查询的结果转成json字符串.这里需要导入nump ...