写点什么

微软发布 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:001586

评论

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

让“上链”触手可及:VoneBaaS 赋能传统应用场景

旺链科技

区块链 数字化转型 产业区块链

非关系型数据库 Redis 核心内容

苏玖

数据库 nosql redis redis持久化 8月月更

Go-Excelize API源码阅读(二十)——SetDefinedName

Regan Yue

Go 开源 源码阅读 8月日更 8月月更

微服务全链路灰度新能力

阿里巴巴云原生

阿里云 微服务 云原生 灰度 全链路

讲座回顾丨基于 OpenYurt 和 EdgeX 的云边端协同新可能

阿里巴巴云原生

阿里云 云原生 边缘计算

基于 gh-ost 的在线 Schema 变更

Bytebase

MySQL 数据库

不容错过!什么是领域驱动设计?为什么落地这么难?

京东科技开发者

前端 代码 领域驱动模型DDD 中台架构 研发提效

图文详解:内存总是不够,我靠HBase说服了Leader为新项目保驾护航

浅羽技术

数据库 大数据 微服务 HBase 8月月更

AIGC:自动化内容生成,AI的下一个引爆点?

晨山资本

AI 2D 3D模型 3D点云

开发者测评:阿里云 ACR 与其他的镜像仓库到底有什么不同?

阿里巴巴云原生

阿里云 云原生 ACR

用两个栈实现队列

掘金安东尼

算法 前端 8月月更

App Push 通用测试方案

转转技术团队

测试工具

合合信息对于表格识别与内容提炼技术理解及研发趋势

合合技术团队

人工智能 表格识别 合合信息

阿里架构师花近十年时间整理出来的Java核心知识pdf(Java岗)

退休的汤姆

Java 面经 校招 秋招 java·工程师

五问五答:第三方风险管理

SEAL安全

网络安全 风险管理 安全风险 软件供应链安全

逆向工程:揭示Google Colab未公开的秘密

OneFlow

机器学习 深度学习 模型

java的可变参数

TimeFriends

8月月更

低成本、强交互、沉浸式的云游戏,究竟如何实现?

阿里云CloudImagine

视频云 云游戏

讲真,这份秋招豪礼【面试锦囊】真舍不得给你们

浅羽技术

面试 面试题 秋招 8月月更 秋招你准备的怎样了

别小看 Log 日志,它难住了我们组的架构师

浅羽技术

日志 log4j slf4j logback 8月月更

秒合约交易APP系统开发源码搭建

开发微hkkf5566

{版本发布公告}HMS Core 6.6.0来啦

HarmonyOS SDK

获取IP地址的途径有哪些?要如何保护IP地址不被窃取?

郑州埃文科技

IP地址 追踪IP 保护IP

秋招!面试十次字节/美团失败总结的《520道LeetCode题Java版答案》

退休的汤姆

Java 程序员 面经 Java工程师 秋招

NFT盲盒游戏商城交易系统开发技术

薇電13242772558

NFT 盲盒

前端的状态管理与时间旅行:San实践篇

百度Geek说

前端 JavaScrip

Alibaba最新神作!耗时182天肝出来1015页分布式全栈手册太香了

退休的汤姆

Java 程序员 分布式 面经 秋招

基于SpringBoot的SSMP整合

SpringBoot 2 Mybatis-Plus 8月月更

80%Java开发者面试都问的SpringBoot你竟不会?看完这些笔记足以

退休的汤姆

Java 面经 秋招 spring、

2022 全国大学生操作系统大赛圆满落幕 龙蜥推动人才培养与产业发展深度融合

OpenAnolis小助手

开源 操作系统 龙蜥社区 设计比赛

一个奇葩的线上问题,导致我排查了一天

艾小仙

Java elasticsearch 程序员 ELK

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