使用Azure表存储的查找表 - 值得创建工作服务只是为了管理它?

时间:2010-11-01 11:57:26

标签: azure azure-storage azure-table-storage azure-worker-roles

我正在考虑为Azure平台进行一些开发。我不需要从SQL Azure获得完整的Relational内容,我会非常有兴趣使用Table Storage。

现在,我需要能够做的一件关系式事务是表示我的存储中的表之间的一对多和多对多关系。

我很高兴如何使用带分区和行键的中间表来表示这一点,就像常规数据库在内部表示它们一样。

我想知道的是,是否值得创建一个工作服务只是介于存储和访问它的任何东西之间,以便创建一个可以监督我正在寻找的有限程度的参照完整性的前端。

我可以很容易地做到这一点作为客户端的一部分,但我想知道是否在云中托管服务意味着更低的网络延迟,因为任何涉及这些引用的查询都可能需要与之交谈三个不同的表,并且可能这些请求在云中发布的服务和存储之间应该快得多,因此只有一个来自云外的请求而不是几个。

如果这是一个有用的策略,是否有现成的工具呢?如果不是什么会更好或是没有明显的好处?我应该简单地将其删除并使用SQL For Azure或某种异构解决方案,其中我将大数据存储在表存储中以及我在SQL中查找和表引用?

1 个答案:

答案 0 :(得分:3)

托管服务不仅可以更快地访问表存储;服务和表存储之间的带宽不会被计费(只要它在同一个数据中心)。

将表存储抽象为服务是一个好主意,可以使用辅助角色或WCF服务Web角色来完成。如果您正在观看今年PDC的公告,您可能已经看到即将推出的Web角色将拥有完整的IIS并能够托管多个Web应用程序,因此您可能会以相同的角色托管您的网站和服务(更多成本) - 比在不同角色中托管更有效。)