gpt4 book ai didi

hadoop - 将数据帧写入 Phoenix

转载 作者:可可西里 更新时间:2023-11-01 14:12:59 25 4
gpt4 key购买 nike

我正在尝试将 Dataframe 写入 Phoenix 表,但出现异常。

这是我的代码:

df.write.format("org.apache.phoenix.spark").mode(SaveMode.Overwrite).options(collection.immutable.Map(
"zkUrl" -> "localhost:2181/hbase-unsecure",
"table" -> "TEST")).save();

异常(exception)情况是:

org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 3.0 failed 4 times, most recent failure: 
Lost task 0.3 in stage 3.0 (TID 411, ip-xxxxx-xx-xxx.ap-southeast-1.compute.internal):
java.lang.RuntimeException: java.sql.SQLException: No suitable driver found for jdbc:phoenix:localhost:2181:/hbase-unsecure;
at org.apache.phoenix.mapreduce.PhoenixOutputFormat.getRecordWriter(PhoenixOutputFormat.java:58)
at org.apache.spark.rdd.PairRDDFunctions$anonfun$saveAsNewAPIHadoopDataset$1$anonfun$12.apply(PairRDDFunctions.scala:1030)
at org.apache.spark.rdd.PairRDDFunctions$anonfun$saveAsNewAPIHadoopDataset$1$anonfun$12.apply(PairRDDFunctions.scala:1014)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
at org.apache.spark.scheduler.Task.run(Task.scala:88)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:214)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

我已将 phoenix-sparkphoenix-core jar 添加到我的 pom.xml

最佳答案

根据 Phoenix-Spark plugin医生,如果你还没有,你可能想同时设置 spark.executor.extraClassPathspark.driver.extraClassPathSPARK_HOME/conf/spark-defaults.conf包括 phoenix-<version>-client.jar .

关于hadoop - 将数据帧写入 Phoenix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42897217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com