从这一讲开始,我们会介绍IaaS层以上的服务。首先是数据库,微软最有名的数据库产品无疑是SQL,从1989年诞生至今已有30个年头。一直以来DTU(数据库事务单位)是衡量数据库运算性能的重要指标,它是一个资源度量单位,表示保证可用于数据库服务层内特定性能级别的单个SQL(包括Azure SQL)数据库的资源。DTU是一定比例的CPU、内存和数据I/O。该比例由 OLTP基准工作负荷决定(OLTP基准工作负荷代表真实的OLTP工作负荷)。提高数据库的性能级别可使DTU加倍,这等同于使该数据库可用的资源增加一倍。
在Azure SQL Server,充分利用了弹性资源的优势,定义了弹性数据库事务单位eDTU。它表示可在Azure SQLServer中的一组数据库之间共享的资源集,称为弹性池。弹性池是一种简单的低成本高效益的解决方案,用于管理使用模式变化很大且不可预测的多个数据库的性能目标。
在Azure SQL数据仓储结构中,数据仓库是一种可进行大型并发处理(MPP)的基于云的向外扩展关系数据库,可处理大量数据,包括:
- 可以进行大规模并行处理的千万亿字节规模;
- 将存储从计算解耦;
- 启用增加、减少、暂停或恢复计算功能;
- 跨Azure平台集成;
- 利用SQL Server Transact–SQL(T–SQL)和工具;
- 与Power BI、机器学习、HDInsight和数据工厂无缝协作。
简单来看,在一个标准的Azure数据仓储结构中,有一个SQL控制节点用来连接应用和用户端,同时配有大型并发计算引擎自动平衡后端DMS计算节点的任务分配,前后端的调用方式包括SQL集成服务(SSIS),REST API,ODBC等等。底层blob存储提供了高性价比高密度的大数据存储资源。
通过计算与存储的解耦,SQL数据仓库可以:
- 独立与计算扩大或缩小存储;
- 无需移动数据,即可增加或减少计算能力;
- 在保持数据不受影响的情况下暂停计算机费,仅对存储付费;
- 在操作期间恢复计算容量。
当然作为云数据库必须对异构的产品同样保持兼容,例如MySQL、PostgreSQL等。Azure Database for MySQL提供了完全托管的企业就绪社区MySQL数据库即服务(DBaaS)。MySQL社区版本有助于使用所选语言和框架,将本地MySQL数据库迁移至Azure。
相较于本地MySQL,Azure Database for MySQL可以获得微软云内置的高可用性和动态缩放,有助于轻松适应客户需求的变化。还可受益于云同步的安全性和合规性,其中就包括Azure IP优势以及Azure业界领先的业务覆盖范围。以下是相关的技术细节。
- 基于Azure存储提供数据本地异地多重备份,保障数据高度可靠,同一个区域中自动同步复制3个本地副本;
- 提供防火墙功能并支持SSL链接访问数据库,以提高数据安全性;
- 支持多达30天的系统快照备份和过去7天的增量备份,用户可以选择恢复到过去7天中的任意一个时间点或者恢复到某个快照备份;
- 支持主从复制和只读实例,增加高可用性及利用读写分离来扩展运行能力;
- 提供多个不同性能层级的版本,支持弹性扩展与收缩,简化购买体验;
- 提供各项数据库性能指标的监控以及日志,让用户方便了解数据库运行情况。
类似的,Azure Data for PostgreSQL提供了完全托管的企业就绪社区PostgreSQL数据库即服务,用于应用开发和部署。作为PostgreSQL社区版本,此服务能帮助用户迁移数据库至云端,并使用可选的语言和框架。与Azure Database forMySQL相似,Azure Database for PostgreSQL也可以提供以下功能,这里就不重复展开了。
- 在数秒内伸缩的弹性扩展能力;
- 内置的高可用性;
- 内置到安全性和与时俱进的合规要求;
- 简单灵活的定价方式。
至此,小编特意查了一下,Azure也就支持上述三种关系型数据库类型,所谓的DBaaS是基于上述三种数据库的服务输出。
接下来要说的是Azure的分布式多模型数据库Cosmos DB。
据说只需单击一个按钮,即可通过其跨任意数量的Azure地理区域弹性且独立地缩放吞吐量和存储。
通过综合服务级别协议(SLA)提供吞吐量、延迟、可用性和一致性的保证,这是目前市面上其他数据库服务无法提供的。
除了上述的统包式全局分配,它还支持:
- 多个数据模型和用于访问及查询数据常用的API:模型支持多个数据,包括但不限于文档、键–值、表以及列系列数据模型。多种语言的SDK支持,包括Cosmos DB API,MongoDB API。
- 在多个区域范围内按需求灵活且独立地缩放吞吐量和存储:以秒为时间粒度轻松缩放数据库吞吐量,并随时对其进行更改。
- 构建快速响应的任务关键型应用程序:Azure Cosmos DB向其用户保证了99%的情况下端到端的低延迟,在99%的情况下,同一Azure区域内读取操作的端到端延迟和已索引写入操作的端到端延迟分别低于10毫秒和15毫秒。
- 高可用性:为所有单区域数据库账户提供99.99%的可用性SLA,为所有多区域数据库账户提供99.999%的读取可用性
上个月小编给一家银行做了关于缓存中间件选型的技术咨询,考察市面上最为通用的四款产品:Redis、Guava、EhCache和Nginx。从技术热度及产品发展趋势来看,分布式缓存Redis得到了最多的赞誉。
Azure Redis缓存以常用的开源Redis缓存为基础,改换村有Microsoft托管并可从Azure内的任意应用程序进行访问。为针对不同企业的缓存需求,Azure的Redis也分为以下几个服务级别:
- 基本级别:单个节点,多种大小,适用于开发/测试和非关键性工作负荷。没有SLA。
- 标准级别:双节点主备配置的复制缓存,有微软托管,具有高可用性SLA。
- 高级级别:包含高可用性SLA在内的所有标准级别功能,以及优于基本和标准级别缓存的性能,更大的工作负荷,灾难恢复,更高的安全性等。
另外在高级级别中还包含:
- Redis暂留:可让用户保留存储在Redis缓存中的数据。用户还可获取快照并备份数据,以便在出现故障时进行加载。
- Redis集群自动对多个Redis节点中的数据进行分片,因此用户可以创建具有更大内存大小的工作负荷(大于53GB)并获取更好的性能。
- 微软Azure虚拟网络部署增强了Azure Redis缓存的安全性和隔离性,提供了子网、访问控制策略以及其他进一步限制访问的功能。
说了这么多,Azure如何保障用户在迁移数据库时保持业务连续性呢?不能说业务不中断吧,但Azure数据库迁移服务作为一项完全托管服务,可以实现从多个数据库源到Azure数据平台的无缝迁移,并且最小化停机时间。
借助Azure数据库迁移服务,可以加速数据上云,减小云迁移的复杂程度,因为它是一个端到端的解决方案并且提供引导式流程(Wizard),更快速地完成所需操作,甚至无需用户具备专业技能即可获得可靠结果。以下是本地原生数据库到Azure目标数据库的对应关系。
2020年了,本站也不知道转型成不成功,反正阅读量是掉下来了。但是生活中还是会碰到各种咨询小编邮件问题的案子,也不错,算是身兼多家小公司的运维顾问,有时会亲力亲为,有时也会介绍朋友。毕竟邮件,我们一直是专业的,现在微软云我们也是专业的,去年小编的邮件视频教程卖了60多份,作为一个小平台已经挺满意了,感谢大家的支持。今年小编会做微软Dynamics365的视频教程,希望大家依然喜欢。
- 混合云集成方案Azure Arc - 2020年3月28日
- 【全网首播:Azure大全】11. 开发人员工具与Azure Stack - 2020年2月22日
- 【全网首播:Azure大全】10. 安全性与标识 - 2020年2月22日
还没有评论