除了支持的最大数据库大小之外,Azure SQL数据库的Web Edition和Business Edition之间是否存在任何差异?我假设命名有一些意义,但我发现的所有信息只是谈论最大数据库大小。我想知道是否存在任何其他差异,例如SLA,复制,可伸缩性等。
任何线索?
答案 0 :(得分:85)
除容量外,两个版本相同。两者都提供相同的复制和SLA。
EDIT 2014年4月3日 - 已更新,现在反映SQL数据库大小限制为500GB
编辑2013年6月17日:自从我最初发布此答案以来,一些因价格而发生变化(但规模仍然是网络和商业版本之间的唯一区别)
Web Edition可扩展至5GB,而Business Edition可扩展至500GB。另外:有了新的MSDN计划(在2013年TechEd上宣布;有关详细信息,请参阅ScottGu的blog post),您现在可以获得每月应用您的学分的服务,包括SQL数据库(最多每月150美元,具体取决于MSDN等级 - 有关新MSDN权益的详细信息,请参阅this page。
两者都允许您设置最大尺寸,并且两者都按摊销计划结算,每天评估您的容量。完整的定价详情为here。您会看到基本定价从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)
现在您需要更多容量,因此您需要切换到其中一个Business Edition层:
ALTER DATABASE Test MODIFY (EDITION='BUSINESS', MAXSIZE=10GB)
如果您需要减少数据库大小,那也可以正常工作 - 只需改回网络版:
ALTER DATABASE Test MODIFY (EDITION='WEB', MAXSIZE=5GB)
答案 1 :(得分:3)
网络和商业版正在deprecated。在此处查看最新版本的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产品(预览版)。已使用弹性数据库价格信息更新pricing page。
答案 2 :(得分:1)
商业版支持联盟:
http://azure.microsoft.com/en-us/documentation/articles/sql-database-scale-out/
"商业版支持联盟。有关更多信息,请参阅SQL数据库和SQL数据库联合教程中的联合...教程..."
答案 3 :(得分: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