我正在尝试将Spark中的数据(使用Databricks)写入Azure Cosmos DB(Mongo DB)。执行笔记本时没有错误,但查询集合时出现错误。
我使用了databricks网站azure-cosmosdb-spark_2.4.0_2.11-2.1.2-uber.jar中的jar。我的版本是6.5(包括Apache Spark 2.4.5,Scala 2.11)
import org.joda.time.format._
import com.microsoft.azure.cosmosdb.spark.schema._
import com.microsoft.azure.cosmosdb.spark.CosmosDBSpark
import com.microsoft.azure.cosmosdb.spark.config.Config
import org.apache.spark.sql.functions._
val configMap = Map(
"Endpoint" -> "https://******.documents.azure.com:***/",
"Masterkey" -> "****==",
"Database" -> "dbname",
"Collection" -> "collectionname"
)
val config = Config(configMap)
val df = spark.sql("select id,name,address from emp_db.employee")
CosmosDBSpark.save(df, config)
当我查询集合时,我得到的答复低于
Error: error: {
"_t" : "OKMongoResponse",
"ok" : 0,
"code" : 1,
"errmsg" : "Unknown server error occurred when processing this request.",
"$err" : "Unknown server error occurred when processing this request."
}
任何帮助将不胜感激。谢谢!!!
答案 0 :(得分:0)
该错误表明您将CosmosDB与MongoDB api结合使用。
仅当使用SQL api时,CosmosDB的spark连接器才支持它。
相反,您应该使用MongoDB连接器。
https://docs.microsoft.com/en-us/azure/cosmos-db/spark-connector