Microsoft云存储架构

1 总体介绍

Microsoft云存储服务分为两个部分,SQL Azure和Azure Storage。SQL Azure直接在原有的SQL Server上引入分布式的因素,在满足一定可扩展性的前提下尽可能不牺牲原有的关系型数据库功能。SQL Azure的可扩展性是有限的,单个SQL Azure实例不允许超过50GB,这是因为SQL Azure不支持子表动态分裂,单个SQL Azure实例必须足够小从而可以被一个节点服务。

Azure Storage与bigtable/GFS的设计思路一致,Azure Storage分为Blob, Queue和Table三个部分。


2 Azure Storage介绍


由三个重要部分构成
■Windows Azure Blob:存储二进制数据,用来存储大型数据。采用分层分块机制,见图3。
■Windows Azure Table:存储结构数据,类似bigtable
■Windows Azure Queue:类似Windows系统的消息队列。


2.1 Azure Table

类似Bigtable,分为Partition Master和Partition Server两种角色,分别对应Bigtable Master和Tablet Server。每一个Partition(相当于Bigtable中的Tablet)同时只能被一个Partition Server服务,Partition Master会执行负载均衡等工作。Bigtable中分为Root Table, Meta Table和User Table,Azure Table Storage可能会为了简单起见消除Meta Table,所有的元数据操作全部放到PartitionMaster上。

Table中,由2个属性partitionkey和rowkey一起唯一标识一个table中的实体。

在分片内部实现了ACID。


参考:

1http://blogs.msdn.com/b/windowsazurestorage/archive/2010/12/30/windows-azure-storage-architecture-overview.aspx


发布了28 篇原创文章 · 获赞 1 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章