Некоторые преимущества использования транслируемых хеш-соединений (Broadcast Hash Join) в Spark:
- Снижение объёма перемешивания данных. www.c-sharpcorner.com www.designandexecute.com Это ресурсоёмкая операция, так как все перемешиваемые данные должны быть записаны на диск, а потом переданы по сети. datareview.info Транслируемые хеш-соединения позволяют избежать перемешивания, что повышает производительность. datareview.info www.designandexecute.com
- Работа с перекошенными наборами данных. habr.com Транслируемое хеш-соединение невосприимчиво к перекошенным входным пакетам данных, так как разбиение в соответствии с соединительными ключами не является обязательным для левого и правого блока данных. habr.com
- Оптимизация операций соединения, когда один из наборов данных значительно меньше другого. www.c-sharpcorner.com
Однако у такого подхода есть и ограничения: транслируемые хеш-соединения эффективны только в случаях, когда один из наборов данных достаточно мал, чтобы поместиться в памяти каждого исполнителя. www.c-sharpcorner.com www.designandexecute.com Если транслируемый набор данных слишком большой, это может привести к повышенной нагрузке на память и снижению производительности. www.c-sharpcorner.com