Pull to refresh

Comments 4

Спасибо, занимательно.

Вот только абзац про сборку jar файлов на 500 мегабайт я не очень понял. Спарковские параметры --files или --archives — они же работают по любому протоколу, в том числе hdfs:, или скажем http:, и вам в общем-то никто не мешает свои зависимости любого вида туда сложить. Туда, куда вам удобно.

Я не исключаю, что в этой логике баги есть, например, когда я пытался таким образом распределить по узлам справочники размером 30 гигабайт — на Spark 2.2.0 получалось очень плохо, судя по всему, где-то в этом коде есть бутылочное горлышко, однопоточное возможно. Но 500 мегабайт тут точно не предел — на границе 4 гигабайта у меня все еще прекрасно работает.

Рад, что Вам было интересно)


Я имел ввиду сборку толстых jar, если я хочу использовать что-то (например, из тех же spark-packages), чего нет на кластере. Да, я могу клась jar-ники в hdfs и указывать в параметрах запуска. Но в том и преимущество Maven, что он гарантирует мне, что скачаны все зависимости и нет конфликтов версий. Качать jar руками не всегда удобно.


Но ок, я подумаю, как перефразировать, спасибо за замечание!

На самом деле я примерно так этот абзац и понял. Если дело именно в зависимостях, есть один неплохой на мой взгляд способ — собрать все без maven, но aether. Скажем, Игорь Сухоруков тут об этом много раз писал, например вот тут. Aether в чистом виде — конечно слегка посложнее просто maven, но совсем не сильно. Если вы ничего не публикуете — то строк в 50 кода можно уложиться.
Sign up to leave a comment.