咱们如今正处于一个数据爆炸的年代,大数据、开放数据炒的如火如荼,代表数据给咱们带来了不可估量的价值。数据库
对于企业来讲,保存、管理和维护数据已经成为一项重要的挑战。大量存储设备的采购、部署、数据规模的不断增加,对于须要为其数据使用可伸缩的、持久的且具备高可用性的存储的应用程序,云计算使其有了新的方案可供选择,这正是 Microsoft 开发 Azure 存储服务的缘由。api
Azure存储服务包括Blob存储、表存储、队列存储和文件存储。这些服务都包含在每一个存储帐户中。缓存
那么存储帐户是一个惟一的命名空间,它授予你对Azure存储服务的访问权限,每一个存储帐户可容纳200TB的数据。一个订阅最多支持50个存储帐户,也就是说你能够存储和处理PB级别的数据。安全
下图显示了存储账户中各类 Azure 存储资源之间的关系:服务器
咱们再来看看各个存储之间的区别网络
对于有大量非结构化数据要存储在云中的用户,Blob 存储提供了一种经济高效且可伸缩的解决方案。你可使用 Blob 存储来存储以下内容:异步
文档ide
社交数据,例如照片、视频、音乐和博客工具
文件、计算机、数据库和设备的备份大数据
Web 应用程序的图像和文本
云应用程序的配置数据
大数据,例如日志和其余大型数据集
每一个 Blob 都组织到一个容器中。容器还提供了一种有用的方式来向对象组分配安全策略。一个存储账户能够包含任意数目的容器,一个容器能够包含任意数目的 Blob,直至达到存储账户的容量限制 500 TB。
而Blob存储提供两种类型的存储服务:Block Blob和Page Blob,而二者又有什么区别呢?
Azure Block Blob概念相似网盘,能够直接存放图片、文件、照片等二进制文件,而且能够直接被客户端经过http://或者https://访问。
使用Azure Block Blob不须要建立任何Azure Virtual Machine,直接能够访问使用
Block Blob单个文件最大容量200GB
Block Blob单个文件最大带宽60MB/S
Block Blob支持文件从客户端分块上传(每块最大4MB)
Page Blob就是VHD文件
VHD里的文件必须依赖于Azure Virtual Machine才能被访问,好比Tomcate, IIS, FTP等
在没有Azure Virtual Machine的状况下,VHD里的文件不能直接被http://或者https://访问
VHD大小最大为1TB (这也是为何咱们在虚拟机里附加磁盘最大容量为1023GB)
一台VM能挂载的VHD数量是有限的,8 Core CPU的VM最多能挂载16块,每块1TB的VHD
每块VHD的最大IOPS为500
另外1个Azure Storage Account MAX IOPS为2万,考虑到每块VHD的MAX IOPS为500,则一个Storage Account最多容纳40个VHD。
若是把总数超过40个的VHD放在同一个存储帐号里,则会由于单个存储帐号2万个IOPS的限制,致使VHD的IOPS严重降低,甚至没法正常运行
表存储是 Microsoft 的 NoSQL 键/属性存储 - 它具备无模式的设计,使其不一样于传统的关系数据库。采用无模式的数据存储,能够很容易地随着你的应用程序需求的发展使数据适应存储。
所谓的"键-属性"存储,就是表中的每一个值都是随所键入的一个属性名称存储的。属性名称能够筛选和指定选择条件。属性集合及其值构成了实体。由于表存储是无模式的,所以同一表中的两个实体能够包含不一样的属性集合,而且这些属性能够属于不一样的类型。
你可使用表存储来存储灵活的数据集,例如 Web 应用程序的用户数据、通信簿、设备信息,以及你的服务须要的任何其余类型的元数据。你能够在一个表中存储任意数目的实体,而且一个存储账户能够包含任意数目的表,直至达到存储账户的容量限制 200 TB。
像 Blob 和队列同样,开发人员可使用标准 REST 协议来管理和访问表存储,不过,表存储还支持 OData 协议的一个子集,这简化了高级查询功能并支持 JSON 和 AtomPub(基于 XML)格式
在 设计应用程序以实现可伸缩性时,一般要将各个应用程序组件分离,使其能够独立地进行伸缩。队列存储为在应用程序组件之间进行异步通讯提供了一种可靠的消息传送解决方案,不管这些应用程序组件是在云中、在桌面上、在本地服务器上运行仍是在移动设备上运行。队列存储还支持管理异步任务以及构建过程工做流。
一个存储账户能够包含任意数目的队列。一个队列能够包含任意数目的消息,直至达到存储账户的容量限制 200 TB。每条消息最大能够为 64 KB。
默认状况下,只有存储账户全部者能够访问存储账户中的资源。为保证你的数据的安全性,对你账户中的资源发出的每一个请求都必须进行身份验证。身份验证依赖于一个共享密钥模型。还能够将 Blob 配置为支持异步身份验证。
在建立你的存储账户时为其分配了两个用于身份验证的私有访问密钥。设置两个密钥能够确保你的应用程序在你按期从新生成密钥(这是一种经常使用的安全密钥管理作法)时仍然保持可用。
若是你不须要为你的存储资源实施用户受控访问,则能够建立一个共享访问签名。共享访问签名是一个能够附加到 URL 的令牌,能够实现对容器、Blob、表或队列的委托访问。持有令牌的任何人均可以在令牌有效期间使用它指定的权限访问它指向的资源。请注意,当前不支持 Azure 文件存储共享访问签名。
最后,你能够指定一个容器及其 Blob 或某个特定的 Blob 可供公开访问。当你指定某个容器或 Blob 为公用的时,任何人均可以匿名读取它,不须要进行身份验证。公用容器和 Blob 很是适用于公开在网站上托管的资源,例如媒体和文档。若要下降全球受众的网络延迟,你能够经过 Azure CDN 来缓存网站使用的 Blob 数据。
在冗余方面,Windows Azure 提供了存储的三个冗余级别:
本地冗余存储 (LRS):Windows Azure 在一个区域内维护数据的多个副本以提供高持久性。
地域冗余存储 (GRS):Windows Azure 经过在同一地域内相隔数百英里的两个区域之间进行复制来异步提供额外的数据持久性。在两个区域中,Windows Azure 维护数据的多个副本。
读取访问地域冗余存储 (RA-GRS):除了地域冗余的存储服务外,Windows Azure 提供对辅助区域(它具备主存储系统中数据的最终一致的版本)中存储帐户的只读访问。当主区域中的存储帐户不可用时,客户可使用此服务访问其数据。
Windows Azure 提供了异地冗余。中国北京及上海两个数据中心是有独占 10G 以上带宽相连。数据储存方面,Azure 支持两种模式:
同一数据中心的文件冗余,即在同一个数据中心文件进行三重备份。
不一样数据中心的异地冗余,文件在异地数据中心也进行三重冗余,这样在两个不一样 的数据中心一共有 6 重备份。
举个例子,用户向位于上海的 Windows Azure 数据中心上传了一份文件,同时开启了异地冗余。首先该用户的文件会在上海的数据中心进行三重备份;同时,Windows Azure 会利用上海和北京之间的专线,异步的在北京的数据中心也进行三重备份。在某些极端的状况下,假设上海的数据中心由于地震、战争、洪水等缘由彻底宕机了,该用户的文件还能安全的保存在北京的数据中心,不会丢失。
进入Azure的管理门户,点击新建>数据服务>存储>快速建立,输入存储帐户的URL(惟一的),选择地域冗余或者其余。
完成新建,在门户中能够看到建好的存储帐户
点击刚才建好的存储帐户,进入此存储帐户的快速启动页,能够下载存储资源管器及 Microsoft Azure SDK。
在门户下方,点击管理访问密钥
在出现的对话框,能够看到有2个密钥,咱们能够进行从新生成或复制
在"监视"中,为每项服务设置监视级别和数据保留策略:
最少 - 收集通过汇总的有关 Blob、表和队列服务的入口/出口、可用性、延 迟及成功百分比等度量值。
详细 除最少监视度量值外,在 Windows Azure 存储服务 API 中为每 项存储操做收集一组相同的度量值。经过详细监视度量值可对应用程序运行 期间出现的问题进行进一步分析。
关闭 - 关闭监视。现有监视数据将一直保留到保留期结束。
若要设置数据保留策略,请在"保留期(天)"中,键入要保留数据的天数,范围介于 1365 天之间。若是不须要设置保留策略,请输入零。
勾选须要监控的日志类型,而后点击保存
在使用Windows Azure存储服务时,咱们能够借助如下经常使用工具对存储帐户进行操做,这 些工具包括:
Azure Storage Explorer是一款免费的Azure存储服务查看管理器,可用来查看Windows Azure 服务的各类存储类型,好比表存储,队列存储,Blob 存储,而且对里面的数据进行 查询,删除等操做。
Azure Storage Explorer是一款开源软件,其源代码发布在 http://azurestorageexplorer.codeplex.com/
对于中国区用户,如需下载适用于由世纪互联运营的Windows Azure存储服务的Azure Storage Explorer工具,请访问: http://shaunstorage.blob.core.chinacloudapi.cn/share/AzureStorageExplorerCN.zip
AzCopy 是一款用于操做 Windows Azure 存储帐户的命令行实用程序。该实用程序旨在 简化和加速数据传输任务,使您能够轻松将数据传入或传出 Windows Azure 存储账户。 客户能够将其做为独立工具使用,也能够