일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- high level client
- aggregation
- Python
- Java
- sort
- aggs
- Kafka
- 차트
- 900gle
- Test
- query
- springboot
- docker
- 파이썬
- zip 암호화
- token filter test
- plugin
- zip 파일 암호화
- analyzer test
- matplotlib
- TensorFlow
- MySQL
- API
- flask
- ELASTIC
- Elasticsearch
- license delete
- Mac
- License
- licence delete curl
Archives
- Today
- Total
개발잡부
[es] Warm up global ordinals 본문
반응형
전역 서수는 집계 성능을 최적화하는 데 사용되는 데이터 구조입니다. 이는 느리게 계산되어 필드 데이터 캐시의 일부로 JVM 힙에 저장됩니다. 버킷팅 집계에 많이 사용되는 필드의 경우 요청을 수신하기 전에 Elasticsearch에 전역 서수를 구성하고 캐시하도록 지시할 수 있습니다. 힙 사용량이 증가하고 새로 고침 시간이 더 오래 걸릴 수 있으므로 이 작업은 신중하게 수행해야 합니다. 이 옵션은 Eager 전역 서수 매핑 매개변수를 설정하여 기존 매핑에서 동적으로 업데이트될 수 있습니다.
맵핑 옵션
PUT index
{
"mappings": {
"properties": {
"foo": {
"type": "keyword",
"eager_global_ordinals": true
}
}
}
}
테스트 해보자
데이터셋의 구조는 아래와 같다.
다른 정보에 비해 비교적 카디널리티가 낮은 국가코드로 보이는 3번째 항목만 색인 할 예정
실행해보니 문제가 많다 우선 타임스템프 파이프 라인 부터 처리해보잣
타임스템프 파이프라인 생성
PUT /_ingest/pipeline/timestamp
{
"description": "Creates a timestamp when a document is initially indexed",
"processors": [
{
"set": {
"field": "_source.timestamp",
"value": "{{_ingest.timestamp}}"
}
}
]
}
다시 실행하니 잘 되네
음.. 데이터가 몇건이였더라..
800만건이였나. 일단 색인될때까지 대기
가만보면 인덱스 2개를 만들지 않고 필드 2개로 옵션만 다르게 처리할껄 그랬나보다
변경 - 인덱스 하나에서 두가지 타입의 필드로 색인 후 aggs 해볼 예정
AGGS 쿼리
{
"query": {
"match_all": {}
},
"aggs": {
"COUNTRY": {
"terms": {
"field": "country_code"
}
}
}
}
AGGS ORDINALS 쿼리
{
"query": {
"match_all": {}
},
"aggs": {
"COUNTRY_ORDINALS": {
"terms": {
"field": "country_code_ordinals"
}
}
}
}
50회 실행
size 0 으로 실행하며 캐싱이 된다고 하니 0으로 실행
확실히 캐싱 빨이 있다.
근데 AGGS 랑 AGGS ORDINALS 가 다른 필드를 집계한건데 캐싱이 같이 먹히는 것 같은데 ..
AGGS 이름을 키로 케싱이 되는것을 확인
이 옵션은..
"eager_global_ordinals": true
뭐지..
반응형
'ElasticStack > Elasticsearch' 카테고리의 다른 글
[es] elasticsearch cache 모니터링 (query_cache, request_cache) (0) | 2023.09.25 |
---|---|
[es] file system cache 를 이용한.. (2) | 2023.09.25 |
[es] elasticsearch 성능개선 (elasticsearch cache) (0) | 2023.09.25 |
[es] script query (2) | 2023.09.01 |
[es] Regexp Query (1) | 2023.08.16 |
Comments