mapping
Mapping 정보 조회
GET <index/_mapping>
명시적 매핑
- Index 생성시 mapping 지정
PUT <index>
{ “mappings” : {
properties”: {
“<필드명>” : “<타입>”,
…

매핑 조회

타입
문자열 타입
- 문자열은 text, keyword 두 가지 타입
문자열 타입 - text
- Text : (일반적으로) 문장을 저장하는 매핑 타입
- 문장, 여러 단어 나열 등
- 분석기로 토큰으로 분리되어 인덱싱
- 역인덱싱 inverted indexing : 토큰(term) 인덱싱

- 예제) text_index 생성
- contents 필드 타입이 text
- 토큰화되어 역인덱싱


문자열 match
- 역인덱싱된 term 중에서 일치하는 Document 검색

문자열 타입 – keyword
- 범주형 데이터 : 규칙성 or 유의미한 값들의 집합
- 문자열 전체가 하나의 용어로 인덱싱
- 분석기를 거치지 않음
- 부분 일치 검색 X, 일치하는 검색 O
- 집계, 정렬에 유용
멀티 필드


분석기 (analyzer)

자주 사용되는 분석기
- Standard
- 기본 분석기
- Standard tokenizer, 소문자 변경 필터, stop 필터 포함
- Simple
- 문자만 토큰화
- 공백, 숫자, -, ‘ 등은 무시
- Writespace
- Stop
Character filter
- 토큰화 이전 문자 전처리
- Ex) HTML 문법 제거/변경
- Ex) 특정 문자를 다른 문자로 대체
- 대부분 분석기에는 캐릭터 필터가 없음
tokenizer
문자열을 분리하여 토큰화
- Standard
- Standard 분석기의 토크나이저
- 쉼표, 점 등 기호 제거 후 text 토큰화
- Lowercase
- Ngram
- N개의 글자 단위로 토큰화
- 저장공간 많이 차지
- Uax_url_mail
token filter

커스텀 분석기 예제
- My_analyzer 커스텀 분석기를 적용한 customer_analyzer 인덱스
- Standard 토크나이저 + Lowercase, stop 커스텀 필터 적용
- “Lions” 를 제거하는 stop 커스텀 필터


reference