【IT168 技术】Windows Azure Storage 允许云计算应用的开发者在云端存储应用程序数据,为云计算提供耐用、可扩充、具备可用性且有效率的储存服务。Windows Azure Storage通过Development Storage和VS 2008/VS 2010结合使用,为开发者提供了熟悉、友好的程序设计界面。
Windows Azure Storage由三个重要部分构成:
Windows Azure Blob:存储大型数据,包括二进制数据和文件。
Windows Azure Table:存储表数据,类似关系数据库中的数据表,单有所不同,将在后文中介绍。
Windows Azure Queue:为异步工作提供分派消息服务,有点类似Windows系统的消息队列。
在某种程度上来说,我们可以把Blob认为是云端的文件系统。在本文中,我们的重点是Windows Azure Blob。通过对Blob架构分析,以一个完整的实例来一步一步介绍如何使用Blob进行开发。
Blob架构分析
对Blob架构的分析从两个方面来介绍:Blob应用程序架构和Blob存储结构。
(1) Blob应用程序架构
Blob应用程序架构如图1所示:
图1 Blob应用程序架构
通过图1我们可以看到,Blob存储数据是通过一个简单的层级关系来实现的,每个账户Account下有一个容器,这个容器就是用户定义的一套只有一个属性的Blobs(Blob集合),容器不直接存储数据,每个Blobs包含了多个Blob,这些Blob可以分为Blocks和Pages两类。Blob的存储是采用REST(Representational State Transfer,表象化状态转变)方式来进行的,有关REST可以访问维基百科地址:http://zh.wikipedia.org/zh-cn/REST来了解一下。
同时在图1中,我们可以看到存储账户的地址、Blob Container的地址、Blob的地址,如一个Blob的实际应用的地址如下:
http://127.0.0.1:10000/devstoreaccount1/imagefiles/0cd5c5f2-063e-4092-b960-a987c5654dee.png
那么标示我们使用的Storage是本地存储
账户:devstoreaccount1
Blob Container:imagefiles
Blob文件:0cd5c5f2-063e-4092-b960-a987c5654dee.png
(2) Blob存储结构
在本地开发的环境中,我们使用了安装在本地的SQL Express。要想了解Blob的存储结构,首先连接到数据库上看看。
使用SSMS连接本地的SQL Express数据库,如图1所示:
图2 连接本地SQL Express