Уменьшение размера приложения, предоставляя банку искрового Classpath для зависимостей Maven:Установка свечи на пути к классам EC2: spark.driver.extraClassPath и spark.executor.extraClassPath
Мой кластер, содержащий от 3 EC2 экземпляров на котором Hadoop и искра работает. Если я создаю jar с зависимостями maven, он становится слишком большим (около 100 МБ), который я хочу избежать, поскольку Jar получает репликацию на всех узлах, каждый раз, когда я запускаю задание.
Чтобы избежать этого, у меня есть построить пакет Maven как «Maven пакет» .Для разрешения зависимостей я скачал все зависимости Maven на каждом узле, а затем только при условии, выше ниже баночке путей:
Я добавил класс дорожки на каждом узле в «искрового defaults.conf» как
spark.driver.extraClassPath /home/spark/.m2/repository/com/google/code/gson/gson/2.3.1/gson-2.3.1.jar:/home/spark/.m2/repository/com/datastax/cassandra/cassandra-driver-core/2.1.5/cassandra-driver-core-2.1.5.jar:/home/spark/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar:/home/spark/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar:/home/spark/.m2/repository/com/datastax/spark/spark-cassandra-connector-java_2.10/1.2.0-rc1/spark-cassandra-connector-java_2.10-1.2.0-rc1.jar:/home/spark/.m2/repository/com/datastax/spark/spark-cassandra-connector_2.10/1.2.0-rc1/spark-cassandra-connector_2.10-1.2.0-rc1.jar:/home/spark/.m2/repository/org/apache/cassandra/cassandra-thrift/2.1.3/cassandra-thrift-2.1.3.jar:/home/spark/.m2/repository/org/joda/joda-convert/1.2/joda-convert-1.2.jar
Он работал, локально на одном узле. Все еще я получаю эту ошибку. Любая помощь будет оценена.
Я знаю, что приложение Jar необходимо, и все готово на месте. Я говорю о других баночках (зависимость от Maven). –
положите только зависимость maven в файл pom. Он будет принимать все файлы jar в главном файле jar приложения. он решит вашу проблему. –
Если я это сделаю, это приведет к большому файлу jar, который я пытаюсь избежать. –