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 |
Tags
- 스프링 핵심 원리
- 백준 20055 컨베이어 벨트 위의 로봇
- Kotlin In Action
- 스프링 컨테이너와 스프링 빈
- kotlin in action 정리
- 7장 고급매핑
- 기능개발 python
- 객체 지향 설계와 스프링
- Python
- 스프링 핵심 원리 - 기본편
- 고급매핑
- 백준
- 싱글톤 컨테이너
- spring
- 자바 ORM 표준 JPA 프로그래밍 7장
- Kotlin in action 3장
- 코틸린인액션
- 13460 구슬탈출 2
- KotlinInAction
- Kotlin
- 20055 컨베이어 벨트 위의 로봇
- 20055
- 스프링 핵심 원리 이해
- 코틀린인액션
- Kotlin in action 5장
- 코틀린
- Kotlin in action 6장
- Kotlin in action 10장
- 컨베이어 벨트 위의 로봇 Python
- 백준 13460 Python
Archives
- Today
- Total
기록하는 습관
Elasticsearch (12) - Update By Query vs. Reindex 본문
참고) Reindex 관련 글: https://flexiblecode.tistory.com/157
Update By Query 기능
- 조건에 맞는 필드를 탐색 후 업데이트
- 사전을 반영하는 문서 재색인
ES 사전 반영을 위해서는 2가지 방법을 사용할 수 있다.
- Update By Query API 사용
- 사전 반영을 위해서 update by query API 호출 전 index를 close/open 해야 하는 선작업이 반드시 필요
- 만약, close/open을 하지 않고 update by query api를 호출하게 되면 ES dictionary를 업데이트 하더라도 분석기에는 반영되지 않았기 때문에 사전 반영이 되지 않는다.
- 인덱스를 새로 만드는 것이 아니기 때문에 인덱스 관리 비용이 reindex에 비해서 적다.
- 옵션으로 version_confilct 발생시 proceed 할 수 있도록 하며, scroll_size를 default 1000에서 n으로 낮춰 cpu 사용률을 낮출 수 있다.
- 사전 반영을 위해서 update by query API 호출 전 index를 close/open 해야 하는 선작업이 반드시 필요
- Reindex API 사용
- update by query와 다르게, 새로운 인덱스를 생성하기 때문에 index close/open을 할 필요 없이 analyzer가 업데이트 된 dictionary를 인덱스 생성 시점에 불러오게 된다.
- 인덱스를 새로 생성하므로 관리 비용이 상대적으로 크고, reindex 도중에 게시글이 업데이트 될 경우에 대한 대비가 필요하다.
'개발 > Elasticsearch' 카테고리의 다른 글
Elasticsearch (11) - 색인기 (0) | 2022.07.13 |
---|---|
Elasticsearch (10) - English 분석 (0) | 2022.07.06 |
Elasticsearch (9) - Elasticsearch Client (0) | 2022.07.06 |
Elasticsearch (8) - Elasticsearch Shard 최적화 (0) | 2022.07.06 |
Elasticsearch (7) - Elasticsearch와 Lucene (0) | 2022.07.06 |
Comments