【问题标题】:Scalable CRUD application. Storage technique可扩展的 CRUD 应用程序。储存技术
【发布时间】:2013-01-26 14:04:54
【问题描述】:

我们正在讨论一个带有少量后台处理的 CRUD 应用程序(每个用户每天大约 20 个决策。不大)。我们计划每天进行大约 2000 万笔交易。大多数这些交易将是小的文本。大约 15% 的图像大小约为 1MB。主要是阅读。客户数量可能在 500,000 到 100 万之间。

我们正在考虑将其托管在 Windows Azure 上。对于这种应用程序,我可以使用哪些存储技术?我在考虑用于图像的 Azure 表,用于其他事务数据的 SQL Azure。制作多个数据库会使其更具可扩展性吗?我的意思是,如果我有两个实体,我可以将两个数据库托管在两个不同的独立服务器上,从而打破规范化。那会有好处吗?我在这里很困惑,对处理大数据了解不多。

【问题讨论】:

标签: sql database azure


【解决方案1】:

首先阅读Windows Azure Storage Abstractions and their Scalability Targets。您不能真正将图像存储在 Azure 表中。它们限制为每个实体 1MB。您可以将图像存储在启用了有效交付的 Azure BLOB(使用 CDN)中,而不是 SQL,将属性数据和指向图像的链接存储在 Azure 表中。引用的文章描述了可扩展性和性能目标。

【讨论】:

  • 感谢链接真的很有帮助。因此,我想到了一种与 blob、表和 SQL Azure 的混合搭配。由于事务数据是高度相关的,我将执行大量查询、连接等,这可能对表来说不方便且成本高昂。我可以在表(不需要太多处理和查询能力的数据)和 SQL(其余)之间分离数据
【解决方案2】:

如果您以二进制格式存储图像,那么 azure table 将不够用,因为表行的最大大小为 1MB(包括分区键和行键)。因此,对于存储图像,Blob 存储是最好的......

如果事务数据是非关系的,那么您可以使用 Azure 表...它可以比 sql azure 更好地扩展。 http://msdn.microsoft.com/en-us/library/windowsazure/jj553018.aspx

【讨论】:

  • 事务性数据是高度相关的,会进行大量的查询、连接。
猜你喜欢
  • 1970-01-01
  • 2020-04-11
  • 2023-03-14
  • 2015-04-19
  • 2014-04-23
  • 2010-11-29
  • 1970-01-01
  • 1970-01-01
  • 2016-09-20
相关资源
最近更新 更多