Может ли состояние flink делиться на несколько потоков?

У меня есть вопрос о состоянии flink. Я хочу знать, может ли состояние быть общим для нескольких потоков. Спасибо.


person shen lei    schedule 29.08.2017    source источник


Ответы (1)


Определенная часть состояния Flink хранится в одном операторе. Но этот оператор может быть чем-то вроде RichCoFlatmap или CoProcessFunction и получать и обрабатывать входные данные из двух потоков (и вы можете каскадировать их, если задействовано более двух потоков).

Ваш вопрос очень широк, поэтому неясно, соответствует ли этот подход тому варианту использования, который вы имеете в виду.

person David Anderson    schedule 30.08.2017
comment
Итак, если я сохраняю состояние в ProcessFunction A, который затем передает поток данных и далее по конвейеру, у меня есть еще один ProcessFunction B. Может ли ProcessFunction B получить доступ к состоянию, которое было сохранено в A? - person AsadSMalik; 06.02.2019
comment
Нет. Доступ к состоянию можно получить только внутри оператора, в котором оно находится. - person David Anderson; 06.02.2019