克服Windows Azure Sql数据库150 gb大小限制

时间:2012-09-12 19:18:02

标签: database windows azure azure-sql-database

SQL Azure的数据库大小限制为150 GB。我已多次阅读他们的文档并在线搜索但我不清楚这一点:使用联合会是否允许开发人员增长超过150 GB的数据库?例如,我可以拥有几个150GB的联盟成员。

如果没有,我如何在Windows Azure上处理大于150 GB的数据库?

基本上,如何在Windows Azure上扩展超过150 GB

如果没有其他方式RDS是一个不错的选择(分享任何其他选择)

5 个答案:

答案 0 :(得分:15)

目前,单个数据库不可能超过150G。

唯一的方法是将数据拆分为多个数据库,一个帐户最多可以包含149个用户数据库和主数据库,或者使用SQL Azure Federations。目前,如果我没有记错,支持的联盟总数为Int16.MaxValue - 1。每个联邦实际上都是一个独立的数据库,对开发人员来说是透明的,最高可达150GB。

但是,SQL Azure Federations有其自身的优缺点,以及一些数据访问层重新分解。如果您有兴趣,可以在SQL Azure Federations上查看这些很酷的视频:

<强>更新

我不会完全同意@ryancrawcour。他解释的只是冰冷的高峰。所需的重新分解量实际上取决于应用程序如何消耗数据。我只想提一些考虑的因素(根本不是完整的图片)。请考虑以下任何一种情况:

  • 所有联合会通用的数据(如何获取此数据)
  • 存储过程,即后处理数据 - 您必须在每个联合成员中迭代并执行该存储过程。无法在所有联合中执行一次存储过程并处理数据。
  • 汇总数据,分布在多个联盟成员
  • 列出来自多个联盟成员的数据。

这些只是您需要考虑的几项操作,并且在每次查询之前不需要“只更改连接字符串并执行一次使用联合...”。实际上使用SQL Azure Federations,您根本不需要更改连接字符串。它是完全相同的SQL Azure连接字符串。 “USE FEDERATION ...”语句是您在每次查询之前执行的语句。但这不仅仅是唯一的方式。如果一个人正在使用EntityFramework(模型优先,或代码优先,或其他),怎么样。事情变得更加复杂,需要真正了解SQL Azure Federations。

我想说SQL Azure Federations是思考数据,建模和规范化的不同方式。

更新2 - Microsoft宣布的新数据库大小

截至2014年4月3日,单个数据库的最大大小已增加到500GB。迄今为止唯一可用的信息is here。请注意,管理门户仍未显示此选项(截至今日和现在:4。Apri 2014,15:00 GMT + 0:00)。

答案 1 :(得分:2)

还有持久性虚拟机的新Azure功能(目前处于预览状态),允许您将本地应用程序迁移到云,只需进行少量更改。

进一步阅读:Infrastructure as a Service Series: Running SQL Server in a Windows Azure Virtual MachineThis指南也可能有用。

修改

Here与Sql Azure进行比较

答案 2 :(得分:2)

我前段时间一直在寻找这些相同的答案。除了Anton提供的答案(非常准确)之外,我发现您可以通过负载平衡和镜像使您的WAVM与SQL Server安装冗余。

WASD的优势在于一切都是自动化的。例如。当你的WAVM实例从负载均衡器的通知中取出时,你需要自己带一个新的。 WASD负责所有这些。

使用WASD Federations,您可以扩展到75TB的数据(如果我没记错的话),而使用带有SQL Server的WAVM,您可以扩展到16TB的顶部。

使用WASD Federations,您可以更精细地划分SQL工作负载。

此致

Patriek

答案 3 :(得分:1)

在考虑您的扩展选项时,请注意,自2014年4月3日起,Microsoft宣布即将对SQL Premium进行更改,包括将每个SQL数据库实例扩展到500GB的能力(以及地理复制,自助服务还原和更高的正常运行时间SLA)。尚未公布日期,但您可以阅读有关公告详情here

答案 4 :(得分:0)

现在有1 TB的可用级别 - 请参阅https://azure.microsoft.com/en-us/pricing/details/sql-database/并查看高级级别。