适用于超大型数据库的 SQL Azure
在数据库包含数亿行、大小达到 500GB、可能有大约 20 个用户的场景中。主要是用于稍后报告聚合数据的数据存储。
SQL Azure 能够处理这种情况吗?如果是这样,走这条路有意义吗?与在主机代管设施中购买并安置 2 台以上高端服务器(每台 15,000 美元至 20,000 美元)+ 所有维护和备份相比。
In a scenario with a database containing hundreds of millions of rows and reaching sizes of 500GB with maybe ~20 users. Mostly it's data storage for aggregated data to be reported on later.
Would SQL Azure be able to handle this scenario? If so, does it make sense to go that route? Compared to purchasing and housing 2+ high end servers ($15k-$20k each) in a co-location facility + all maintenance and backups.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您是否考虑过使用 Azure 表存储? Azure 表不具有引用完整性,但如果您只是存储许多行,这适合您吗?您可以使用 SQL Azure 来满足事务需求,并使用 Azure 表来满足 SQL Azure 中不适合的表。此外,Azure Tables 会更便宜。
Did you consider using the Azure Table storage? Azure Tables do not have referential integrity, but if you are simply storing many rows, is that an option for you? You could use SQL Azure for your transactional needs, and use Azure Tables for those tables that do not fit in SQL Azure. Also, Azure Tables will be cheaper.
SQL Azure 数据库限制为 50Gb(目前)
如常规中所述准则和限制
SQL Azure databases are limited to 50Gb (at the moment)
As described in the General Guidelines and Limitations
我不知道 SQL Azure 是否能够处理您的情况 - 500GB 似乎很多,并且不在定价列表中(最大 50GB)。我只是想提供有关定价的观点。
SQL Azure 的官方定价约为 10 美元/GB/月 ( http://www.microsoft.com/ windowsazure/pricing/)
因此,500 GB 大约每月 5k 美元左右。 2台20k的高端服务器(不含许可费、维护和备份)大约需要8个月才能收回成本。
或者,从另一个角度来看:假设您每 4 年更换一次服务器,240k $(5k $ * 48 个月)的预算是否涵盖硬件、安装/配置、许可费用和维护费用? (不计算带宽和备份,因为使用 SQL Azure 时您还要支付额外费用)。
I don't know whether SQL Azure is able to handle your scenario - 500GB seems a lot and does not figure in the pricing list (50GB max). I'm just trying to give perspective about the pricing.
Official pricing of SQL Azure is around 10$ a GB/month ( http://www.microsoft.com/windowsazure/pricing/)
Therefore, 500 GB would be around 5k $ each month roughly. 2 high-end servers (without license fees, maintenance and backups) of 20k take about 8 months to pay off.
Or, from an other point of view: Assuming you change your servers every 4 years, does the budget of 240k $ (5k $ * 48 months) cover the hardware, installation/configuration, licence fees and maintenance costs? (Not counting bandwidth and backup since you'll pay that extra too when using SQL Azure).
一种选择是使用 SQL Azure 分片。这是一种将数据分布在多个 SQL Azure 数据库上的方法,其优点是每个数据库将使用不同的 CPU 和数据库。硬盘驱动器(因为每个数据库实际上存储在数据中心的不同机器上),这应该会给您带来非常好的性能。当然,这是在假设你的数据库有被分片的可能性的情况下。 这里有一些关于分片的更多信息。
One option would be to use SQL Azure sharding. This is a way to spread the data over multiple SQL Azure databases and has the advantage that each database would use a different CPU & hard drive (since each db is actually stored on a different machine in the data center) which should give you really good performance. Of course, this is under the assumption that your database has the possibility of being sharded. There is some more info on this sharding here.