Azure Table介绍
Microsoft Azure提供了几个不同的存储选项,包括存储文件的Blob,传递消息的Queue,高度可扩展的,支持数据分级的Table,此外,Microsoft Azure也提供了关系数据存储,它是通过在SQL Azure上使用传统的机制实现的。本文介绍一种使用Azure Table存储数据的简单方法。
我们知道Azure Table是在云中为我们存储数据,为运行在Azure或其它任何地方的应用程序提供数据服务的,Azure Table是构建在REST协议上的,任何平台都可以很容易连接和使用Table中的数据,大部分.NET开发人员都会使用Microsoft Azure SDK提供的客户端存储库来访问Azure Table。
在开始前,我们先简要地看一下Table是如何工作的,当你创建一个Azure订阅账号后,就可以用这个账号登录到Azure门户,然后就可以创建一个存储账号,与存储账号关联的是一个存储容器,你可以用这个存储账号使用多种存储类型,包括Table,Blob和Queue。
在云中创建Table和销毁Table都很简单,与传统数据库相比,这是它的主要优势,在创建Table时感觉不到任何延迟和系统开销,应用程序启动时可以查看它需要的Table是否已经创建好,如果还没有,可以就在这个时候立即创建,甚至可以在这个时候将默认数据填充到Table中。
每个Table是一个实体集,和你在程序中使用的实体对象基本上一样,每个实体有它自己的属性和值,这意味着每个实体有它自己的模型,这是一个好消息,在设计和运行期间可以提供最大的灵活性,这也是和传统关系数据库之间的最大不同。
创建Azure Table
下面我们开始构建一个Azure Table,然后写一点代码来使用它,Table可以先在我们的本地Development Dtorage Fabric中运行,然后移动到云中投入生产。我们要写的代码是一个简单的命令行程序,重点放在与Table交互的核心代码上,你会发现我们只用了一行代码来创建Table,我们不需要任何代码来创建列、存储过程、函数或索引。
我们将构建一个小型应用程序跟踪停车场服务人员发出的停车票,首先我们要创建一个实体类,这个类包含系统的旧数据,即需要跟踪的每张票据,下面是这个类的定义代码:
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
--> public class ParkingTicket
{
public string LotID { get ; set ; }
public string TicketID { get ; set ; }
public DateTime DateIssued { get ; set ; }
public int AttendentID { get ; set ; }
public string CarTagNumber { get ; set ; }
public string FineAmount { get ; set ; }
public string CauseForTicket { get ; set ; }
}
转载于:http://blog.itpub.net/9895082/viewspace-663816/