要使用Elasticsearch Java API连接位于不同服务器上的多个节点,可以按照以下步骤进行操作:
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.15.0</version>
</dependency>
RestHighLevelClient
类创建一个Elasticsearch客户端实例。在创建客户端时,需要指定连接的节点信息。RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("node1", 9200, "http"),
new HttpHost("node2", 9200, "http"),
new HttpHost("node3", 9200, "http")
)
);
在上述代码中,通过HttpHost
类指定了每个节点的主机名、端口和协议。
SearchRequest searchRequest = new SearchRequest("index_name");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchAllQuery());
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
在上述代码中,首先创建一个SearchRequest
对象,并指定要搜索的索引名称。然后,使用SearchSourceBuilder
构建搜索查询,并将其设置为搜索请求的源。最后,通过客户端执行搜索请求,并获取搜索响应。
client.close();
通过以上步骤,你可以使用Elasticsearch Java API连接位于不同服务器上的多个节点,并执行各种Elasticsearch操作。请注意,以上示例仅为演示目的,实际使用时可能需要根据具体需求进行适当调整。
关于Elasticsearch的更多信息,你可以参考腾讯云的相关产品和文档:
领取专属 10元无门槛券
手把手带您无忧上云