Доступ к globalState в триггере - PullRequest
       12

Доступ к globalState в триггере

0 голосов
/ 20 февраля 2020

Могу ли я в окне Flink получить доступ к globalState через триггер, который определяется мной? Я пробовал triggerContext.getPartitionedState, но он может получить только состояние для каждого окна.

1 Ответ

0 голосов
/ 20 февраля 2020

Единственное состояние, доступное для Trigger, - это состояние ключа для каждого окна, используемое через triggerContext.getPartitionedState. Для триггеров не существует глобального состояния.

Существуют некоторые возможные обходные пути. Возможно, вы можете иметь Trigger, который срабатывает при каждом событии, а затем использовать глобальное состояние в ProcessWindowFunction, чтобы решить, что делать (это, вероятно, очень плохая идея).

В большинстве случаев, когда становится трудно получить то, что вы хотите от оконного API, лучше создать полностью индивидуальное решение с ProcessFunction. Если неясно, как решить вашу проблему таким образом, задайте другой вопрос, который содержит более подробную информацию о вашем случае использования.

...