Elasticsearch 7.17 기반으로 작성하였습니다.geo_point 필드 타입은 위도와 경도를 쌍으로 가진다.위치 기반 쿼리를 이용해 반경 내 쿼리, 위치 기반 집계, 위치별 정렬 등을 사용할 수 있다.이 중에서도 오늘은 정렬 기능을 활용해본다.테스트용도이기 때
Elasticsearch는 메모리를 많이 사용하는 애플리케이션이다. 일반적으로 힙 메모리가 많을수록 그에 비례해서 성능도 올라간다. 너무 작은 힙 크기는 OOM 오류(Out of Memory Exception)를 발생시킬 수 있다. 너무 큰 힙 크기는 FullGC가
total_shards_per_node 옵션은 Elasticsearch 클러스터 내에서 각 노드가 관리하는 샤드(shard)의 수를 제어하는 설정입니다.각 노드가 관리하는 샤드의 최대 수를 제한하는 역할을 합니다. 이 값을 설정하면 클러스터에 새로운 인덱스가 생성될 때
클러스터에 존재하는 프라이머리 샤드와 레플리카 샤드 모두에서 검색 요청을 처리할 수 있다.모든 샤드에서 처리 중인 검색 요청 수를 모아서 초당 평균 몇 건이 처리되는지 숫자로 계산해서 보여준다.전체 샤드에서 실행되는 초당 검색 요청 수클러스터에서 다수의 검색 요청이 들
싱글 노드 검색 클러스터는 하나 이상의 엘라스틱서치 노드로 구성돼 있고 각 노드는 설정에 따라 특수항 Role을 부여받아 동작한다. 엘라스틱서치 노드들은 별도의 설정이 없다면 Single Node 모드로 동작한다. 싱글 노드는 엘라스틱서치의 모든 기능을 사용
쓰기 작업 시 엘라스틱서치 동작과 동시성 제어 쓰기 작업은 3단계로 수행된다. 조정 단계(coordination stage) 주 샤드 단계(primary stage) 복제 단계(replica stage) 조정 단계 엘라스틱서치 클러스터에 쓰기 요청이 들어오면 먼저 라
bulk API는 여러 색인, 업데이트, 삭제 작업을 한 번의 요청에 담아서 보내는 API다.엘라스틱서치의 다른 API와 다르게 요청 본문을 JSON이 아니라 NDJSON(Newline Delimited JSON) 형태로 만들어서 보낸다.Content-Type 헤더도