У меня есть три производителя кафки, которые отправляют потоки данных на одну и ту же тему с произвольными интервалами в 5-10 секунд. Есть потребитель Spark (на основе Python), который потребляет данные.
Требуется сначала разделить входящий поток на 3 отдельных потока в получателе, а затем объединить их на основе столбца. Производители разработаны с использованием Python.
Мне удалось разделить входящий поток данных на 3 отдельных потока в Python. Тем не менее, я сталкиваюсь с проблемой объединения всех трех вместе на основе ключа, который является первым значением во входящем потоке данных.
Когда я присоединяюсь к 2 потокам, соединение работает, как и ожидалось.
Однако, когда я присоединяюсь ко всем трем потокам, я не получаю никакого вывода.
P1.LeftOuterJoin(P2) # works
P1.LeftOuterJoin(P3) # works
P2.Join(P3) # works
P1.LeftOuterJoin(P2.Join(P3)) # no output coming up