ElasticSerarch

Elasticsearch Transport client example

천사진수님 2019. 5. 20. 22:47
반응형

Elasticsearch Transport client Query 예제

 

1. setup client  (9300 포트 사용)

Settings setting = Settings.builder().put("cluster.name",CLUSTER_NAME).build();
TransportClient client = new PreBuiltTransportClient(setting);
client.addTransportAddress(new TransportAddress(InetAddress.getByName("localhost"),9300));

2. make query

QueryBuilder query = QueryBuilders.boolQuery()
    .must(QueryBuilders.rangeQuery("ran_col1").from(START_TIME).to(END_TIME))
	.must(QueryBuilders.matchPhraseQuery("col1", _col1))
	.must(QueryBuilders.matchQuery("col2", _col2))
	.must(QueryBuilders.regexpQuery("reg1", _reg1));
		
AggregationBuilder agb = AggregationBuilders
		.terms("group_by_col1").field("col1");

3.  result response

SearchResponse response = client.prepareSearch("index")
		.setSize(1)		//결과값 사이즈
		.setQuery(query)	// 쿼리 사용 
		.addAggregation(agb)	// 집계함수 사용 
		.get();				

 

반응형