Size: a a a

2021 February 28

ПФ

Паша Финкельштейн... in Moscow Spark
Alex
С as нужно быть очень аккуратным, так как если мне не изменят память то он только вью создаёт на указанный дата класс, но под капотом продолжает таскать все что было

У нас так делали выбор на 50+ полей, потом as с 2 полями и потом удивлялись откуда в шафле потом 100+гб
Не совсем, он искренне пытается привести типы, проведи простой эксперимент с сиквенсом или csv
источник

G

Gev in Moscow Spark
Тогда типизированный джойн не нужен если в начале делать селект
источник

G

Gev in Moscow Spark
А черт. Алиасы. Забыл уже
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Gev
Тогда типизированный джойн не нужен если в начале делать селект
Нужен чтобы не возиться с кривыми именами полей
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Вот )
источник

G

Gev in Moscow Spark
Понял.
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Ну и помним что по дороге у тебя все операции становятся безопасными
источник

G

Gev in Moscow Spark
Да. Это плюс. Но как схема меняется я получаю на проме фигу вместо хотя бы чего то и потом бегу и срочно делаю багфикс
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Я согласен что тут есть трейдофф, конечно, но детерминированность лично для меня всегда выигрывала с тех пор как моё пришлось три месяца данных пересчитывать
источник

A

Alex in Moscow Spark
Паша Финкельштейн
Не совсем, он искренне пытается привести типы, проведи простой эксперимент с сиквенсом или csv
поля которые перечислены и замепились да, но под капотом продолжает остальные тоже таскать
в этом был поинт
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Alex
поля которые перечислены и замепились да, но под капотом продолжает остальные тоже таскать
в этом был поинт
Надо проверить, вероятно это правда, но можно для надёжности сделать select перед кастом
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Хотя странно, судя по тому, что я вижу в сгенерированном коде такого быть не может
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Но мало ли какого углового случая я не видел
источник

AA

Aleksandr Aleksandro... in Moscow Spark
Паша Финкельштейн
Почему-то большая часть кода на спарке, который мне видно - это работа с нетипизированным api, а не с классами
Там же вроде есть ещё совсем небольшая просадка по производительности при использовании типизированных датасетов. Или я не прав?
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Aleksandr Aleksandrov
Там же вроде есть ещё совсем небольшая просадка по производительности при использовании типизированных датасетов. Или я не прав?
Судя по тому что говорит датабрикс - далее быстрее может быть
источник

ПФ

Паша Финкельштейн... in Moscow Spark
*даже
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Но этому всему нельзя верить, надо смотреть на своём воркфлоу
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Потому что хрен знает что они измеряли
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Что я могу сказать: никаких типов там практически нет, холстейдж кодген перемалывает всё в муку практически
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Единственное что оно всё вызывает наши функции и они вот могут быть написаны плохо, конечно
источник