搜索API弹性搜索索引

时间:2014-10-05 06:54:46

标签: java elasticsearch

我想从Java调用远程托管的弹性搜索索引,并根据某些条件从同一索引中获取数据。

帮助我,我是Elastic search及其索引机制的新手。

1 个答案:

答案 0 :(得分:2)

首先,您将使用elasricsearch客户端进行java。使用正确的版本

,maven依赖如下
<dependency>
    <groupId>org.elasticsearch</groupId>
    <artifactId>elasticsearch</artifactId>
    <version>${es.version}</version>
</dependency>

通过提供适当的主机ID和端口(默认为9300),使用TransportClient创建客户端。

Client client = new TransportClient()
.addTransportAddress(new InetSocketTransportAddress("host-ip-address", 9300));

最后查询结果。例如,匹配查询将如下所示。

QueryBuilder qb = QueryBuilders.matchQuery("location", "india");
SearchResponse response = esClient.prepareSearch("index-name").setTypes("type-name")
    .setQuery(qb)
    .execute().actionGet();

最后,您的回复将获得elasticsearch所需的所有文档,其中包含印度作为位置的所有文档。