본문 바로가기
728x90
반응형
SMALL

Elasticsearch Aggregation3

Elasticsearch Mappings - Nested type Elasticsearch는 기본적으로 동적매핑을 지원하기 때문에 index 에 doc를 추가하면 자동으로 매핑이 생성된다. 하지만 보다 더 디테일하게 작업하기 위해서는 미리 매핑 정보를 설정해 두는 것이 좋다. 개발/테스트를 하다보면 mapping 정보를 추가/수정/삭제 해 보면서 문제를 해결하는 경우가 많다. mapping 정보는 한번 추가하면 수정이 불가능하기 때문에 (다른 index를 만들고 기존 index data를 다시 insert 하고 index name 을 변경하는 방법으로는 가능) 초기 설계가 중요하다. mapping 확인 GET {index_name}/_mapping mapping 정의 PUT {index_name} { "mappings": { "properties": { "logTime.. 2022. 6. 23.
Elasticsearch - Aggregation - date historgram 일별, 주별, 월별 등 일정 기간별 집계 자료가 필요한 경우에 유용하게 사용할 수 있는 calendar_interval 에 대해서 정리 해 본다. ​ histogram 집계는 bucket 집계 하위 집계 개념 중 하나인데 range 집계와 마찬가지로 숫자의 범위를 집계한다. 지정한 수치를 범위로 하여 산정하며 간격 내 속하는 document 들에 대한 집계를 수행한다. ​ date_histogram 집계는 histogram 집계와 유사하지만 숫자가 아닌 날짜를 대상으로 한다. ​ calendar_interval 키워드를 통해 주로 사용하는 단위에 대해서 사용할 수 있으며 - m(minute), h(hour), d(day), w(week), M(month), q(quarter), y(연) - ex) "ca.. 2020. 9. 15.
Elasticsearch 검색 - Aggregation 데이터를 그룹화하고 통계를 얻고자 할 때 사용하는 Aggregation ​ RDBMS에서 GROUP BY SUM 과 같은 역할을 말한다. ​ [Metric 집계] 숫자타입으로 동작하며 주어진 컨텍스트에서 숫자필드의 집계값을 계산하는데 사용한다. - sum, avg, max, min - 날짜별 결과건수 합계 데이터 가져오기 예제 "aggs": { "date_over": { "terms": { "field": "date", "order": { "_key":"asc" } }, "aggs": { "count":{ "sum":{ "field": "rtnCount" } } } } } 결과 예제 { "took": 1, "timed_out": false, "_shards": { "total": 1, "successfu.. 2020. 9. 14.
728x90
반응형
LIST