63

除了支持的最大数据库大小之外,Azure SQL 数据库的 Web 版和商业版之间是否有任何区别?我假设命名具有一定的意义,但我发现的所有信息都只是谈论最大数据库大小。我想知道是否还有其他差异,例如 SLA、复制、可伸缩性等。

有什么线索吗?

4

4 回答 4

85

除了容量外,这两个版本是相同的。两者都提供相同的复制和 SLA。

编辑 2014 年 4 月 3 日 - 更新以反映 SQL 数据库大小限制现在为 500GB

编辑 2013 年 6 月 17 日:自从我最初发布此答案以来,定价发生了一些变化(但尺寸仍然是网络版和商业版之间的唯一区别)

网页版可扩展至 5GB,而商业版可扩展至 500GB。另外:通过新的 MSDN 计划(在 TechEd 2013 上宣布;有关更多详细信息,请参阅 ScottGu 的博客文章),您现在将获得每月货币积分,用于您想要应用积分的任何服务,包括 SQL 数据库(每月最高 150 美元) ,取决于 MSDN 层 - 有关新 MSDN 优势的详细信息,请参阅此页面)。

两者都允许您设置最大大小,并且都按摊销时间表计费,每天评估您的容量。完整的定价细节在这里。您会看到基本定价从 4.995 美元(最大 100MB)开始,然后跃升至 9.99 美元(最大 1GB),然后开始对额外 GB 进行分层定价。

无论版本如何,您都拥有完全相同的功能集 - 都是关于容量限制的。您可以使用 T-SQL 轻松更改最大容量,甚至更改版本。例如,您可以从 Web 版本开始:

CREATE DATABASE Test (EDITION='WEB', MAXSIZE=1GB)

您的需求不断增长,因此您增加到 5GB:

   ALTER DATABASE Test MODIFY (EDITION='WEB', MAXSIZE=5GB)

现在您需要更多容量,因此您需要切换到商业版层之一:

ALTER DATABASE Test MODIFY (EDITION='BUSINESS', MAXSIZE=10GB)

如果您需要减小数据库大小,也可以使用 - 只需更改回 Web 版本:

ALTER DATABASE Test MODIFY (EDITION='WEB', MAXSIZE=5GB)
于 2010-08-19T11:57:31.997 回答
3

Web 版和商业版已被弃用。在此处查看最新版本的 Azure SQL DB(基本、标准、高级):http: //azure.microsoft.com/en-us/pricing/details/sql-database/

您还可以在此处找到有关 SQL DB V12 最新功能的信息:http: //azure.microsoft.com/en-us/documentation/articles/sql-database-preview-whats-new/

编辑(4/29):

查看今天在 Build 上宣布的新Elastic DB产品(预览版)。定价页面已更新为 Elastic DB 价格信息。

于 2015-04-08T20:29:13.403 回答
1

记录在案的区别是商业版支持联合:

http://azure.microsoft.com/en-us/documentation/articles/sql-database-scale-out/

“商业版支持联合。有关详细信息,请参阅 SQL 数据库中的联合和 SQL 数据库联合教程 ...”

于 2014-04-16T02:34:10.523 回答
0

我注意到两个版本之间的行为差​​异。在我们为 QA 设置的商业版中,以下代码片段在应用外键时会出错,除非在添加列后放置“GO”。然后它工作正常。这在我们用于开发的 Web 版本数据库中是不需要的。

IF NOT EXISTS (SELECT * 
                FROM INFORMATION_SCHEMA.COLUMNS 
               WHERE TABLE_SCHEMA='ASSIGN'
                 AND TABLE_NAME = 'ASSIGNTARGET_EXCEPTION' 
                 AND COLUMN_NAME = 'EXCESS_WEAR_FLAG')
    ALTER TABLE [ASSIGN].[ASSIGNTARGET_EXCEPTION] ADD [EXCESS_WEAR_FLAG] [varchar](1) NULL
-- GO  -- placing this here makes this sectino work.
IF NOT EXISTS (SELECT * 
                 FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS 
                WHERE  TABLE_SCHEMA ='ASSIGN'
                  AND TABLE_NAME = 'ASSIGNTARGET_EXCEPTION' 
                  AND CONSTRAINT_NAME = 'CHK_ATEXCPTN_EXCESSWEARFLAG')
BEGIN
    ALTER TABLE [ASSIGN].[ASSIGNTARGET_EXCEPTION]  WITH NOCHECK ADD  CONSTRAINT [CHK_ATEXCPTN_EXCESSWEARFLAG] CHECK  (([EXCESS_WEAR_FLAG]='N' OR [EXCESS_WEAR_FLAG]='Y'))
    ALTER TABLE [ASSIGN].[ASSIGNTARGET_EXCEPTION] CHECK CONSTRAINT [CHK_ATEXCPTN_EXCESSWEARFLAG]
END
于 2013-02-26T16:19:57.137 回答