在scala中找不到resthighlevelclient

nmpmafwu  于 2021-06-24  发布在  Flink
关注(0)|答案(2)|浏览(513)

我正在尝试在scala程序中插入elasticsearch。
在build.sbt中我添加了

libraryDependencies += "org.elasticsearch.client" % "elasticsearch-rest-high-level-client" % "7.5.2" ,
libraryDependencies += "org.elasticsearch" % "elasticsearch" % "7.5.2"

我的密码是

val client = new RestHighLevelClient( RestClient.builder(new HttpHost("localhost", 9200, "http")))

编译时,我得到如下错误

not found: type RestHighLevelClient
not found: value RestClient

我错过了一些重要的东西吗?我的目标是从flink获得一条流,并将其插入elasticsearch,非常感谢您的帮助。

vohkndzv

vohkndzv1#

我们不需要单独使用这些依赖项来使用flink流在elasticsearch中插入数据。

libraryDependencies += "org.elasticsearch.client" % "elasticsearch-rest-high-level-client" % "7.5.2" ,
libraryDependencies += "org.elasticsearch" % "elasticsearch" % "7.5.2"

只需使用这个flink-connector-elasticsearch7或flink-connector-elasticsearch6

libraryDependencies += "org.apache.flink" %% "flink-connector-elasticsearch7" % "1.10.0"

elasticsearch的所有依赖项都与flink elastic连接器一起提供。所以我们不需要将它们单独包含在 build.sbt 文件。
flink elasticsearch的build.sbt文件

name := "flink-streaming-demo"

scalaVersion := "2.12.11"

val flinkVersion = "1.10.0"

libraryDependencies += "org.apache.flink" %% "flink-scala" % flinkVersion % "provided"
libraryDependencies += "org.apache.flink" %% "flink-streaming-scala" % flinkVersion % "provided"
libraryDependencies += "org.apache.flink" %% "flink-connector-elasticsearch7" % flinkVersion

欲知更多详情,请浏览我在这里提供的flink elasticsearch代码。
注意:自从Elastic6.x以后,他们开始全面支持rest elastic客户端。在elastic5.x之前,他们一直在使用transport elastic客户端。

yhuiod9q

yhuiod9q2#

使用elasticsearch和flink如果使用flink的 ElasticsearchSink ,而不是与 RestHighLevelClient 直接。不过,flink1.10中的elasticsearch7.x版还没有发布(很快就会发布;rc1已输出)。
使用此连接器需要额外的依赖项,例如 flink-connector-elasticsearch6_2.11 (或 flink-connector-elasticsearch7_2.11 ,与flink 1.10一起提供)。
请参阅与flink一起使用elasticsearch的文档。
为什么更喜欢Flink的Flume而不是使用 RestHighLevelClient 你自己就是flink sink发出批量请求,处理错误和重试,并且它与flink的检查点机制相结合,所以它能够保证如果某些东西失败了,什么都不会丢失。
至于你的实际问题,也许你需要补充一下

libraryDependencies += "org.elasticsearch.client" % "elasticsearch-rest-client" % "7.5.2"

相关问题