19

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

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

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

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

4

5 回答 5

15

目前不可能拥有大于 150G 的单个数据库。

唯一的方法是将数据拆分到多个数据库中,一个帐户最多可以拥有 149 个用户数据库和主数据库,或者使用 SQL Azure 联合。目前,如果我没记错的话,支持的联邦总数是Int16.MaxValue - 1. 每个联邦实际上是一个独立的数据库,对开发者透明,最大可达 150GB。

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

更新

我不会完全同意@ryancrawcour。他所解释的只是冰山的顶峰。所需重构的数量实际上取决于应用程序如何使用数据。我将仅提及一些考虑因素(根本不是完整的图片)。考虑以下任何一项:

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

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

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

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

自 2014 年 4 月 3 日起,单个数据库的最大大小已增加到 500GB。迄今为止唯一可用的信息在这里。请注意,管理门户仍未显示此选项(截至今天和现在:4. 2014 年 4 月,格林威治标准时间 15:00+0:00)。

于 2012-09-12T19:49:43.103 回答
2

还有持久性 VM 的新 Azure 功能(当前处于预览状态),它允许您将本地应用程序迁移到云中,而只需进行最少的更改。

进一步阅读:基础架构即服务系列:在 Windows Azure 虚拟机中运行 SQL Server指南也可能会有所帮助。

编辑

是与 Sql Azure 的比较

于 2012-09-14T04:05:49.057 回答
2

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

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

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

此外,使用 WASD 联合,您可以更精细地划分 SQL 工作负载。

问候,

帕特里克

于 2012-09-14T09:37:56.780 回答
1

在考虑您的扩展选项时,请注意,截至 2014 年 4 月 3 日,Microsoft 宣布即将对 SQL Premium 进行更改,包括将每个 SQL 数据库实例扩展至 500GB 的能力(以及异地复制、自助恢复和更高的正常运行时间 SLA )。尚未宣布日期,但您可以在此处阅读有关公告的详细信息。

于 2014-04-03T17:03:51.933 回答
0

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

于 2015-09-29T20:01:28.593 回答