Elasticsearch Java REST Client
Java REST Client有两种类型:
Java Low Level REST Client:用于Elasticsearch的官方低级别客户端,它允许通过http
与Elasticsearch集群通信,将请求编组和响应反编组留给用户,它与所有Elasticsearch版本兼容。
Java High Level REST Client:用于Elasticsearch的官方高级别客户端,基于低级别客户端,它公开API特定的方法,并负责请求编组和响应反编组。
Java Low Level REST Client
低级别客户端的特性包括:最小的依赖关系;跨所有可用节点负载均衡;在节点故障的情况下根据特定的响应码进行故障转移;失败的连接惩罚(失败的节点是否被重试取决于它连续失败了多少次,失败的尝试越多,客户端在再次尝试同一节点之前等待的时间就越长);持久连接;跟踪请求和响应的日志记录;可选的自动发现集群节点。
Java High Level REST Client
在6.0.0-beta1中被添加。
Java High Level REST Client在Java Low Level REST客户端之上工作,它的主要目标是公开API特定的方法,这些方法接受请求对象作为参数并返回响应对象,以便由客户端自己处理请求编组和响应反编组。
每个API可以同步调用,也可以异步调用。同步方法返回响应对象,而名称以async
后缀结尾的异步方法则需要一个监听器参数,一旦接收到响应或错误,监听器就会被通知(在由低级别客户端管理的线程池中)。
Java High Level REST Client依赖于Elasticsearch核心项目,它接受与TransportClient
相同的请求参数,并返回相同的响应对象。
文档 API
Java High Level REST Clien支持以下文档API:
- Index API
- Get API
- Exists API
- Delete API
- Update API
- Bulk API
- Multi-Get API
- Reindex API
- Update By Query API
- Delete By Query API
- Rethrottle API
搜索 API
Java High Level REST Client支持以下搜索API:
- Search API
- Search Scroll API
- Clear Scroll API
- Multi-Search API
- Search Template API
- Multi-Search-Template API
- Field Capabilities API
- Ranking Evaluation API
- Explain API
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。