Spark сравнивает оценённый размер стороны join с spark.sql.autoBroadcastJoinThreshold. При AQE решение может уточняться по фактической статистике.
Как Spark определяет, что таблица достаточно 'маленькая' для broadcast join (верхняя граница)?
Spark сравнивает оценённый размер стороны join с spark.sql.autoBroadcastJoinThreshold. При AQE решение может уточняться по фактической статистике.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Spark сравнивает оценённый размер стороны join с spark.sql.autoBroadcastJoinThreshold. При AQE решение может уточняться по фактической статистике.
Размер берётся из доступной статистики плана, а не только из числа строк. Сжатый размер файлов также не равен памяти, нужной для broadcast-структуры. Hint BROADCAST может повлиять на выбор сверх автоматического порога, но не отменяет ограничений памяти и поддерживаемого типа соединения. Проверяйте действующие настройки и физический план, а не полагайтесь на чужое значение по умолчанию.
Источник: Документация Apache Kafka, Документация Apache Kafka.