"Исключение в потоке" main "java .lang.RuntimeException: [неразрешенная зависимость: org. apache .spark # spark-avro_2.12; 2.4.4: не найдено] ... " похоже на проблему с доступом к центральному репозиторию Maven на https://repo1.maven.org/maven2/
, возможно, потому что ваша среда использует прокси.
Так что я думаю, что вы на правильном пути - вы можете вручную загрузить jar spark-avro_2.1x-2.4.x.jar
из https://repo1.maven.org/maven2/org/apache/spark/spark-avro_2.xx/2.4.x/, перенесите его на свой узел и используйте spark2-shell --jar spark-avro_2.xx-2.4.x.jar
для запуска оболочки REPL.
Похоже, вы используете дистрибутив Cloudera для Spark 2.4. Его последняя версия обслуживания 2.4.2, и она все еще основана на Scala 2.11, поэтому я думаю, что вы ищете jar spark-avro_2.11-2.4.2.jar
.
С этой флягой у меня все работает нормально:
$ spark2-shell --jars ~/.m2/repository/org/apache/spark/spark-avro_2.11/2.4.2/spark-avro_2.11-2.4.2.jar
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://xxxxxxx.xxxnet:4056
Spark context available as 'sc' (master = yarn, app id = application_xxxxxxxxxxxxx_xxxxx).
Spark session available as 'spark'.
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.4.0.cloudera2
/_/
Using Scala version 2.11.12 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_221)
Type in expressions to have them evaluated.
Type :help for more information.
scala> val df = spark.read.format("avro").load("/some/hdfs/path/kilo_sample.avro")
df: org.apache.spark.sql.DataFrame = [registration_dttm: string, id: bigint ... 11 more fields]
scala> df.show(false)
+--------------------+---+----------+---------+------------------------+------+---------------+-------------------+----------------------+----------+---------+----------------------------+----------------------------+
|registration_dttm |id |first_name|last_name|email |gender|ip_address |cc |country |birthdate |salary |title |comments |
+--------------------+---+----------+---------+------------------------+------+---------------+-------------------+----------------------+----------+---------+----------------------------+----------------------------+
|2016-02-03T07:55:29Z|1 |Amanda |Jordan |ajordan0@com.com |Female|1.197.201.2 |6759521864920116 |Indonesia |3/8/1971 |49756.53 |Internal Auditor |1E+02 |
|2016-02-03T17:04:03Z|2 |Albert |Freeman |afreeman1@is.gd |Male |218.111.175.34 |null |Canada |1/16/1968 |150280.17|Accountant IV | |
...
|2016-02-03T10:30:36Z|20 |Rebecca |Bell |rbellj@bandcamp.com |Female|172.215.104.127|null |China | |137251.19| | |
+--------------------+---+----------+---------+------------------------+------+---------------+-------------------+----------------------+----------+---------+----------------------------+----------------------------+
only showing top 20 rows
scala>
Если у вас все еще есть проблемы после пробного использования этой версии, обновите ваш вопрос с помощью полной трассировки стека, чтобы мы могли видеть точно в чем проблема.