Elasticsearch Java Low Level REST Client(入门)
Java Low Level REST Client 入门
本节描述从获取工件到在应用程序中使用它如何开始使用低级别REST客户端。
Javadoc
可以在https://artifacts.elastic.co/javadoc/org/elasticsearch/client/elasticsearch-rest-client/6.4.2/index.html找到低级别REST客户端的javadoc。
Maven仓库
低级别Java REST客户端托管在Maven Central上,所需的最低Java版本是1.7
。
低级别REST客户端与Elasticsearch具有相同的发布周期,将版本替换为想要的客户端版本,首先使用5.0.0-alpha4
发布版,客户端版本与客户端可以与之通信的Elasticsearch版本之间没有任何关系,低级别REST客户端与所有Elasticsearch版本兼容。
如果你正在寻找SNAPSHOT版本,可以通过https://snapshots.elastic.co/maven/获取Elastic Maven Snapshot存储库。
Maven配置
以下是如何使用maven作为依赖关系管理器来配置依赖关系,将以下内容添加到pom.xml
文件中:
<dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-client</artifactId> <version>6.4.2</version> </dependency>
Gradle配置
以下是使用gradle作为依赖关系管理器配置依赖关系的方法,将以下内容添加到build.gradle
文件中:
dependencies { compile 'org.elasticsearch.client:elasticsearch-rest-client:6.4.2' }
依赖关系
低级别的Java REST客户端内部使用Apache Http Async Client发送Http请求,它依赖于以下构件,即异步http客户端及其自身传递依赖关系:
- org.apache.httpcomponents:httpasyncclient
- org.apache.httpcomponents:httpcore-nio
- org.apache.httpcomponents:httpclient
- org.apache.httpcomponents:httpcore
- commons-codec:commons-codec
- ommons-logging:commons-logging
Shading
为了避免版本冲突,可以在单个JAR文件(有时称为“uber JAR”或“fat JAR”)中对依赖关系进行shaded并打包在客户端中,Shading依赖项包括获取其内容(资源文件和Java类文件)并重命名其某些包,然后将它们放入与低级别Java REST客户端相同的JAR文件中,可以通过Gradle和Maven的第三方插件来完成对JAR的Shading。
请注意,对JAR进行shading也会产生影响,例如,对Commons Logging图层进行Shading意味着第三方日志记录后端也需要shaded。
Maven配置
这是使用Maven Shade插件的配置,将以下内容添加到pom.xml
文件中:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <phase>package</phase> <goals><goal>shade</goal></goals> <configuration> <relocations> <relocation> <pattern>org.apache.http</pattern> <shadedPattern>hidden.org.apache.http</shadedPattern> </relocation> <relocation> <pattern>org.apache.logging</pattern> <shadedPattern>hidden.org.apache.logging</shadedPattern> </relocation> <relocation> <pattern>org.apache.commons.codec</pattern> <shadedPattern>hidden.org.apache.commons.codec</shadedPattern> </relocation> <relocation> <pattern>org.apache.commons.logging</pattern> <shadedPattern>hidden.org.apache.commons.logging</shadedPattern> </relocation> </relocations> </configuration> </execution> </executions> </plugin> </plugins> </build>
Gradle配置
这是使用Gradle ShadowJar插件的配置,将以下内容添加到build.gradle
文件中:
shadowJar { relocate 'org.apache.http', 'hidden.org.apache.http' relocate 'org.apache.logging', 'hidden.org.apache.logging' relocate 'org.apache.commons.codec', 'hidden.org.apache.commons.codec' relocate 'org.apache.commons.logging', 'hidden.org.apache.commons.logging' }
上一篇:Elasticsearch Java REST Client 目录
下一篇:初始化
相关推荐
另外一部分,则需要先做聚类、分类处理,将聚合出的分类结果存入ES集群的聚类索引中。数据处理层的聚合结果存入ES中的指定索引,同时将每个聚合主题相关的数据存入每个document下面的某个field下。