Size: a a a

2020 September 02

EV

Eduard Vlasov in Data Engineers
но вдруг еще куда-то забыл посмотреть
источник

АЖ

Андрей Жуков... in Data Engineers
Ого. От Датабриксов рассылки на русском пошли.
источник

EV

Eduard Vlasov in Data Engineers
Eduard Vlasov
Привет! Ловлю ошибку SparkOutOfMemoryError, подскажите плиз куда можно покопать.
Пробовал увеличивать memoryOverhead и executor memory - пока не помогает. В запросе 2 window functions по разным полям, обрабатывается инфа за день, на некоторых днях работает норм, на некоторых нет.
это точно из-за перекоса в данных, теперь ищу как решить эту проблему в window функциях
источник

RI

Rustam Iksanov in Data Engineers
Eduard Vlasov
это точно из-за перекоса в данных, теперь ищу как решить эту проблему в window функциях
выбрать второй ключ партиционирования, например.
источник

AS

Andrey Smirnov in Data Engineers
Eduard Vlasov
это точно из-за перекоса в данных, теперь ищу как решить эту проблему в window функциях
а что считаешь с помощью window?
источник

EV

Eduard Vlasov in Data Engineers
Andrey Smirnov
а что считаешь с помощью window?
сессии юзеров
источник

EV

Eduard Vlasov in Data Engineers
есть юзеры которые делают очень много действий
источник

EV

Eduard Vlasov in Data Engineers
там 2 стадийный window запрос, первый размечает интервалы между соседними событиями, воторй суммой с накоплением маркирует сессии
источник

EV

Eduard Vlasov in Data Engineers
ну и в общем тут ключ партиционирования не поменять, я склоняюсь сейчас к тому что просто исключать таких активных юзеров из датасета
источник

AS

Andrey Smirnov in Data Engineers
Eduard Vlasov
ну и в общем тут ключ партиционирования не поменять, я склоняюсь сейчас к тому что просто исключать таких активных юзеров из датасета
ты можешь по времени разбивать (считаем сначала эту неделю, потом следующую и т.д.), а потом просуммировать их
источник

EV

Eduard Vlasov in Data Engineers
и так по дням считается
источник

EV

Eduard Vlasov in Data Engineers
дальше только по часам разбивать :)
источник

А

Алексей in Data Engineers
а почему partition by? может вынести перекошенных юзеров в отдельный расчет (дать им все ресурсы отдельным расчетом)
источник

EV

Eduard Vlasov in Data Engineers
я сомневаюсь что это поможет, датасет по одному такому юзеру не влазит в машину
источник

EV

Eduard Vlasov in Data Engineers
тут только машины пожирнее если поставить
источник

ИК

Иван Калининский... in Data Engineers
Eduard Vlasov
ну и в общем тут ключ партиционирования не поменять, я склоняюсь сейчас к тому что просто исключать таких активных юзеров из датасета
Может отказаться от Windows и делать groupBy().agg()?
источник

EV

Eduard Vlasov in Data Engineers
а потом обратно джоинить? :)
источник

ИК

Иван Калининский... in Data Engineers
Да, придётся обогащать
источник

EV

Eduard Vlasov in Data Engineers
грустно это конечно но может и взлетит ага
источник

ИК

Иван Калининский... in Data Engineers
Eduard Vlasov
грустно это конечно но может и взлетит ага
Согласен, ничо веселого
источник