Spark
1. Что такое Spark executor?
2. Что такое Spark Catalyst?
3. Какие физические джойны есть в Spark (hash join, broadcast join, sort-merge и т.п.)?
4. Что такое cache и persist в Spark, в чем их отличия (memoryOnly vs нестираемый persist)?
5. Как и в каких случаях стоит применять broadcast join и кэширование для оптимизации?
6. Как вы оптимизировали запросы в Spark (рефакторинг, изменение партиционирования, broadcast, кэширование)?
7. Что вызывает OOM в Spark — как диагностировать (driver vs executor) и какие шаги предпринимать?
8. Какие метрики/разделы Spark UI вы смотрите при расследовании проблем и оптимизации?
9. Чем отличается coalesce от repartition, когда использовать каждое из…