BT

你的观点很重要! 快来参与InfoQ调研吧!

Cosmos DB:全球分布式数据库

| 作者 Jeff Martin 关注 6 他的粉丝 ,译者 盖磊 关注 1 他的粉丝 发布于 2017年11月14日. 估计阅读时间: 3 分钟 | ArchSummit社交架构图谱:Facebook、Snapchat、Tumblr等背后的核心技术

A note to our readers: As per your request we have developed a set of features that allow you to reduce the noise, while not losing sight of anything that is important. Get email and web notifications by choosing the topics you are interested in.

今天是PASS 2017峰会的第二日,上午首个主题演讲是Microsoft Cosmos DB组产品经理Rimma Nehme对Azure Cosmos DB的介绍。Nehme以丰富的信息量和快速的表达,介绍了Microsoft设计和构建Cosmos DB所用的方法。

在开始介绍Cosmos DB之前,Nehme探讨了一些影响设计团队考虑的市场趋势。据Nehme介绍,全世界90%的数据都是在近两年间创造的。从2010起算的10年期间,全世界的数据量有望增长50到100倍。如果将适合该趋势的需求与计算应该接近数据的理念相结合,那么传统的“俗世”数据库从技术上并不适于应对这种复杂的局面。

“佛罗伦萨计划”是Microsoft为应对这种趋势而提出的一个解决方案,它是由Dharma Shukla启动的。选择佛罗伦萨为项目名称的背景是,Shukla在该城市度假时提交了项目的首个代码。从更宽泛的意义上看,佛罗伦萨是欧洲文艺复兴开始的中心,这符合当今计算机世界对数据的需求将会爆发这一预测。

此后,“佛罗伦萨计划”演变为Azure Cosmos DB产品。项目开始时的目标取决于Bing、Xbox Live等微软内部客户的需求。至2010年,项目的需求发展为:

  1. 全球分布的一站式解决方案;
  2. 全球范围内99%的低延迟保证;
  3. 区域和全球范围内的高可用性保证;
  4. 确保一致性;
  5. 全球范围内通量和存储的弹性扩展,并可随时按需提供服务;
  6. 全面SLA(可用性、延迟、通量、一致性);
  7. 低运维代价;
  8. 迭代和查询,无需关心具体的模式和索引管理;
  9. 提供一系列的可选数据模型和API。

简而言之,Cosmos DB团队的任务是在确定如何构建全球分布式云数据库的同时,也满足Microsoft内部客户的需求。Cosmos DB的成功使得其成为Azure内部的“首环”(Ring 0)服务,即一旦有新的Azure地理区域建立,Cosmos DB就是该区域内首批提供的服务之一。从开发人员的角度看,Cosmos主要使用C++语言编写。

Azure Cosmos DB提供了五种一致性模型,分别是:强一致性(Strong)、受限无状态一致性(Bounded-stateless)、会话一致性(Session)、前缀一致性(Consistent Prefix)和最终一致性。其中最广泛使用的是会话一致性,它的使用远远领先于第二位的受限无状态一致性。

Nehme的主题演讲的节奏很快,提供了丰富的信息。想要了解Cosmos DB的更多技术细节,可以查看Dharma Shukla在今天春季撰写的一篇文章

查看英文原文: Cosmos DB - A Globally Distributed Database

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT