2016-06-30 12 views
1

Я пытаюсь выполнить Спарк работу на Mesos кластере, который зависит от spark-cassandra-connector библиотеки, но он держит неудачу сзависимость не распространяется на Спарк кластера

Exception in thread "main" java.lang.NoClassDefFoundError: com/datastax/spark/connector/package$ 

Как я понял из spark documentation

JAR и файлы копируются в рабочий каталог для каждого SparkContext на узлах исполнителя. ... Пользователи могут также включать любые другие зависимости, предоставляя список кодов maven с разделителями-запятыми --packages.

Но кажется, что только pucker-assembly-1.0.jar задача jar распространяется.

Я запускаю искру 1.6.1 с помощью scala 2.10.6. А вот spark-submit команды Я выполнение:

spark-submit --deploy-mode cluster 
      --master mesos://localhost:57811 
      --conf spark.ssl.noCertVerification=true 
      --packages datastax:spark-cassandra-connector:1.5.1-s_2.10 
      --conf spark.cassandra.connection.host=10.0.1.83,10.0.1.86,10.0.1.85 
      --driver-cores 3 
      --driver-memory 4000M 
      --class SimpleApp 
      https://dripit-spark.s3.amazonaws.com/pucker-assembly-1.0.jar 
      s3n://logs/E1SR85P3DEM3LU.2016-05-05-11.ceaeb015.gz 

Так почему не spark-cassandra-connector распространяется на все мои искровых исполнитель?

+0

Вы уверены, что он находит разъем? –

+0

Что это значит? Я пробовал пропустить зависимость коннектора, используя '--jars https: // dripit-spark.s3.amazonaws.com/spark-cassandra-connector_2.10-1.6.0.jar', и это тоже не сработало. –

ответ

0

Вы должны использовать правильную Maven координат синтаксис:

--packages com.datastax.spark:spark-cassandra-connector_2.10:1.6.0 

См

+0

Спасибо за помощь, но это, похоже, не проблема (и исходная ссылка на соединительный пакет действительно работает также). То же самое произошло, когда я попытался распространять другие пакеты/банки. –

+0

Странно, потому что это работает как шарм на нашем кластере – Tobi

 Смежные вопросы

  • Нет связанных вопросов^_^