Elasticsearch-고정 인덱스
자주 검색되는 인덱스는 다시 작성하는 데 시간이 걸리고 효율적인 검색에 도움이되기 때문에 메모리에 보관됩니다. 반면에 우리가 거의 접근하지 않는 인덱스가있을 수 있습니다. 이러한 인덱스는 메모리를 차지할 필요가 없으며 필요할 때 다시 빌드 할 수 있습니다. 이러한 인덱스를 고정 인덱스라고합니다.
Elasticsearch는 해당 샤드가 검색 될 때마다 고정 인덱스의 각 샤드에 대한 임시 데이터 구조를 구축하고 검색이 완료되는 즉시 이러한 데이터 구조를 폐기합니다. Elasticsearch는 이러한 임시 데이터 구조를 메모리에 유지하지 않기 때문에 고정 인덱스는 일반 인덱스보다 훨씬 적은 힙을 사용합니다. 이렇게하면 가능한 것보다 훨씬 더 높은 디스크 대 힙 비율이 가능합니다.
동결 및 동결 해제의 예
다음 예제는 인덱스를 고정 및 고정 해제합니다.
POST /index_name/_freeze
POST /index_name/_unfreeze
고정 된 인덱스에 대한 검색은 느리게 실행될 것으로 예상됩니다. 고정 된 인덱스는 높은 검색 부하를위한 것이 아닙니다. 인덱스가 고정되지 않은 상태에서 동일한 검색이 밀리 초 내에 완료 되더라도 고정 된 인덱스 검색을 완료하는 데 몇 초 또는 몇 분이 걸릴 수 있습니다.
고정 된 인덱스 검색
노드 당 동시에로드 된 고정 인덱스의 수는 search_throttled 스레드 풀의 스레드 수 (기본적으로 1)로 제한됩니다. 고정 인덱스를 포함하려면 쿼리 매개 변수 인 ignore_throttled = false를 사용 하여 검색 요청을 실행해야합니다 .
GET /index_name/_search?q=user:tpoint&ignore_throttled=false
고정 인덱스 모니터링
고정 인덱스는 검색 제한 및 메모리 효율적인 샤드 구현을 사용하는 일반 인덱스입니다.
GET /_cat/indices/index_name?v&h=i,sth