Встречается на собеседованиях • сегодня
Что такое broadcast join в Spark
Broadcast join — это оптимизация в Spark, при которой маленькая таблица (размером меньше spark.sql.autoBroadcastJoinThreshold, по умолчанию 10 МБ) передаётся на все узлы кластера, избегая shuffle. Это ускоряет join, так как данные локально доступны на каждом executor.
Пример:
python
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("broadcast_example").getOrCreate()
# Маленькая таблица
small_df = spark.createDataFrame([(1, "A"), (2, "B")], ["id", "value"])
# Большая таблица
large_df = spark.createDataFrame([(1, "X"), (2, "Y"), (3, "Z")], ["id", "data"])
# Явный broadcast
result = large_df.join(broadcast(small_df), "id")
result.show()Нюансы:
- Автоматически работает при размере данных < порога
- Можно форсировать через
broadcast() - Избыточный broadcast больших данных может вызвать OOM

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы