NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Azure Drive 简化应用程序迁移至微软云计算过程

  • 2010-02-21
  • 本文字数:1480 字

    阅读完需:约 5 分钟

微软近期发布了测试版本的 Windows Azure Drive ,这个最初在 2009 年的 PDC 大会上被宣布为 XDrive 的存储器访问技术,能通过在存储器二进制大对象上创建一个 NTFS 格式的虚拟硬盘的方法,来简化将 Windows 应用程序迁移到云计算(服务器)上的过程。

Windows Azure 存储服务是一种基于 REST 模式的处理二进制大对象的服务。二进制大对象是一种能存放二进制或者文本文件的存储实体。二进制大对象通常被有序地存放在存储容器中。常见的二进制大对象有两种:

  • 块状二进制大对象——最多 200GB 的容量并支持线性读写的访问操作;这类二进制大对象对于流媒体的存储十分有用。
  • 页面二进制大对象——能够增长至 1TB 的容量并提供了任意读写的访问操作,此类的二进制大对象有助于存放普通的文本或者二进制文件。

存储服务的 API 提供了操作二进制大对象所需的工具,但是这些只对编写新的面向 Azure 云计算的应用程序提供了便利。已经存在的 Windows 应用程序对二进制大对象一无所知,因此它们需要被大规模地改写才能在云上运行。这便有了 Azure Drive 的用武之地了。

Windows Azure 操作系统拥有一个能够将页面二进制大对象安装为 VHD(Virtual Hard Drive,虚拟硬盘)的操作系统驱动器(OS Driver),并且还能对这个 VHD 执行读写操作。对于应用程序来说,这个过程就像操作一个已安装在机器上的普通 NTFS Windows 硬盘一样,但实际上这个操作系统驱动器却在对二进制大对象进行操作。所有无缓冲的或者被划掉的写入数据都被同步送到了存储器上,因此当用户接收到驱动器返回的“成功”信息后,就可以确定他的数据是安全的。如果发生应用程序崩溃或者驱动没有被载入的情况,这个功能将会非常重要。

Azure 开发团队还公开了一些 Azure Drive 的技术细节

  • 一个 Drive 就是将一个页面二进制大对象格式化成了固定 NTFS 格式,并且容量为 16MB 至 1TB 的 VHD。
  • 一个虚拟机可以动态加载最多 16 个硬盘。
  • 一个页面二进制大对象在同一时间段只能被一台虚拟机加载并执行读写操作。一个页面二进制大对象的快照可以在同一时间段被多个不同的虚拟机加载并执行只读操作。
  • 用来存储页面二进制大对象的存储器账户和用来执行应用程序的运算帐户应该被保存在 Windows Azure Developer Portal 的同一个物理地点上,以用来获取最好的硬盘性能。
  • Drive 能够通过 Windows Azure Blob 接口进行上传和下载。被格式化成固定 NTFS 格式的虚拟硬盘可以被当作页面二进制大对象,通过使用页面二进制大对象接口进行上传并加载成一个硬盘。类似的,一个格式化了的页面二进制大对象也能通过页面二进制大对象接口进行下载并可被当作一个 VHD 来使用。
  • Windows Azure 提供的操作系统驱动器只能被 Windows Azure 云中的 Windows Azure 虚拟机实例使用。微软现在还没有发布任何一个允许个人远程加载的硬盘。尽管如此,用户还是可以使用 GetBlob 来下载一个硬盘并通过在所下载的机器上加载这个被下载的 VHD 来使用它,但任何对于该下载版本的修改都将不会被发送到 Windows Azure Blob 服务器上。

Azure Drive 已经在二月份的Azure SDK 中发布,该SDK 中包含了加载了OS Driver 的Guest OS 1.1 版本。

PDC2009 上公布的但还没有发布的功能有:

  • 更好地操作云中的虚拟机:
    • 设置云中的虚拟机的管理员权限
    • 用户驱动构建和配置虚拟机镜像
    • 云中的虚拟机上的远程终端访问服务
  • 存储:
    • 可供用户有选择地复制数据的物理存放地点
    • 数据表的次要索引

参考资料: Azure Drive 白皮书 (docx 格式),PDC 2009 相关演讲: Windows Azure Present and Future Windows Azure Blob and Drive Deep Dive

查看英文原文: Azure Drive Eases the Migration to Microsoft’s Cloud

2010-02-21 02:591113

评论

发布
暂无评论
发现更多内容

如何做到超预期供应

熊斌

28天写作

怀着期待开启美好的一天「幻想短篇 23/28」

道伟

28天写作

管事情的过程,如何聚焦并决策高价值的事?

一笑

管理 优先级队列 28天写作

区块链隐私保护、体系结构与智能合约研究

CECBC

区块链

航运业“搭台” 区块链“唱戏”

CECBC

航运

用helm chart将chripstack部署到kubernetes之上

远鹏

Kubernetes IoT Helm ChirpStack LoraWan

VS +QT 手动添加Q_OBJECT 报错问题解决

Creep

c++ qt

欢度春节|话题王者 VS 互动先锋(第二季)

InfoQ写作社区官方

话题讨论 热门活动

week10-homework

J

区块链技术发展及应用:现状与挑战

CECBC

区块链

碎碎念之「创造力可能是新的生产力」

Justin

创意 28天写作 创造性思维

Reactive Spring实战 -- 响应式Redis交互

binecy

redis Reactive Spring

2021年,开发者的落日

王知无

大数据

2月日更挑战|达标抽奖季,更有暖春大满足礼包等你来

InfoQ写作社区官方

2月春节不断更 热门活动

【计算机内功修炼】八:函数运行时在内存中是什么样子?

码农的荒岛求生

高并发 内存 高性能 内存管理 运行时栈帧

week10-总结

J

VS2019 + Qt Creator 4.11.1 导入Qt源码进行调试记录

Creep

c++ qt

Mybatis【17】-- Mybatis自关联查询一对多查询

秦怀杂货店

数据库 mybatis

数据结构和算法学习总结-复杂度分析

Nick

时间复杂度 数据结构与算法 复杂度

Apache老母鸡又下蛋?一文俯瞰Apache Superset

王知无

大数据

发布 Go Modules

Rayjun

go modules Go 语言

技术创业,股权设置的常见“坑” | 视频号28天(24)

赵新龙

28天写作

产品 0 期 - 第三周作业

vipyinzhiwei

【Vue2】文本无缝滚动

德育处主任

Vue 大前端 28天写作

读2020年Javascript趋势报告展望ES2020

devpoint

大前端 ES2020 构建工具

企业是如何解决HDFS单点问题的?

大数据老哥

大数据 hadoop

同城快递架构设计

Mars

Spring 动态代理时是如何解决循环依赖的?为什么要使用三级缓存?

程序员小航

spring 源码

Elasticsearch document routing 数据路由

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试

我看好数据湖的未来,但不看好数据湖的现在

王知无

大数据 数据湖

聊聊我的原创维权二三事

架构精进之路

自我思考 七日更 28天写作

Azure Drive简化应用程序迁移至微软云计算过程_.NET_Abel Avram_InfoQ精选文章