写点什么

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

  • 2018-03-27
  • 本文字数:1216 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 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

2018-03-27 19:001320

评论

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

架构师训练营第01周——UML练习

李伟

极客大学架构师训练营

架构师训练营-学习总结

~就这样~

就餐卡系统(时间太紧张,阅读了很多,我转载的这篇)

王锟

作业1:食堂就餐卡系统设计(UML)

蒜泥精英

Lesson 1 架构师如何做架构 心得笔记

edd

编程好习惯 极客大学架构师训练营 架构总结

第 1 周食堂就餐卡系统设计

陆不得

第一课 架构师的自我修养

Geek_bobo

编译运行Zookeeper源码

CoderLi

Java zookeeper 程序员 源码分析 后端

我不想做一个架构师

彭灵俊

极客大学架构师训练营

架构师训练营 Week 01 学习总结

Kun

极客大学架构师训练营

就餐卡系统架构设计

祝好

【第一周】学习总结——架构方法、软件建模与设计文档

三尾鱼

极客大学架构师训练营

关于架构师这个角色的感悟

祝好

食堂就餐卡系统设计

Acker飏

极客大学架构师训练营

聊聊架构师

Jerry Tse

随笔杂谈 极客大学架构师训练营 作业

就餐卡系统设计

平淡人生

极客大学架构师训练营

实例学习绘画UML图

张瑞浩

食堂就餐卡系统设计(第一周)

就餐卡设计文档

chengjing

第一节课的总结

王锟

第一次课作业

lai

什么叫架构师

平淡人生

极客大学架构师训练营

食堂就餐卡系统架构视图

梅子黄时雨

极客大学架构师训练营

食堂就餐卡系统设计

八两

作业2-学习心得

蒜泥精英

架构文档编写

清风明月

食堂就餐卡系统架构设计

~就这样~

架构师训练营第0期-第1周-作业一

极客大学架构师训练营

架构师训练营-食堂就餐卡系统设计

彭灵俊

极客大学架构师训练营

架构师训练营第0期-第1周-作业二

极客大学架构师训练营

作业一:食堂就餐卡系统设计

独孤魂

极客大学架构师训练营

微软发布Azure Cosmos DB中MongoDB聚合功能的公开预览版本_数据库_Steef-Jan Wiggers_InfoQ精选文章