数据库抽象 - Azure表

时间:2012-05-30 10:46:03

标签: azure azure-table-storage

我将数据存储在Azure表中。在当前的工作代码中,我将tablestorage连接放在控制器中。但老板似乎并不满意。我们需要以控制器独立的方式抽象数据库,以获取输入。将来我们可能会转而使用普通的Sql。这就是老板肯定想要这种抽象的原因。使迁移更容易!

任何帮助或提示。 TNX

编辑.... 在使用azure表存储时寻找最佳实践。我真的需要制作一个干净的控制器并只使用函数调用。寻找任何教程。 tnx提前

1 个答案:

答案 0 :(得分:0)

在抽象出Windows Azure表存储时应该小心,特别是当您对数据库使用相同的抽象时。表存储不是数据库。

数据库允许您使用事务,但表存储中的“事务”完全不同(例如,限制在单个分区上的100条记录)。数据库具有索引,但在表存储中,您需要使用分区和行键进行优化。表存储实体不能大于1MB,查询时间有限,...(更多信息:http://msdn.microsoft.com/en-us/library/windowsazure/dd179338.aspx

如果将所有这些隐藏在抽象层中并使其工作就好像它可能是一个数据库,那么您可能无法充分利用表存储的功能。如果您仍然需要创建一个抽象,请创建一个覆盖所有表存储功能并处理其限制的抽象。

一个很好的起点是查看AzureToolkit:http://azuretoolkit.codeplex.com/SourceControl/changeset/view/46c9fb9ff82a#Source%2fAzureToolkit%2fIAzureTable.cs