Study/elasticsearch 3

elasticsearch join type field

엘라스틱서치 조인 가이드 문서 링크 https://www.elastic.co/guide/en/elasticsearch/reference/current/parent-join.html#parent-join 엘라스틱서치는 Parent-join이라는 것을 제공함. The join data type is a special field that creates parent/child relation within documents of the same index. The relations section defines a set of possible relations within the documents, each relation being a parent name and a child name. `join` 타입은 동일..

Study/elasticsearch 2023.08.05

Elasticsearch: 애널라이저, 토크나이저, 노멀라이저

애널라이저는 9개 이상의 캐릭터 필터, 1개의 토크나이저, 0개 이상의 토큰 필터로 구성된다. 동작 역시 캐릭터 필터 -> 토크나이저 -> 토큰 필터 순서로 수행된다. 애널라이저는 입력한 텍스트에 캐릭터 필터를 적용하여 문자열을 변형시킨 뒤 토크나이저를 적용하여 여러 토큰으로 쪼갠다. 쪼개진 토큰의 스트림에 토큰 필터를 적용해서 토큰에 특정한 변형을 가한 결과가 최종적으로 분석 완료된 텀이다. 엘라스틱서치는 애널라이저의 동작을 테스트할 수 있는 API를 제공한다. example GET _analyze { "analyzer": "standard", "text": ["Hello, HELLO, World!"] } //result { "tokens": [ { "token": "hello", "start_offs..

Study/elasticsearch 2023.08.05

Elasticsearch object와 nested 타입 비교

object와 nested 모두 필드 하위에 다른 필드가 들어가는 계층 구조의 데이터를 담는 타입이다. 이 둘은 유사하지만 배열을 처리할 때 동작하는 방식이 다르다. object vs. nested object 용도: 일반적인 계층 구조에 사용 성능: 상대적으로 가벼움 검색: 일반적인 쿼리를 사용한다. nested 용도: 배열 내 각 객체를 독립적으로 취급해야 하는 특수한 상황에서 사용 성능: 상대적으로 무거움. 내부적으로 숨겨진 문서를 생성 검색: 전용 nested 쿼리로 감싸서 사용해야 한다. object type JSON 문서는 필드의 하위에 다른 필드를 여럿 포함하는 객체 데이터를 담는다. object가 객체 데이터의 기본 타입이다. object와 nested의 차이는 객체 배열에 대해 쿼리할 때..

Study/elasticsearch 2023.08.05