Size: a a a

2021 November 26

CO

Chern Oleksander in Moscow Spark
Тут как раз задача, выгрузки раз в день, но почитаю про штуку что вы написали. Спасибо
источник

ЕГ

Евгений Глотов... in Moscow Spark
источник

A

Alex in Moscow Spark
вопрос по спарк 3.2 и адаптивному выполнению:

у нас есть утилитные методы по добавлению соли/функции для репартишена
есть тесты на это всё
(условно создали датафрейм с солью на 5-10 элементов, сделали репартишен и тд)
так как партиций задали побольше, то получали сколько-то партиций с 1 елементом внутри

и вот адаптив теперь понимает что "хм, пару мелких партиций, давай я их в 1 солью"

там где после репартишена мелких таблиц на 1000 элементов раньше было несколько партиций, то сейчас остаётся 1 партиция после выполнения
источник

A

Alex in Moscow Spark
с точки зрения оптимизации это понятно, датафрейм то мелкий
источник

A

Alex in Moscow Spark
@SparkApplicationMaster может сталкивались с этим?
источник

ЕГ

Евгений Глотов... in Moscow Spark
3.2 ещё не раскапывал пока, а надо чётко их разделить, или это приемлемое поведение?
источник

ЕГ

Евгений Глотов... in Moscow Spark
То есть он делает coalesce without shuffle, я правильно понял?
источник

A

Alex in Moscow Spark
ну у нас как раз есть доп утилиты которые если видят что датафрейм большой пытаются сохранить и получатся паркеты большие
то давайте сделаем репартишен по колонкам указанным(их передают как опциональный параметр)
получаем партиции помельче и уже их вкидываем в паркеты

и вот теперь эти тесты посыпались
источник

A

Alex in Moscow Spark
да
источник

ЕГ

Евгений Глотов... in Moscow Spark
Тесты на число файликов итоговых в папке?
источник

A

Alex in Moscow Spark
да
источник

ЕГ

Евгений Глотов... in Moscow Spark
Ну я думаю что это очень полезное изменение, лучше под него как-то попытаться адаптировать тесты, чем отключать
источник

A

Alex in Moscow Spark
в случае тестов значения занижены и в файликах по 1-2 записи
а сейчас 1 файлик 😁

то есть понятно что с точки зрения спарка всё валидно, он и не давал гарантий никаких на это
оптимизация валидна

но от этого не легче и непонятно как тестировать
источник

ЕГ

Евгений Глотов... in Moscow Spark
Спарк отнимает мою работу🤔☹️😆
источник

A

Alex in Moscow Spark
вот да, поэтому сижу думаю как тесты менять, просто в лоб подбирать значения начиная с каких чисел он перестаёт их мержить тоже получается какой-то магией
источник

A

Alex in Moscow Spark
решат они константы у себя поменять внутри и опять всё упало
источник

ЕГ

Евгений Глотов... in Moscow Spark
Но по сути он решает задачу разбиения
источник

ЕГ

Евгений Глотов... in Moscow Spark
Может параметры есть?
источник

ЕГ

Евгений Глотов... in Moscow Spark
Но не в доке, конечно же
источник

ЕГ

Евгений Глотов... in Moscow Spark
источник