일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- IntelliJ
- jenkins
- elasticsearch
- devops
- ReactJS
- ubuntu
- laravel
- Gradle
- Git
- php
- Design Patterns
- jsp
- it
- 요리
- linux
- Oracle
- tool
- springboot
- Web Server
- Spring
- AWS
- Spring Boot
- MySQL
- JVM
- db
- redis
- java
- Spring Batch
- 맛집
- javascript
Archives
- Today
- Total
아무거나
메트릭 어그리게이션(Metric Aggregation) 본문
반응형
메트릭 어그리게이션(Metric Aggregation)
* elasticsearch안에있는 도큐먼트안에서 조합을 통해서 어떠한 값을 도출할때 쓰는 방법중 하나이다.
그중 메트릭 어그리게이션은 평균, 최소값, 최대값 등.. 산술값을 구할때 쓴다.
1. vi simple_basketball.json
#[data내용]
{ "index" : { "_index" : "basketball", "_type" : "record", "_id" : "1" } }
{"team" : "Chicago Bulls","name" : "Michael Jordan", "points" : 30,"rebounds" : 3,"assists" : 4, "submit_date" : "1996-10-11"}
{ "index" : { "_index" : "basketball", "_type" : "record", "_id" : "2" } }
{"team" : "Chicago Bulls","name" : "Michael Jordan","points" : 20,"rebounds" : 5,"assists" : 8, "submit_date" : "1996-10-11"}
2. 1번의 데이터를 도큐먼트에 bulk로 입력
- curl -XPOST 'localhost:9200/_bulk' --data-binary @simple_basketball.json
3. 평균 구하는 aggregation파일 작성 avg_points_aggs.json
# [data내용]
{
"size" : 0,
"aggs" : {
"avg_score" : {
"avg" : {
"field" : "points"
}
}
}
}
4. curl -XGET localhost:9200/_search?pretty --data-binary @avg_points_aggs.json // 평균값이 나올것이다. 25
5. 최대값을 구할꺼면 3번의 avg_points_aggs에 avg를 max로 변경만 해주면 된다. max_points_aggs.json 파일을 만들어 테스트를 해보자
- curl -XGET localhost:9200/_search?pretty --data-binary @max_points_aggs.json
6. 5번처럼 최소값도 같은식으로 구하면된다. avg를 min으로 바꾸면됨.
7. 두개의 합을 구하려면 avg를 sum으로 변경하자.
8. 이 모든것을 한번에 결과를 도출하는 방법[stats]
- curl -XGET localhost:9200/_search?pretty --data-binary @stats_points_aggs.json
# [json data 내용]
{
"size" : 0,
"aggs" : {
"stats_score" : {
"stats" : {
"field" : "points"
}
}
}
}
- 모든 유형의 결과값이 나온다.
반응형
'Data Store > Elastic Stack' 카테고리의 다른 글
모든 인덱스 삭제 및 방어 (0) | 2019.05.13 |
---|---|
버킷 어그리게이션(Bucket Aggregation) (0) | 2019.05.10 |
데이터 조회 (0) | 2019.05.09 |
MAPPING (SCHEMA) (0) | 2019.05.08 |
벌크(BULK) INSERT (0) | 2019.05.08 |
Comments