BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

微软发布Azure Cosmos DB中MongoDB聚合功能的公开预览版本

| 作者 Steef-Jan Wiggers 关注 5 他的粉丝 ,译者 张卫滨 关注 13 他的粉丝 发布于 2018年3月28日. 估计阅读时间: 4 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

去年十一月,微软宣布在Azure Cosmos DB中支持MongoDB的更多功能。随着Cosmos DB服务最新版本的部署,微软包含了对MongoDB聚合管道支持的预览版本,允许开发人员通过联合多个聚合“stage”,创建更复杂的查询和数据操作。

微软的Azure Cosmos DB是一个全球的分布式多模型、多API的数据库服务。多模型支持Graph、列族(column family)、key-value和文档。除了多模型的支持以外,它还提供了对多种API访问的支持,包括MongoDB API,这意味着Mongo应用可以直接与Cosmos DB进行通信。除此之外,各种原生的MongoDB特性也内置到了Cosmos DB的MongoDB API中。

Mongo开发了聚合管道(aggregation pipeline)功能,这是map-reduce的替代方案,它是一个更加轻量级和更自然的编程模型。该特性是微软为Cosmos DB提供的众多特性之一,他们希望通过这些特性促使客户从原生MongoDB中迁移出来。另外,Cosmos DB工程团队还将用户要求的MongoDB原生特性直接构建到了Cosmos DB中。Azure Cosmos DB目前还没有完全支持所有的MongoDB原生特性,当然它正在朝着这个方向努力。在Channel 9 Azure Friday合辑中,有关Azure Cosmos DB为MongoDB提供了哪些新功能的访谈里面,来自Cosmos DB工程团队的Emily Lawton这样告诉Scott Hanselman:

在最近的几个月和几周的时间内,我们正在做一些新的特性,这些特性能够让Mongo客户将更复杂更强大的应用迁移至Cosmos。随着这些更新的发布,我们可以自信地说,我们支持了所有最受欢迎的Mongo特性并且将投入花费到了最适当的地方,我们可以向任何从Mongo迁移过来的客户保证,我们有适当的工具和资源确保他们能够在Cosmos中获得成功。

借助MongoDB的聚合管道,在将结果返回给客户端之前,更多的数据处理会在服务端完成。这项特性的明显收益就是在网络上数据传输会更少,发起调用的客户端所接收到的数据量会更加易于管理。举例来说,典型的聚合管道可以是在MongoDB实例中查找记录,这样能够通过一个查询来实现,该查询会基于表达式进行匹配和分组以及计数:


图片来源:https://azure.microsoft.com/en-us/blog/azure-cosmosdb-extends-support-for-mongodb-aggregation-pipeline-unique-indexes-and-more/

MongoDB聚合管道是通过聚合命令aggregate、count或distinct来实现的,命令后面紧接着的是一个或多个聚合stage,其中可以使用表达式、累加器(accumulator)和操作符。关于更多细节信息,请参考微软网站上的文档。

开源的MongoDB客户端驱动允许开发人员与Cosmos DB中的MongoDB API进行通信。对聚合管道的支持已经发布公开预览,开发人员可以在Azure门户中通过任意MongoDB API账户的Preview Features页面启用该特性。

查看英文原文Microsoft Announces a Public Preview of the MongoDB Aggregation Feature in Azure Cosmos DB

评价本文

专业度
风格

您好,朋友!

您需要 注册一个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