반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- effectivejava
- 카카오 면접
- 김영한
- 자바
- Sort
- 스프링부트
- 예제로 배우는 스프링 입문
- JavaScript
- 오블완
- 클린아키텍처
- 이펙티브 자바
- 알고리즘
- ElasticSearch
- 스프링핵심원리
- Spring
- 스프링
- kubernetes
- 알고리즘정렬
- 코딩테스트
- Effective Java
- 티스토리챌린지
- 카카오
- 이차전지관련주
- 스프링 핵심원리
- 이펙티브자바
- java
- k8s
- 엘라스틱서치
- Effective Java 3
- 자바스크립트
Archives
- Today
- Total
Kim-Baek 개발자 이야기
[Elasticsearch] Aggregation 본문
Aggregations
Aggregation
은 검색 쿼리를 바탕으로 집합된 데이터를 제공해주는 프레임워크이다.- 복잡한 데이터들을 요약하기 위해서
Aggregation
이라고 불리는 작은 블록들로 구성되어있다. Aggregation
은 각각의 목적과 결과에 해당하는 타입들이 존재한다.- Bucketing, Metric, Matrix, Pipeline 등 다양한 타입들이 존재한다.
Aggregation 구조
- Aggregation은 JSON Object 형태이다.
- < aggregation_name >은 사용자가 정의한 논리적인 이름이다. 예를들어 학생의 수 sum_student 처럼 정의 가능하다.
"aggregations" : {
"<aggregation_name>" : {
"<aggregation_type>" : {
<aggregation_body>
}
[,"meta" : { [<meta_data_body>] } ]?
[,"aggregations" : { [<sub_aggregation>]+ } ]?
}
[,"<aggregation_name_2>" : { ... } ]*
}
Metrics aggregations
- Documnet의 Field 에서 추출한 값들을 기반으로 새로운 계산을 통해 Aggregation 해준다.
# member의 나이 합
curl -XPOST 'localhost:9200/study/member/_search?pretty' -d '{
"aggs" : {
"age_sum" : { "sum" : { "field" : "age" }}
}
}'
# member의 나이 평균
curl -XPOST 'localhost:9200/study/member/_search?pretty' -d '{
"aggs" : {
"age_avg" : { "avg" : { "field" : "age" }}
}
}'
Reference
반응형
'개발 > Elasticsearch' 카테고리의 다른 글
Elastic Search 란? 장단점 (0) | 2024.11.11 |
---|---|
[Elasticsearch] Mapping API (0) | 2020.08.11 |
[Elasticsearch] Index API (0) | 2020.08.10 |
[Elasticsearch] 기본 개념, Concept, 용어 (0) | 2020.08.09 |
Comments