2

尝试将我一直在处理的数据框保存到 documentDB 集合时出现我不明白的错误。

堆栈上的其他类似问题指出为数据库或集合提供的名称不正确或区分大小写,但我检查了这些......还有什么其他解释?分区键?地区 ?...

另一方面,我无法找到一个完整的文档,关于哪些选项最终将提供给生产线df.write.format("com.microsoft.azure.cosmosdb.spark").mode('overwrite').options(**ddbconfig).save()

Spark 在 Databricks 上给出的错误是:

com.microsoft.azure.documentdb.DocumentClientException: Message: {'Errors':['Owner resource does not exist']}

StackTrace 给了那些

Py4JJavaError: 
  An error occurred while calling o646.save. :
    com.microsoft.azure.documentdb.DocumentClientException: 
      Message: {"Errors":["Owner resource does not exist"]}

响应在 storereadresult 中给出

LSN: 623, GlobalCommittedLsn: 623, PartitionKeyRangeId: , IsValid: True, StatusCode: 404, IsGone: False, IsNotFound: True, IsInvalidPartition: False, RequestCharge: 1, ItemLSN: -1, SessionToken: -1#623, ResourceType: Collection, OperationType: Read

编辑:与类似链接帖子不同的情况。尝试在新的空集合中写入数据时发生此错误。不读取现有数据。而且我已经在我的问题中澄清说,我已经探索了在这些类似帖子中发现的每条路径(主要是集合/数据库名称不匹配)。

4

1 回答 1

0

经过进一步调查,这是我使用的库版本中的一个错误。

通过从 azure-cosmosdb-spark_2.3.0_2.11-1.2.2-uber.jar 切换到 azure-cosmosdb-spark_2.3.0_2.11-1.2.7-uber.jar 解决

正如在 github 上看到的那样 https://github.com/Azure/azure-cosmosdb-spark/issues/268

于 2019-01-03T08:22:23.120 回答