데이터 색인 과정에서 검색 기능에 가장 큰 영향을 미치는 단계는 바로 토크나이저임. 데이터 분석 과정에서 토크나이저는 반드시 한 개만 사용이 가능하며, 이를 tokenizer 항목에 단일값으로 설정한다.

토크나이저들 중에 NGram, Lowercase 같은 토크나이저들은 대부분 Standard 토크나이저에 같은 이름의 토큰 필터를 내장한 것들임.

Standard, Letter, Whitespace

이 토크나이저들은 일반적으로 가장 많이 사용된다. 기능에는 조금씩 차이가 있음.

standard

{
    "tokenizer": "standard",
    "text": "THE quick.brown_Fox jumped! @ 3.5 meters."
}

image.png

공백으로 텀을 구분하면서 @ 과 같은 특수문자를 제거한다. 말 끝의 ! 느낌표, . 와 같은 단어끝의 마침표 같은 특수문자는 제거됨. 그러나 문자 중간의 특수문자는 제거나 분리의 대상이 아니다.

letter

{
    "tokenizer": "letter",
    "text": "THE quick.brown_Fox jumped! @ 3.5 meters."
}

image.png

알파벳을 제외한 모든 공백, 숫자, 기호를 기준으로 텀을 분리. 중간에 . _ 도 분리의 대상임.

whitespace

GET _analyze
{
  "tokenizer": "whitespace",
  "text": "THE quick.brown_FOx jumped! @ 3.5 meters."
}

스페이스, 탭, 그리고 줄바꿈이 오직 텀을 분리하는 기준임.