본문 바로가기

공부방/Elasticsearch

elasticsearch - bucket

 

자료는 아래에서 확인할 수 있습니다.

https://github.com/minsuk-heo/BigData/tree/master/ch04

 

group by 라고 보면 된다.

농구팀을 볼 때 A팀, B팀이 존재하는데

팀별로 값을 도출해 내고 싶을 대 사용하는 것이다.

 

 

basketball_mappin.json 파일을 살펴보자.

string -> text로 타입을 변경해 주었으며

https://stackoverflow.com/questions/47452770/no-handler-for-type-string-declared-on-field-name

 

submit_date -> date로 변경을 해주었다.

https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-date-format.html

 

 

 

curl -XPUT 
--header 'content-type:application/json' 
'localhost:9200/basketball/record/_mapping?include_type_name=true&pretty' 
-d @basketball_mapping.json

 

조회해보자.

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

 

mapping 정보가 등록이 된 것을 확인할 수 있다.

 

 

 

 

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

 

팀별로 나누기


 

terms_aggs.json 파일을 준비합니다.

terms_aggs.json 파일에는 아래의 내용이 준비되어 있습니다.

 

위 파일을 이용하여 어떤 팀들이 존재하는지, 팀의 개수를 구하는 방법을 알아보겠습니다.

 

 

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

 

la 2팀, chicago 2팀이 있는 것을 확인할 수 있다.

 

 

 

stats_by_team.json 파일을 준비합니다.

 

 

 

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

 

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

elasticsearch - 질의(QueryDSL)  (0) 2022.07.13
elastic search - 검색  (0) 2022.07.12
elasticsearch - metric aggregation  (0) 2022.07.06
elasticsearch - search  (0) 2022.07.06
elasticsearch - 매핑 (mapping)  (0) 2022.07.06