я продолжаю получать
java.lang.NoClassDefFoundError: org/apache/avro/mapred/AvroWrapper
при вызове show()
для объекта DataFrame. Я пытаюсь сделать это через оболочку (spark-shell --master yarn). Я вижу, что оболочка распознает схему при создании объекта DataFrame, но если я выполняю какие-либо действия с данными, она всегда будет выдавать NoClassDefFoundError
при попытке создать экземпляр AvroWrapper
. Я попытался добавить avro-mapred-1.8.0.jar
в свой каталог $HDFS_USER/lib
в кластере и даже включил его с помощью параметра --jar при запуске оболочки. Ни один из этих вариантов не сработал. Мы будем очень признательны за любые советы. Ниже приведен пример кода:
scala> import org.apache.spark.sql._
scala> import com.databricks.spark.avro._
scala> val sqc = new SQLContext(sc)
scala> val df = sqc.read.avro("my_avro_file") // recognizes the schema and creates the DataFrame object
scala> df.show // this is where I get NoClassDefFoundError