Azure cosmosdb CosmosDB DocumentDB API与CosmosDB MongoDB API?

Azure cosmosdb CosmosDB DocumentDB API与CosmosDB MongoDB API?,azure-cosmosdb,azure-cosmosdb-mongoapi,Azure Cosmosdb,Azure Cosmosdb Mongoapi,由于DocumentDB和MongoDB都是面向文档的数据库,因此它们似乎可以对相同类型的数据建模,并且都非常适合解决相同的问题 除了不同的生态系统,DoButdB锁定蓝天,以及团队的优势/经验,选择另一个时还有什么要考虑的吗? 我认为既然DocumentDB是由Microsoft为Azure开发的,考虑到CosmosDB体系结构,它将比MongdobAPI具有成本优势?对于相同类型的数据存储和请求,DocumentDB API比MongoDB API的成本优势有多大 我正试图为一个新项目在Co

由于DocumentDB和MongoDB都是面向文档的数据库,因此它们似乎可以对相同类型的数据建模,并且都非常适合解决相同的问题

除了不同的生态系统,DoButdB锁定蓝天,以及团队的优势/经验,选择另一个时还有什么要考虑的吗? 我认为既然DocumentDB是由Microsoft为Azure开发的,考虑到CosmosDB体系结构,它将比MongdobAPI具有成本优势?对于相同类型的数据存储和请求,DocumentDB API比MongoDB API的成本优势有多大

我正试图为一个新项目在CosmosDB DocumentDB API和CosmosDB MongoDB API之间做出选择。谢谢


如果您打算在CosmosDB上启动一个新项目,并且同样熟悉DocumentDB和MongoDB,并且需要一个面向文档的db,你会选择哪种API?为什么?

< P>你应该选择对你的特定场景最有意义的API——它包括大量的因素来考虑。例如,这是一个绿色项目与现有项目,你的特定数据访问模式是什么样子的,您是否使用标准JSON数据类型而不是MongoDB特定的数据类型等


长期目标是在所有Cosmos DB API的健壮性方面实现对等。话虽如此,DocumentDB API是经过最长时间考验的,因为它已经存在了很长一段时间。

如果您需要在不受支持的平台(如PHP)上直接访问数据库,我只会使用MongoDB API。使用DocumentDB API时,需要使用REST API。有一个用于PHP的MongoDB API,因此这将更加方便

DocumentDB API是为CosmosDB设计的,因此它将拥有最广泛的功能集


请记住,CosmosDB并没有提供所有MongoDB特性。缺少聚合框架,因此您没有
$groupby
distinct
。。。听你的安排。尽管MS说COSMODB可以被用作管理的MangGDB解决方案,但是在切换到COSMODB之前应该仔细检查您需要什么。

< P>有很多事情要考虑,但是我还没有提到的一个是DoCTeNDB不支持不替换整个文档的更新操作。而MongoDb有$set、$unset、$push、$pull和其他一些操作符,允许您修改文档的一部分。

我不理解这个问题。CosmosDB是DocumentDB的超集。请停止在评论中提问。问一个新问题。再一次,我不明白你的问题,关于“直接使用cosmosDB”。很抱歉,我重写了这个问题。谢谢。基本上在一个新的CosmosDB项目上,DocumentDB API和MongoDB API的优缺点是什么。这是一个全新的项目。你所说的“数据访问模式”是什么意思?假装我不知道MongoDB,这样我就可以使用MongoDB API或DocumentDB API。我怎么决定?有什么主要的东西我应该看看吗?你有没有一个例子说明如何使用MongoDB的特性,比如$push?