Чтобы использовать Elasticsearch с Flink, будет проще, если вы будете использовать Flink's ElasticsearchSink
, а не работать с RestHighLevelClient
напрямую. Однако версия этого приемника для Elasticsearch 7.x появится в Flink 1.10, которая еще не была выпущена (она появится очень скоро; RC1 уже вышел).
Использование этого соединителя требует дополнительной зависимости, например flink-connector-elasticsearch6_2.11
(или flink-connector-elasticsearch7_2.11
, поставляется с Flink 1.10).
См. документы по использованию Elasticsearch с Flink .
Причина, по которой вы предпочитаете слив Flink вместо RestHighLevelClient
, заключается в том, что приемник Flink выполняет массовые запросы, обрабатывает ошибки и повторяет попытки, и он связан с механизмом контрольных точек Флинка, так что он может гарантировать, что ничего не будет потеряно, если что-то не получится.
Что касается вашего фактического вопроса, возможно, вам нужно добавить
libraryDependencies += "org.elasticsearch.client" % "elasticsearch-rest-client" % "7.5.2"