Я не могу записать данные в **** cosmos db ****, используя блок данных искрового кластера . Тем не менее, я попробовал все ссылки и решения в Stackoverflow и Github и перепробовал все возможные jar-файлы для каждой версии.
стек ошибок:
java.lang.NoSuchMethodError:
com.microsoft.azure.documentdb.Offer.getContent () Lorg / JSON / JSONObject;
в
com.microsoft.azure.cosmosdb.spark.CosmosDBConnection.getCollectionThroughput (CosmosDBConnection.scala: 163)
в
com.microsoft.azure.cosmosdb.spark.CosmosDBSpark $ .save (CosmosDBSpark.scala: 173)
в
com.microsoft.azure.cosmosdb.spark.CosmosDBSpark $ .save (CosmosDBSpark.scala: 501)
в
com.microsoft.azure.cosmosdb.spark.DefaultSource.createRelation (DefaultSource.scala: 74)
в
org.apache.spark.sql.execution.datasources.SaveIntoDataSourceCommand.run (SaveIntoDataSourceCommand.scala: 45)
в
org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult $ lzycompute (commands.scala: 72)
в
org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult (commands.scala: 70)
в
org.apache.spark.sql.execution.command.ExecutedCommandExec.doExecute (commands.scala: 88)
в
org.apache.spark.sql.execution.SparkPlan $$ anonfun $ выполнять $ 1.Apply (SparkPlan.scala: 143)
в
org.apache.spark.sql.execution.SparkPlan $$ anonfun $ выполнять $ 1.Apply (SparkPlan.scala: 131)
в
org.apache.spark.sql.execution.SparkPlan $$ anonfun $ ExecuteQuery $ 5.Apply (SparkPlan.scala: 183)
в
org.apache.spark.rdd.RDDOperationScope $ .withScope (RDDOperationScope.scala: 151)
в
org.apache.spark.sql.execution.SparkPlan.executeQuery (SparkPlan.scala: 180)
в
org.apache.spark.sql.execution.SparkPlan.execute (SparkPlan.scala: 131)
в
org.apache.spark.sql.execution.QueryExecution.toRdd $ lzycompute (QueryExecution.scala: 114)
в
org.apache.spark.sql.execution.QueryExecution.toRdd (QueryExecution.scala: 114)
в
org.apache.spark.sql.DataFrameWriter $$ anonfun $ RunCommand $ 1.Apply (DataFrameWriter.scala: 690)
в
org.apache.spark.sql.DataFrameWriter $$ anonfun $ RunCommand $ 1.Apply (DataFrameWriter.scala: 690)
в
org.apache.spark.sql.execution.SQLExecution $$ anonfun $ withCustomExecutionEnv $ 1.Apply (SQLExecution.scala: 99)
в
org.apache.spark.sql.execution.SQLExecution $ .withSQLConfPropagated (SQLExecution.scala: 228)
в
org.apache.spark.sql.execution.SQLExecution $ .withCustomExecutionEnv (SQLExecution.scala: 85) к
Мой код:
import org.joda.time._
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" -> "MY-CONNECTION-ENDPOINT",
"Masterkey" -> "MY-KEY",
"Database" -> "Families",
"Collection" -> "Families","Upsert"->"true")
val config = Config(configMap)
val df = spark.range(5).select(col("id").cast("string").as("value"))
df.write.mode(SaveMode.Overwrite).cosmosDB(config)