gpt4 book ai didi

amazon-web-services - EMR 5.21、Spark 2.4 - Json4s 依赖被破坏

转载 作者:行者123 更新时间:2023-12-04 13:59:10 25 4
gpt4 key购买 nike

问题
在 EMR 5.21 中,Spark - Hbase 集成被破坏。
df.write.options().format().save() 失败。
原因是 spark 2.4 中的 json4s-jackson 3.5.3 版,EMR 5.21
它在 EMR 5.11.2、Spark 2.2、son4s-jackson 版本 3.2.11 中工作正常
问题是这是 EMR,所以我不能用较低的 json4s 重建 spark。
有什么解决方法吗?
错误
py4j.protocol.Py4JJavaError:调用 o104.save 时出错。 : java.lang.NoSuchMethodError: org.json4s.jackson.JsonMethods$.parse(Lorg/json4s/JsonInput;Z)Lorg/json4s/JsonAST$JValue;
提交

spark-submit --master yarn \
--jars /usr/lib/hbase/ \
--packages com.hortonworks:shc-core:1.1.3-2.3-s_2.11 \
--repositories http://repo.hortonworks.com/content/groups/public/ \
pysparkhbase_V1.1.py s3://<bucket>/ <Namespace> <Table> <cf> <Key>
代码
import sys
from pyspark.sql.functions import concat
from pyspark import SparkContext
from pyspark.sql import SQLContext,SparkSession
spark = SparkSession.builder.master("yarn").appName("PysparkHbaseConnection").config("spark.some.config.option", "PyHbase").getOrCreate()
spark.sql("set spark.sql.parquet.compression.codec=uncompressed")
spark.conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer");
data_source_format = 'org.apache.spark.sql.execution.datasources.hbase'
df = spark.read.parquet(file)
df.createOrReplaceTempView("view")
.
cat = '{|"table":{"namespace":"' + namespace + '", "name":"' + name + '", "tableCoder":"' + tableCoder + '", "version":"' + version + '"}, \n|"rowkey":"' + rowkey + '", \n|"columns":{'
.
df.write.options(catalog=cat).format(data_source_format).save()

最佳答案

没有明显的答案。快速检查 the SHC POM不显示 json 文件的直接导入,因此您不能仅更改该 pom 并自己构建工件。

您将不得不与 EMR 团队交谈,让他们同步构建连接器和 HBase。

FWIW,让jackson同步是发布大数据堆栈的压力点之一,而AWS SDK每两周发布一次更新要求的习惯也是压力点之一...... Hadoop移至aws shaded SDK纯粹是为了停止AWS 工程决策定义了每个人的选择。

关于amazon-web-services - EMR 5.21、Spark 2.4 - Json4s 依赖被破坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55070647/

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