我正在使用带有 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 并遇到过类似的问题?任何建议或指示将不胜感激。