1

我正在使用带有 Pyspark 的 Azure Databricks 和带有 MongoDB API 的 CosmosDB。

以下 Pyspark 命令用于将 a 存储data_frame在 CosmosDB 中,该命令运行良好:

def storeCollection(self, collection, data_frame, save_mode="append"):
data_frame.write.format(
        "com.mongodb.spark.sql.DefaultSource").option(
        "spark.database.output.uri", self.uri).option(
        "spark.database.output.database", self.db).option(
        "spark.database.output.collection", collection).mode(save_mode).save()

但现在我的问题是:我的 CosmosDB 中有以下文档结构:

{
 "_id" : "687c0184-aaa6-11e8-94bd-cba20d67390c",
 "api" : "",
 "aspectSet" : "",
 "id" : "687c0184-aaa6-11e8-94bd-cba20d67390c",
 "providerID" : "",
 "searchDate" : "",
 "searchQuery" : [
    {
        "_id" : "0",
        "id" : "0",
        "queryID" : "",
        "searchTerm" : "",
        "searchTermCategory" : "",
        "searchTermLanguage" : "en",
        "searchTermPriority" : "1",
        "searchTermSubcategory" : "",
        "weight" : "1"
    }
   ]
}

我现在想通过执行文档的部分更新来添加一个新searchQuery的列表,searchQueries但我没有找到任何关于如何做到这一点的示例。

微软有一个页面(https://docs.microsoft.com/en-us/azure/cosmos-db/mongodb-feature-support)说 CosmosDB 支持很多 MongoDB 功能,但我找不到关于如何做的任何例子。

是否有人已经使用 CosmosDB 并遇到过类似的问题?任何建议或指示将不胜感激。

4

0 回答 0