
ElasticSearch์ ๋ถ์(Analysis)์ด๋?
- ๊ฒ์์ด๋ฅผ ์ถ์ถํ๊ธฐ ์ํ ํ๋ก์ธ์ค
๋ถ์์ ์ด๋ป๊ฒ ๋์ํ ๊น?
Analyzer Pipeline

- ํ๋์ Analyzer๋ Char Filter, Tokenizer, Token Filter๋ฅผ ์ ์ฅํ๊ณ ์๋ ํ๋์ ๋ฐฐ์น ํ๋ก๊ทธ๋จ.
- Custom Analyzer๋ฅผ ์์ฑ ์ถ๊ฐ ์ญ์ ๊ฐ ๊ฐ๋ฅํ๋ค.
- ์
๋ ฅ๋ ์๋ณธ์ ํ
์คํธ๋ฅผ ๋ถ์์ ํ์ํ ํํ๋ก ๋ณํํ๋ ์ญํ
- ์
๋ ฅ ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ ๊ธฐ์ค์ ๋ฐ๋ผ ๊ฒ์์ด ํ ํฐ์ผ๋ก ๋ถ๋ฆฌํ๋ ์ญํ
- standard
- -, []์ ๊ฐ์ ๊ธฐํธ๋ ๊ตฌ๋ถ์๋ก ์ธ์ํ๊ณ ๋ถ๋ฆฌํ๋ค.
- whitespace
- ๋์ด์ฐ๊ธฐ, ํญ, ์ค๋ฐ๊ฟ๊ณผ ๊ฐ์ ๊ณต๋ฐฑ ๊ธฐ์ค์ผ๋ก ํ ํฐ ๋ถ๋ฆฌ
- nGram
- ์ต์-์ต๋ ๊ธธ์ด์ ํด๋นํ๋ ๋ฌธ์๋ค์ ํ ํฐ์ผ๋ก ๋ถํ ํ๋ค.
- ์ค์ํ ํ๋๋ฅผ ๋์ธ ๊ฐ์ ๋ฌธ์๋ง ๊ฐ์ง๊ณ ๋ ๊ฒ์ ๊ฐ๋ฅํ์ง๋ง
- ๊ฒ์์ด ํ ํฐ์ด ๋ง์์ง๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๊ณผ ์์คํ
๋ถํ ์ญ์ ์ฆ๊ฐํ๋ค.
- edgeNGram
- nGram์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ edgeNGram
- ๊ฒ์์ด์ ๋ชจ๋ ๊ฐ์ ๋ถํ ํ๋ ๊ฒ์ด ์๋๋ผ
๋ฌธ์ฅ์ ์์ ๋ถ๋ถ
๋ง ๋ถํ ํ๋ค.
- keyword
- ์
๋ ฅ๋ ๋ฌธ์ฅ ์ ์ฒด๋ฅผ ํ๋์ ์ฑ๊ธ ํ ํฐ์ผ๋ก ์ ์ฅ
- letter
- ์ํ๋ฒณ์ด ์๋ ๊ณต๋ฐฑ/ํน์๋ฌธ์ ๊ธฐ์ค์ผ๋ก ๊ฒ์์ด ํ ํฐ ๋ถ๋ฆฌ
- ์์์ ์ฐ๋ ์ธ์ด์์๋ ์ค๋์ ์ฃผ์ํด์ผ ํ๋ค.
- lowercase
- letter โ lowercase filter ์ ์ฉํ ๊ฒ๊ณผ ๋์ผ
- ๋ถ๋ฆฌ๋ ํ ํฐ๋ค์ ๋ค์ ํํฐ๋ฅผ ์ ์ฉํด์ ์ค์ ๋ก ๊ฒ์์ ์ฐ์ด๋ ๊ฒ์์ด๋ค๋ก ์ต์ข
๋ณํํ๋ ์ญํ
- ๋ถ์๋จ๊ณ์์ ๊ฐ์ฅ ์ค์ํ ๊ณผ์
- porter_stem
- Porter Stemming ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ ํํ์ ๋ถ์์ ํ๋ ํ ํฐํํฐ
- lowercase ํ ํฌ๋์ด์ ๋ฅผ ๋ฏธ๋ฆฌ ์ ์ฉํด์ผ ํ๋ค.
- shingle
- ๋ฌธ์์ด์ ํ ํฐ-Ngram ๋ฐฉ์์ผ๋ก ๋ถ์ํ๋ ๊ธฐ๋ฅ
- word_delimiter
- ์
๋ ฅ๋ ๋ฌธ์ฅ์ ๋จ์ด๋ฅผ ๋ ์ธ๋ถ์ ์ผ๋ก ๋ถํ ํ๊ฑฐ๋ ๋ณํฉํ๋ ๋ค์ํ ์ต์
๋ค์ ์ ๊ณต
- snowball
- ์ํ์ผ๋ก ๋ณํํ๋ ํ ํฐ Filter
ํ๊ตญ์ด ํํ์ ๋ถ์๊ธฐ
Reference