Azure表存储和缓存

时间:2013-01-07 21:43:47

标签: azure azure-table-storage azure-caching

是否值得使用Azure缓存预览缓存Azure表存储中的数据? 或者在大规模应用中表存储的速度是否足够快?

由于

2 个答案:

答案 0 :(得分:8)

简短的回答取决于。在我目前正在处理的应用程序中,有一些信息我们使用缓存来处理从表存储中检索数据的延迟,以及每秒容纳所需的事务数。

我们开始提供来自Table Storage的信息,并且仅在我们的性能要求决定时才转移到缓存。我建议采用类似的方法:让它工作,然后加快速度。

答案 1 :(得分:5)

除了 Robert 所说的,你还应该考虑以下几点:

Windows Azure表存储允许存储最大100TB(以块为单位)。乍一看,这个数据大小可能看起来势不可挡。但是,可以对表存储进行分区。 Azure存储区的每个分区都可以通过Azure控制器移动到单独的服务器,从而减少任何单个服务器上的负载并提高性能。

如果您的应用程序负载非常高,那么使用频繁插入进行缓存将非常快速地接近最大缓存大小,然后启动缓存项目驱逐进程。在大多数情况下,频繁插入缓存和频繁缓存项驱逐过程最终会导致性能下降而不是改进。然后,您需要增加缓存最大大小,这反过来会影响您的应用程序成本(有时这可能是一个阻止程序)。

最后但并非最不重要的是,您可以使用OData协议访问Windows Azure表存储数据,并使用WCF数据服务.NET库进行LINQ查询;你没有Azure Cache的那种能力。

请注意,在您的情况下,这些点可能有效,也可能无效。一切都取决于您的系统架构;预期负荷等

我希望我的回答可以帮助您做出良好的系统架构决策。