我正在使用Cloudera VM 5.8 读取sqoop导入的Avro文件时出错,使用snappy编解码器压缩
conf = (SparkConf().setMaster("local").setAppName("anoterApp1").set("spark.executor.memory", "1g"))
sc=SparkContext(conf= conf)
sqlc = SQLContext(sc)
df = sqlc.read.format("com.databricks.spark.avro").load("/sqoopimported/avro/compressed/directorypath")
收到以下错误: py4j.protocol.Py4JJavaError:调用o266.load时发生错误。
如果我没有使用snappy编解码器
压缩文件,代码工作正常答案 0 :(得分:0)
尝试添加此配置
spark.conf.set("spark.sql.avro.compression.codec", "snappy")
此文档也很有用
https://docs.databricks.com/spark/latest/data-sources/read-avro.html