Azure:SQL压缩可能吗?
我在azure上运行了一个RESTful服务。目前,它没有持久性。(它只是一个通向另一个api的REST网关。)我在一个最小的Azure实例中运行它,并期望它能够处理它将获得的所有负载 我现在需要添加一些非常轻量级的持久性。一个简单的表,40-200行,8个数据列。数据是非常静态的 为了满足我的需要,做整个sqlazure的事情似乎太过分了 我的想法是:Azure:SQL压缩可能吗?,azure,Azure,我在azure上运行了一个RESTful服务。目前,它没有持久性。(它只是一个通向另一个api的REST网关。)我在一个最小的Azure实例中运行它,并期望它能够处理它将获得的所有负载 我现在需要添加一些非常轻量级的持久性。一个简单的表,40-200行,8个数据列。数据是非常静态的 为了满足我的需要,做整个sqlazure的事情似乎太过分了 我的想法是: 一个XML文件,并将其作为数据库加载到内存中。XML文件是 使用代码部署 一些更好的部署XML的方法,因此它可以 推出/更新更容易 SQL C
谢谢大家! SQL Server Compact需要以持久方式将其数据存储在某个位置,因此您需要定期将其同步到持久存储,这需要大量额外的工作,我不知道如何可靠地做到这一点,因此这可能不是一个很好的主意
对于您的简单表,Azure表存储可能就足够了。如果这还不够,那么SQL Azure是下一个选择。您可以使用XML文件作为您的存储,对它没有任何伤害,相反,这是一个非常简单且经济高效的解决方案,但有一个缺点。正如您所提到的,您目前只使用azure实例,在这种情况下,您可以将XML文件存储在
App_数据
中,但如果将来要切换到2个azure实例,则必须复制App_数据
文件夹。换句话说,您需要保持App\u数据
文件夹同步
建议
您可以使用WebClient
检索文件并将其存储在内存中,而不是将文件存储在App\u Data
中
优点:BLOB的优点是,您不必同步它
缺点:您可以进行的交易数量与成本相关。这将取决于您更新文件的次数
摘要
- 如果只使用一个Azure实例,请使用
App\u Data
- 多个Azure实例,使用不同步的
,或使用同步的BLOB
App\u Data
- 不要使用Azure Table,因为
是仅为此目的提供的指定存储BLOB
希望这对您有所帮助。桌面存储似乎非常适合。进一步:如果您的任何单个数据对象太大,无法放入表实体中,您可以将其存储在blob中,并从表行指向它。以blob形式存储并在角色statup上检索的xml文件将非常适合您的需要。如果数据可能会发生轻微的变化,并且需要在实例和重新启动之间更改,那么还有Azure表存储。