Flink: QueryableStateClient не отвечает через некоторое время - PullRequest
0 голосов
/ 23 января 2019

В моем приложении Flink я полагаюсь на состояние Запроса Flink для запроса результатов вычислений.

К сожалению, через некоторое время после запуска приложения и получения множества вычислительных запросов клиент запросов умирает (он больше не отвечает). Я долго отлаживал это, но не могу понять, почему это происходит.

У вас есть какие-нибудь подсказки, почему QueryableStateClient умирает?

Является ли RocksDBStateBackend решением проблемы? RocksDBStateBackend предпочтительнее в производстве, хотя, возможно, немного медленнее?


Мой стек:

  • Flink 1.6.2
  • Мой уровень параллелизма / потоков> 1
  • Я использую бэкэнды состояний MemoryStateBackend или FsStateBackend. Я еще не тестировал с RocksDBStateBackend. Я знаю следующее предупреждение, но предположительно RocksDBStateBackend медленнее?

    Шаблоны чтения-изменения-записи небезопасны и могут привести к сбою запрашиваемого сервера состояний из-за одновременных изменений. RocksDBStateBackend защищен от этих проблем.

  • С FsStateBackend я попробовал как локальную файловую систему, так и hdfs. Оба терпят неудачу.
  • Я также спросил Flink: возможно ли удалить состояние Queryable через X раз? , чтобы выяснить, является ли проблема «слишком большим» состоянием.
...