2016-08-10 6 views
6

в искровом 2.0.0 в выпуске note, он говорит, что:Должны ли мы по-прежнему делать жирную банку для отправки работ в Spark 2.0.0?

Спарк 2.0 больше не требует жир сборки баночки для развертывания производства.

  • Означает ли это, что нам не нужно, чтобы сделать жирную банку больше для предоставления рабочих мест?

  • Если да, то как? Таким образом, документация here не актуальна.

ответ

8

Означает ли это, что нам не нужно, чтобы сделать толстую банку больше для подающих рабочих мест?

К сожалению, нет. Вы все равно должны создать JAR для Uber для развертывания Sparks.

Название из примечаний к выпуску очень вводящее в заблуждение. Фактическое значение заключается в том, что сам Spark как зависимость больше не компилируется в JAR uber, но действует как обычный JAR приложения с зависимостями. Вы можете увидеть это более подробно @SPARK-11157, который называется «Разрешить искру, который будет построен без сборок», и прочитайте статью под названием "Replacing the Spark Assembly with good old jars", в которой описаны плюсы и минусы развертывания Spark не как несколько огромных JAR (Core, Streaming, SQL и т. Д.). ..), но как несколько JAR с относительно регулярным размером, содержащий код, и каталог lib/ со всеми зависимыми зависимостями.

Если вы действительно хотите детали, this pull request касается нескольких ключевых частей.

+0

Я читаю, что вы отвечаете как 10 раз. Я также читал ссылки, которые вы предоставили. Можете ли вы четко указать причину, по которой я должен создать толстую банку? Что, если я этого не сделаю, каковы потенциальные проблемы с просто указанием предоставленной области для всех искровых зависимостей? – MaxNevermind

+0

@MaxNevermind Если вы этого не сделаете и отправляете только свой скомпилированный код, кто будет предоставлять зависимостей третьей стороны? Во время выполнения приложение будет взорваться с помощью класса ClassNotFoundException. –

+0

Я задал неправильный вопрос. Что делать, если я делаю жирную банку, но указываю предоставленную область для всех искровых зависимостей, потому что они обеспечены окружающей средой? Итак, сторонние зависимости, которые использует мое приложение, но Spark не будут упакованы в толстую банку. – MaxNevermind