Трансляция "ПРИСОЕДИНЯЙТЕСЬ" во Флинке - PullRequest
0 голосов
/ 17 октября 2019

Есть ли способ использовать Broadcast Join в FLINK так же, как я использовал в SPARK. Я работаю с JOINS, но объем данных большой, поэтому мне потребуется Broadcast Join.

Спасибо

1 Ответ

0 голосов
/ 17 октября 2019

Flink не обеспечивает широковещательное соединение, как в Spark. Это довольно легко реализовать самостоятельно, используя BroadcastProcessFunction, но мне интересно, действительно ли это уместно. Широковещательное объединение имеет смысл, только если один из двух потоков достаточно мал, в противном случае объединение с разделением по ключам имеет гораздо больший смысл.

Чтобы реализовать это, передайте меньший поток шаблона и подключите его к потоку событий. ,В методе processBroadcastElement функции BroadcastProcessFunction сохраните новый шаблон, а в методе processElement найдите соответствующий шаблон и объедините его с обрабатываемым событием.

...