2.X/3. Dealing with Human Language

3-1. Getting Started with Languages

drscg 2017. 9. 24. 17:57

Elasticsearch ships with a collection of language analyzers that provide good, basic, out-of-the-box support for many of the world’s most common languages:

Elasticsearch는 세상의 대부분의 공용 언어에 대해, 적절하고 기본적인, 즉시 사용 가능한 language analyzer collection(언어 분석기 모음)을 가지고 있다.

Arabic, Armenian, Basque, Brazilian, Bulgarian, Catalan, Chinese, Czech, Danish, Dutch, English, Finnish, French, Galician, German, Greek, Hindi, Hungarian, Indonesian, Irish, Italian, Japanese, Korean, Kurdish, Norwegian, Persian, Portuguese, Romanian, Russian, Spanish, Swedish, Turkish, and Thai.

아랍어(Arabic), 아르메니아어(Armenian), 바스크어(Basque), 브라질(Brazilian), 불가리아어(Bulgarian), 카탈로니아(Catalan), 중국어(Chinese), 체코어(Czech), 덴마크어(Danish), 네덜란드어(Dutch), 영어(English), 핀란드어(Finnish), 프랑스어(French), 갈리시아어(Galician), 독일어(German), 그리스어(Greek), 힌디어(Hindi, 인도 북부 공용어), 헝가리어(Hungarian), 인도네시아어(Indonesian), 아일랜드어(Irish), 이탈리아어(Italian), 일본어(Japanese), 한국어(Korean), 쿠르드어(Kurdish), 노르웨이어(Norwegian), 페르시아어(Persian), 포르투갈어(Portuguese), 루마니아어(Romanian), 러시아어(Russian), 스페인어(Spanish), 스웨덴어(Swedish), 태국어(Turkish), 태국어(Thai).

These analyzers typically perform four roles:

이들 analyzer는 일반적으로 아래 4개의 규칙을 가지고 실행된다.

  • Tokenize text into individual words:

    문장(text)을 개별 단어로 분리한다.

    The quick brown foxes → [Thequickbrownfoxes]

  • Lowercase tokens:

    token을 소문자로 변경한다.

    The → the

  • Remove common stopwords:

    흔한 불용어(stopwords) 를 제거한다.

    [Thequickbrownfoxes] → [quickbrownfoxes]

  • Stem tokens to their root form:

    token을 형태소 분석하여, 원형(root form)으로 만든다.

    foxes → fox

Each analyzer may also apply other transformations specific to its language in order to make words from that language more searchable:

각 analyzer는 해당 언어에서 단어를 더 많이 검색하도록 만들기 위해, 그 언어 특유의 다른 변환을 적용할 수도 있다.

  • The english analyzer removes the possessive 's:

    english analyzer는 소유를 나타내는 's 를 제거한다.

    John's → john

  • The french analyzer removes elisions like l' and qu' and diacritics like ¨ or ^:

    french analyzer는 l' 과 qu' 같은 모음 탈락 부호(elisions) 와, ¨ 또는 ^ 같은 발음 구별 부호(diacritics) 를 제거한다.

    l'église → eglis

  • The german analyzer normalizes terms, replacing ä and ae with a, or ß with ss, among others:

    german analyzer는 단어를 정규화한다. 특히, ä 그리고 ae 를 a 로, 또는 ß 를 ss 로 변경한다.

    äußerst → ausserst