본문 바로가기

공부방/Elasticsearch

elasticsearch - metric aggregation

조합을 통해서 어떠한 값을 도출해낼때 metric aggregation을 사용합니다.

 

실습 자료

https://github.com/minsuk-heo/BigData/blob/master/ch03/simple_basketball.json

 

 

아래의 커맨드를 이용하여 데이터를 저장하고, 저장한 데이터를 조회합니다.

curl -XPOST 'localhost:9200/_bulk?pretty' 
--header 'content-type:application/json' 
--data-binary @simple_basketball.json

 

데이터 조회

curl -XGET 'localhost:9200/basketball/record/_search?pretty'

 

aggregation 파일의 내용은 아래와 같다. 

 

aggregation 파일을 이용하여 점수 평균을 구해보자.

curl -XGET 
--header 'content-type:application/json' 
'localhost:9200/_search?pretty' 
--data-binary @avg_points_aggs.json

 

 

최대값 구하기

max_points_aggs 파일의 내용이다.

아래 파일을 이용하면 max 값을 구할 수 있다.

 

curl -XGET 
--header 'content-type:application/json' 
'localhost:9200/_search?pretty' 
--data-binary @max_points_aggs.json

 

 

동일한 방법으로 min, sum 값도 구할 수 있다.

 

모든 값을 구해보자


그렇다면 이 모든 값을 한번에 구할 수 있는 방법은 없을까?

stats를 사용하면 된다.

 

stats_points_aggs.json 파일의 내용을 살펴보자

별 다른 내용은 없다 기존에 max 값 대신 stats를 넣어주면 된다.

 

아래 커맨드를 이용하여 모든 결과를 산출해보자.

 

curl -XGET 
--header 'content-type:application/json' 
'localhost:9200/_search?pretty' 
--data-binary @stats_points_aggs.json

 

 

 

'공부방 > Elasticsearch' 카테고리의 다른 글

elastic search - 검색  (0) 2022.07.12
elasticsearch - bucket  (0) 2022.07.06
elasticsearch - search  (0) 2022.07.06
elasticsearch - 매핑 (mapping)  (0) 2022.07.06
elasticsearch - bulk  (0) 2022.07.06