2014-10-05 170 views
1

我想從Java調用遠程託管的彈性搜索索引,並根據某些條件從相同索引中獲取數據。搜索API彈性搜索索引

幫助我,我是新來的彈性搜索和它的索引機制。

+0

這可以通過簡單的步驟來回答,以及谷歌有這個查詢的所有答案。可以重新打開一個健康的討論。 – shaun 2018-01-05 19:02:10

回答

2

第一件事就是你使用java的elasricsearch客戶端。用正確的版本

<dependency> 
    <groupId>org.elasticsearch</groupId> 
    <artifactId>elasticsearch</artifactId> 
    <version>${es.version}</version> 
</dependency> 

二Maven的依賴關係如下通過提供適當的主機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所需的所有以印度爲位置的文檔的結果。