阿里云重磅发布RDS for SQL Server AlwaysOn集群版
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集群版的更多相关文章
- SQL Server AlwaysOn 集群 关于主Server IP与Listener IP调换的详细测试
1. 背景 SQL Server 搭建AlwaysOn后,我们就希望程序连接时使用虚拟的侦听IP(Listener IP),而不再是主Server 的IP.如果我们有采用中间件,则可以在配置中,直接用 ...
- SQL Server AG集群启动不起来的临时自救大招
SQL Server AG集群启动不起来的临时自救大招 背景 前晚一朋友遇到AG集群发生来回切换不稳定的情况,情急之下,朋友在命令行使用命令重启WSFC集群 结果重启WSFC集群之后,非但没有好转,导 ...
- 搭建SQL server AwaysOn集群
1.环境 系统:windows server 2012 R2 数据库版本:SQL server 2012 三台服务器,IP分别是:10.10.10.111,10.10.10.112,10.10.10. ...
- 阿里云重磅发布DMS数据库实验室 免费体验数据库引擎
2月27日,阿里云数据管理DMS发布年度巨献——数据库实验室,用户可在该实验室环境下免费体验数据库引擎.以及DMS各项产品功能.数据库实验室是DMS所提供的体验空间,免费赠送数据库引擎资源. 用户只需 ...
- 阿里云搭建JAVA WEB环境(SQL Server + TomCat + 配置域名)
假期刚刚搭完,先写个提纲,今晚写完: 1.申请一个月的免费的云服务器ECS; 2.在云服务器上安装Java开发环境+Sql Server+Tomcat; 3.购买域名并认证,绑定服务器共有IP地址; ...
- 图文详解在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 ...
- Sql Server 2012 集群配置
基于Windows Server 2008 R2的WSFC实现SQL Server 2012高可用性组(AlwaysOn Group) 2012年5月 微软新一代数据库产品SQL Server 201 ...
- 创建SQL Server数据库集群的经历
自己尝试安装SQL Server集群和配置AlwaysOn可用性组,服务器系统是Windows Server 2012 R2,SQL Server是2014企业版,我的环境是一台服务器,然后用Hype ...
- (转载) SQL Server AG集群启动不起来的临时自救大招
背景 前晚一朋友遇到AG集群发生来回切换不稳定的情况,情急之下,朋友在命令行使用命令重启WSFC集群 结果重启WSFC集群之后,非但没有好转,导致整个AG无法启动,主副本和辅助副本都处于正在解析的状态 ...
随机推荐
- boost algorithm
BOost Algorithm provides algorithms that complement the algorithms from the standard library. Unlike ...
- git常用操作命令2
以github为例,测试本地库与远程库github之间的交互 1. 本地初始化一个git库 创建一个test文件夹,然后cd到test文件内, 执行git init命令 初始化本地库成功!! ...
- PHP curl_multi_exec函数
curl_multi_exec — 运行当前 cURL 句柄的子连接 说明 int curl_multi_exec ( resource $mh , int &$still_running ) ...
- POJ 3481 Double Queue (treap模板)
Description The new founded Balkan Investment Group Bank (BIG-Bank) opened a new office in Bucharest ...
- 正确设置nginx/php-fpm/apache权限 提高网站安全性 防止被挂木马
核心总结:php-fpm/apache 进程所使用的用户,不能是网站文件所有者. 凡是违背这个原则,则不符合最小权限原则. 根据生产环境不断反馈,发现不断有 php网站被挂木马,绝大部分原因是因为权限 ...
- 源码分析笔记Vector
概述 继承抽象类AbStractList,实现接口List.RandomAccess.Cloneable以及序列化接口默认容量大小为10,扩容增量为0,扩容为原容量的2倍如设置的增量大于0,则扩容为( ...
- (选做)实现mypwd
选做 实现mypwd 实验内容: 1.学习pwd命令. 2.研究pwd实现需要的系统调用(man -k; grep),写出伪代码. 3.实现mypwd. 4.测试mypwd. 实验步骤: 学习pwd命 ...
- 网络安全随笔 - Linux的netstat查看端口 0.0.0.0与127.0.0.1的区别
linux运维都需要对端口开放查看 netstat 就是对端口信息的查看 # netstat -nltp p 查看端口挂的程序 [root@iz2ze5is23zeo1ipvn65aiz ~]# n ...
- 用 Flask 来写个轻博客 (34) — 使用 Flask-RESTful 来构建 RESTful API 之三
目录 目录 前文列表 应用请求中的参数实现 API 分页 测试 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask 来写个轻博客 (2) - Hello World! 用 F ...
- java继承方法覆盖
public class TestB { private void f() { System.out.println("TestB"); } public static void ...