Windows Azure本质上来说就是将你本地的应用程序打包,然后上传到Windows Azure VM进行托管运行。

注意:任何保存在Windows Azure VM盘符的内容都是临时的、非持久化的。比如,我通过Windows Azure
VM在D盘新建了一个txt文件,这个文件不会一直被保存。因为某些特殊情况,VM节点会宕机(系统升级、物理损坏)等,后台Fabric Controller会把该VM下的Web Role和Worker Role的内容迁移到同一数据中心的另外一台机器上,但是不会自动迁移D盘新建的txt文件!如果需要保存持久化的内容,一定要使用Windows Azure Storage,切记切记!

Windows Azure提供了三种不同类型的存储服务(这里的存储是非关系型数据,比如图片、文档等文件),用来提供给Windows Azure上运行的应用程序存储数据使用。依据不同的存储格式会有不同的限制,因为这些存储服务都是以分散式巨量存储(Distributed Mass Storage)为核心概念所设计出来的,为了要达成快速在分散式存储空间中存储与管理数据(还包含高可用度的赘余存储管理),微软有在数据的存储上做一些限制。

微软还提供了REST API来方便用户操作Storage Service。

1.BLOB

BLOB(大型二进制对象)数据是用来存储文件、图片、文档等二进制格式的文件。

BLOB分为2种:

  -Block BLOB(区块型BLOB存储),这类的存储以4M为一个区块单位,单一文件最大可以存储200GB,且区块不会连续存储,可能会在不同的存储服务器分块存放。为了适应文件的上传和下载而专门进行了优化。当应用程序要求时,会一招文件的KEY以及区块存储区提供数据。

  -Page BLOB,是优化的随机访问。它会在存储区中划分一个连续的区域供应用程序存放数据,它本身可以视为一个大型的VHD(虚拟机软盘)。如果我们拿我们的应用程序迁移到Windows Azure平台上,对于文件的读写操作可能需要进行一些修改,但是通过Page Blob就可以方便我们迁移:微软特别在Page BLOB上提供了一组将Page BLOB虚拟成软盘的功能,称为Windows Azure Drive(研发代号为XDrive),它能够支持NTFS API,也就是说应用程序可以利用现有的文件管理API(包含System.IO的类型)来访问Windows Azure Drive中的文件夹与文件数据,并且这些数据会保存在Windows Azure数据中心内。

BLOB服务由BLOB本身以及其收纳容器(Container)构成,容器可视为一般本机上的文件夹。

你可以通过REST API来访问,如下:

http://accountName.blob.core.windows.net/<containerName>/<blobName>

accountName表示哪个Azure帐号(Account)下的资源。

blob.core.windows.net表示我访问的是blob的资源。

containerName表示容器的名字,可以认为是访问某一文件夹下的资源

blobName表示我要访问的资源的名字。

注意:ContainerName的命名规则

1.必须以英文或数字开头,且名称内只能有英文、数字及dash(-)

2.不能以dash(-)开头或结尾,dash(-)不能连续出现

3.所有英文的字符都必须是小写

4.长度为3-63之间

Blob的命名规则:

1.除了URL的保留字符以外,其他的字符组合都可以使用

2.长度为1-1024个字符

3.尽量避免以dot(.)或者是forward slash(/)结尾。否则会造成Blob Service误判。

2.Table

这里的Azure Table是非关系型数据库的表,不能与SQL Server中的Table混淆。

Azure Table中表最大容量是100T,每个Azure Table 都必须有Partition Key和Row Key。

Partition Key的值可以设置记录的物理位置。在Azure Table中的2条数据,如果Partition Key值相同,则表示这2条数据存储的物理位置是相同的;如果Partition Kay不同,则表示这2条数据可能存储在同一台物理介质上,或者不同的2台物理介质之上。

Row Key表示一行数据的唯一值。使用PartitionKey和RowKey可以定位一个唯一的实体。

Azure Table也提供REST API来访问,如下:

http://accountName.table.core.windows.net/<TableName>

3.Queue

Queue(队列)是一种先到先服务(First-Come, First-Serve),或称为FIFO(先入先出)的存储服务,它可以允许应用程序将消息存储到队列中排队,然后由负责处理的应用程序(通常是Worker)由队列提取消息并处理以后,将消息由队列中移除。消息可以是字符串或是最长8KB的二进制数据,队列经常会作为跨运行个体通信以及工作切割通知的消息传递之用。

http://<account>.queue.core.windows.net/<QueueName>

http://www.cnblogs.com/threestone/archive/2012/01/18/2325567.html

Windows Azure Platform (九) Windows Azure Storage Service存储服务相关推荐

  1. Windows Azure Storage (3) Windows Azure Storage Service存储服务之Blob详解(中)

    <Windows Azure Platform 系列文章目录> 如果读者使用的是国内由世纪互联运维的Azure China服务,请参考笔者的博文Azure China (4) 管理Azur ...

  2. Windows Azure Storage (4) Windows Azure Storage Service存储服务之Blob Share Access Signature

    <Windows Azure Platform 系列文章目录> 如果读者使用的是国内由世纪互联运维的Azure China服务,请参考笔者的博文Azure China (4) 管理Azur ...

  3. Windows Azure Storage (1) Windows Azure Storage Service存储服务

    <Windows Azure Platform 系列文章目录> 如果读者使用的是国内由世纪互联运维的Azure China服务,请参考笔者的博文Azure China (4) 管理Azur ...

  4. Windows Azure Platform Introduction (2) 云计算的分类和服务层次

    <Windows Azure Platform 系列文章目录> 云计算的分类(参考百度百科http://baike.baidu.com/view/1316082.htm#4) 云计算按照服 ...

  5. Windows Azure Platform (四) Windows Azure架构

    Windows Azure是由微软发展的一套云计算操作系统,用来提供云计算服务所需要的操作系统与计算与存储平台.他提供的是平台即服务(PaaS).也可以通过VM Role来实现IaaS服务. Over ...

  6. Windows Azure Platform Introduction (9) 申请Windows Azure 账户

    <Windows Azure Platform 系列文章目录> Update:2017年12月27日,更新了最新的申请海外Azure账户的流程: Windows Azure Platfor ...

  7. Windows Developer Day - Windows AI Platform

    本次 Windows Developer Day,最值得期待的莫过于 Windows AI Platform 了,可以说是千呼万唤始出来.观看直播的开发者们,留言最多的也是 Windows AI Pl ...

  8. 微软Windows Azure Platform技术解析

    近两年IT领域里没有任何一项技术能够像云计算(Cloud Computing)一样引起如此多的关注,Google.Amazon.IBM.HP.Dell.Sun.Intel.Oracle和Microso ...

  9. Windows Azure Platform Introduction (6) Windows Azure应用程序运行环境

    <Windows Azure Platform 系列文章目录> Windows Azure应用程序运行环境 Windows Azure云计算平台是提供PaaS(平台即服务)和IaaS(基础 ...

最新文章

  1. 求得到一个字符串@“absdfasdfsdfdsafsd....”所有的排列
  2. KC shop 开发历程------注册界面
  3. Windows 系统下设置Nodejs NPM全局路径
  4. 访问域名不走dns服务问题排查,报错could not resolve host
  5. NOIP 2016 迟来的满贯
  6. 民国大学教授收入有多高?
  7. 安装rz_Centos 8下Mysql8的安装,以及远程Navicat适配(面向纯小白)
  8. 马士兵_JAVA自学之路(为那些目标模糊的码农们)
  9. 苏州大学计算机学院推免流程,【图片】18年苏州大学计算机872考研经验分享【苏州大学研究生吧】_百度贴吧...
  10. Linux服务器的显卡驱动丢失又装上的过程
  11. 洛谷.3065.第一!First!(Trie 拓扑)
  12. python中实参必须是常量吗_7 python函数参数(必须参数、可变参数、关键字参数)...
  13. 熔断器 Hystrix 源码解析 —— 断路器 HystrixCircuitBreaker
  14. stm32中如何避免等待_地坪漆施工中如何避免常见的小问题
  15. Oracle 19c 安装步骤
  16. 数据结构面试题以及答案整理
  17. Polymorphism in Overloaded and Overridden Method
  18. Numpy中的向量运算
  19. hdu-6287-口算训练
  20. 百度谷歌淘宝自定义搜索乱码问题的解决

热门文章

  1. php 微信接口文档例子,微信开发之群发(示例代码)
  2. Drools7 动态更新规则
  3. 中国超级计算机gpu,中国超级计算机“天河一号”堪称世界第一:每秒2500万亿次浮点运算...
  4. 为什么现在真正的黑客越来越少了?
  5. 如何运用netoffice,开发兼容多个版本的outlook插件
  6. 信息通信与工程学院c语言试题,2020年湖南大学信息与通信工程考研真题试卷及试题答案,C语言程序设计考研试题下载...
  7. python种子下载器,tkinter版本
  8. 8.5.4. Interval Input
  9. app小程序手机端Python爬虫实战02-uiautomator2自动化抓取开发环境搭建
  10. hdu2838(树状数组)