什么是 Azure SQL?
最近,微软推出了Azure SQL,将所有 SQL Server 产品整合到一个套件中。
Microsoft 正在将 Azure 平台中运行的所有 SQL 选项分组到一个产品组合中。托管产品系列,让您可以更轻松地查看它们并选择最适合您需求的产品。
如果您已经熟悉 Azure SQL 数据库,那么这种轻微的转变意味着 Azure SQL 还包括 虚拟机上的 SQL Server。微软正在不断投资并增强与之相关的优势。
正如下面所看到的,Azure SQL 中有几种不同的选项。
因此,从左到右,我们越倾向于云原生解决方案。换句话说,你的控制权会减少,但你可以获得更多云平台提供的资源。
虚拟机上的 SQL Server
其功能与将 SQL Server 部署到本地 VM 相同。
第一个选项是基础设 博蒂姆数据库 施即服务 (IaaS)。Microsoft 负责管理基础设施,因此基本上,您可以使用所有特性和功能,以及管理它的所有开销。
通常,这是需要操作系统级访问的迁移和应用程序的最佳选择。有广泛的 SQL 和操作系统版本支持。
Azure 虚拟机上的 Azure SQL 没有特定的服务层。如果您正在考虑 Azure SQL VM,则需要查看映像 、存储配置以及最后的快速检查表 以获得最佳性能。
大约一年前,资源提供商 发布,它将 Azure 市场镜像的功能带到了 Azure VM 上自行安装的 SQL Server 实例中。
Azure SQL 数据库
通过此平台即服务 (PaaS) 选项,Azure SQL:如何选择正 组织可以减少管理开销并快速提供高度弹性的服务。
您无需为可扩展性、高可用性或灾难恢复构建数据库安装。 所有这些功能均由服务自动提供。
Azure SQL 数据库使用Microsoft SQL Server 数据库引擎的最新稳定版本 。您可以使用高级查询处理功能,例如 高性能内存技术 和 智能查询处理。
SQL Server 的最新功 电信行业的了解你的客户 (kyc) 标准 能首先发布到 SQL 数据库,然后发布到 SQL Server 本身。您可以获得最新的 SQL Server 功能,无需进行修补或升级,这些功能已在数百万个数据库中进行了测试。
需要注意的是,并非所有 SQL Server 功能都可在 Azure SQL 数据库中使用。您无法使用本地功能,例如变更数据捕获 (CDC)、公共语言运行时 (CLR)、数据库邮件等。您可以在此处查看所有可用功能。
SQL 数据库可以成为各种现代云应用程序的正确选择,因为它使您能够处理关系数据和 非关系结构,例如图形、JSON、空间和 XML。
目前,Azure SQL 数据库提供两种部署选项
1. 单一数据库
它类似于SQL Server 中的包含数据库。每个数据库都有自己的资源(DTU 或 V-Core),并且此资源不会与同一单个实例中的其他数据库共享。在基于 vCore 的购买模型中,可以使用超大规模和 无服务器 服务层选项。
2. 弹性池2.Elastic pool
它是多个 Azure 单一数据库的集合,具有通过 逻辑 SQL Server管理的一组共享资源。数据库可以移入和移出弹性池。它为管理具有可变使用模式的多个数据库的性能提供了一种经济高效的解决方案。
Azure SQL 托管实例
Azure SQL 托管实例是一种服务,它是前两个选项的混合,旨在提供与最新 SQL Server(企业版)数据库引擎的轻松兼容性。
它将最广泛的 SQL Server 引擎兼 容性与完全托管和常青平台即服务的所有优势结合在一起。
其背后的好处是,您可以以最少 by 列表 的更改将本地 SQL 服务器和应用程序转移到 Azure。
这些实例使您能够部署模拟本地部署并提高安全性的本机虚拟网络 (VNet) 。
使用托管实例,您将可以访问许多功能,如链接服务器、数据库邮件、资源管理、服务代理等。
选择正确的购买模式
一旦您选择了部署选项,接下来需要决定的就是购买模式。
1. DTU模型
基于 DTU 的购买模型是首次针对 Azure SQL 数据库提出的。
微软的设计很简单。基本上,你进入一个 DTU 级别Azure SQL:如何选择正 你就会获得一定量的计算和存储,但它们是线性扩展的,而不是独立的。
2. VCore 模型
如果您选择 SQL 托管实例,这里的选择很简单,因为您只有可用的vCore 模型。
这是一种较新的模型,允许您独立扩展计算和存储。
如果您拥有现有许可证,微软推荐的模型将使您能够使用 Azure 混合优势等并节省成本。
选择服务层以实现性能和可用性
在这篇文章中,我们将重点介绍 vCore 购买模型(推荐),但您可以轻松比较 vCores 和 DTU模型。
在 vCore 购买模型中,有三个服务层级,如下所示:
1.通用
这对于大多数业务工作负载而言都是理想的选择。 Azure SQL:如何选择正 提供面向预算、平衡且可扩展的计算和存储选项。您将在 SSD 上运行临时数据库,并将数据和日志文件存储在 Azure 高级存储中。全球分布的备份可在发生灾难性故障时为您提供保护。
2.业务关键型
适用于对响应延迟要求低的应用程序。 Azure SQL:如何选择正 它还通过使用多个独立副本提供最高的故障恢复能力。只有此层可以利用 内存中 OLTP 来提高性能。您将拥有临时数据库数据和日志文件,所有这些都在本地 SSD 上运行。在后台,Microsoft 会为您部署一个始终在线的可用性组。因此,在任何给定时间,您都将拥有三个辅助副本。
3.超大规模
它非常适合具有高度可扩展存储和读取扩展要求的业务工作负载。目前仅适用于单个数据库,不适用于托管实例。这是唯一能够自动将存储扩展到 100 TB 的选项。
有关这三个层级(包括场景)之间的更深入解释,您还可以参考 Microsoft服务层级特征 文档。
预配置还是无服务器计算?
如果您在单个数据库和基于 vCore 的模型中选择通用用途,Azure SQL:如何选择正 那么您就需要针对所支付的计算做出新的决定:
1. 已配置
允许您选择为工作负载配置的确切资源量。通常,此计算层按小时计费。
2.无服务器
具有自动暂停和恢复功能(由您设置时间延迟),这意味着当您的数据库暂停时,您只需支付存储费用。因此,您只需为您使用的计算资源(内存和 vCore)付费。
不幸的是,无服务器计算层并不适合所有数据库。空闲一段时间后,您可能会遇到计算能力提升的一些延迟。此外,自动暂停后,与数据库的第一次连接将失败。
有关两种计算选项(包括场景)之间差异的更深入解释,您可以参考 文档中的详细比较,并务必查看 定价信息。
概括
Azure 提供了很多选项和灵活性,因此您可以得到您需要的东西,一点儿也不差。
希望您已经注意到,有几个主要决定需要做出。
上图总结了服务层级选项,并根据用户需求提出了一些额外的考虑。