Разберите реальный кейс через узкое место, план выполнения и измеримый эффект. Для сложных join типичны skew ключей, лишний shuffle, раздувание строк и слишком большой broadcast.
Расскажи про интересные кейсы оптимизации в Spark, связанные с признаками и сложными джойнами
Разберите реальный кейс через узкое место, план выполнения и измеримый эффект. Для сложных join типичны skew ключей, лишний shuffle, раздувание строк и слишком большой broadcast.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Разберите реальный кейс через узкое место, план выполнения и измеримый эффект. Для сложных join типичны skew ключей, лишний shuffle, раздувание строк и слишком большой broadcast.
Проверьте Spark UI и explain: размеры промежуточных данных, spill, долгие tasks и перекос partitions. Возможные меры — ранние фильтры/проекции, предварительная агрегация, broadcast действительно небольшой стороны, актуальная статистика и AQE. Cache полезен для повторно используемых вычислений, но занимает память. Для признаков отдельно проверяйте point-in-time correctness и утечку будущего. Числа ускорения нужно приводить из замера на сопоставимых данных, не из общих ожиданий.
Источник: Документация Apache Kafka.