Windows Azure数据存储服务建立在Windows Azure云计算平台之上,它充分利用了Windows Azure云计算平台的优势,具有以下特点:
(1)高安全性
用户可以自定义数据的安全级别,比如公有数据或私有数据。任何人都可以访问公有数据,但对私有数据用户必须通过授权和验证才可以访问。授权和验证是通过访问密钥来实现的,只有拥有访问密钥的人才可以访问私有数据。
(2)高性能
Windows Azure存储服务通过对数据的分散存放和动态负载均衡从而大大加快了数据访问速度。如果访问量很大,系统会自动把用户请求转移到访问量小的服务器上。如果所有服务器的访问量都很大,系统会自动把数据再进行划分或自动增加服务器,从而保证了数据访问的性能不会因为访问量的加大而降低。而不会像传统的数据存储系统那样,随着用户访问量的加大,数据访问时间也加大。
(3)海量存储
每个数据存储账号可以存放大到100TB的数据,而每个订阅账号可以有1~5个数据存储账号,也就是说,每个订阅账号总共可以存放大到500TB的数据。如果需要更大的存储空间,用户可以提出特别的申请。
(4)高可用性
Windows Azure通过对数据的复制存放来保证数据的高可用性。每个数据被保存至少3次,所以一个拷贝的丢失或出错不会影响整个数据的可用性。所以用户不用担心数据丢失或因为保存数据的服务器宕机而造成无法访问数据。
(5)可随时随地访问
每个存放在Windows Azure存储服务中的数据都有一个URL定位符,Windows Azure应用程序可以从数据中心内部访问,本地应用程序也可以使用RESTful的接口从企业内部访问,用户甚至还可以通过运行在移动设备上的应用程序来访问数据。
(6)弹性伸缩
Windows Azure数据存储服务的最大优势之一是按需使用,按使用付费。用户可以根据实际的数据存储量和用户访问量来随时增加或减少所需要的存储空间,从而不会因为用户访问量的不断变化造成数据存储空间的不足或浪费。
(7)支持多种数据存储类型
目前Windows Azure存储服务支持以下几种数据存储类型:
1、大二进制对象(Blob):它供存放非结构化的数据文件之用,比如文档、图像和影像文件。
2、表格(Table):它供存放结构化的数据之用,比如商品信息包括商品名字、价格、库存量等。虽然在使用上表格和关系型数据库中的表非常相似,但它不是关系型表。表格中包含的数据是一系列带有属性的实体记录。表格没有固定的模式(Schema),所以每个实体记录可以有不同的属性,其属性可以是多种数据类型,比如int、string、bool或datetime。应用程序可以使用OData定义的简单查询语言来访问表格中的数据。表格可以存储大到亿万个实体记录或太字节(terabyte)数据。
3、消息队列(Queue):它主要是供Web role 和Worker role 之间异步通信用的。比如用户通过Web Role提交了一个需要大量计算的任务,Web Role先把一个描述如何完成该任务的信息写到消息队列里,然后在后台运行的Worker Role可以把该信息从消息队列里拿过来进行处理。这种松耦合的结构大大提高了应用程序的整体处理性能并易于扩展。
4、驱动器(xDrive):它的主要作用是为Windows Azure应用程序提供一个NTFS文件卷,应用程序可以通过标准的NTFS API来访问存储的数据。通过驱动器存储方式,我们可以把现有的使用NTFS文件系统和标准I/O库的应用程序更为平稳地迁移到Windows Azure上。