Мы должны обеспечить полный путь к баночкам, в противном случае она не будет выполнена.
Пожалуйста, проверьте приведенные ниже детали из документации искры для разных способов обеспечения --jar.
При использовании spark-submit прикладная банка вместе с любыми баночками, включенными в опцию --jars, автоматически переносится в кластер. URL-адреса, указанные после -jars, должны быть разделены запятыми. Этот список включен в пути к классам драйверов и исполнителей. Расширение каталога не работает с --jars.
Спарк использует следующую схему URL, чтобы различные стратегии распространяющих банки:
файл: - Абсолютные пути и файла:/URIs обслуживаются HTTP файловым сервером водителя, и каждый исполнитель тянет файл из HTTP-сервер драйвера.
HDFS :, HTTP :, HTTPS :, FTP: - это тянуть вниз файлы и баночки из URI, как и ожидалось
местные: - это URI, начиная с локального: /, как ожидается, существовать как локальный файл на каждом рабочем узле. Это означает, что никакой сетевой IO не будет понесен и будет хорошо работать для больших файлов/JAR, которые будут перенаправлены каждому работнику или переданы через NFS, GlusterFS и т. Д.
Обратите внимание, что JAR и файлы копируются в рабочий каталог для каждый SparkContext на узлах исполнителя. Это может потребовать значительного объема пространства с течением времени и его необходимо будет очистить. С YARN очистка обрабатывается автоматически, а с помощью Spark автономно автоматическую очистку можно настроить с помощью свойства spark.worker.cleanup.appDataTtl.
Пользователи могут также включать любые другие зависимости, предоставляя список координат maven с разделителями-запятыми --packages. Все транзитивные зависимости будут обрабатываться при использовании этой команды. Дополнительные репозитории (или резольверы в SBT) могут быть добавлены с разделителями-запятыми с помощью флагов-репозиториев. Эти команды могут использоваться с pyspark, spark-shell и spark-submit для включения Spark Packages.
Для Python эквивалентная опция -py-files может использоваться для распространения библиотек .egg, .zip и .py для исполнителей.
Для получения дополнительной информации, пожалуйста, проверьте link.
Я не могу понять, что такое местоположение и как мы предоставляем банки. Еще одна вещь, такая же конфигурация работает с одним oozie/hue, но не с другим. Как отладить это? Если возможно, вы можете объяснить одним примером, как мы предоставляем местоположение банки. Благодарю. –
где вы это делаете? и каков ваш путь в банке? –
Если вы находитесь в баночках в HDFS, вы должны указать местоположение, если ваши банки находятся на местном уровне, вы должны указать местоположение. –