elasticsearch analysis morphology
8.9.1
ElasticSearch용 플러그인(8.4.1)은 러시아어 및 영어용 분석기를 구현하며, 프로젝트 http://aot.ru의 사전이 사용됩니다. 원본 플러그인은 여기 https://github.com/imotov/elasticsearch에서 가져왔습니다. -analytic-morphology 이는 Apache Lucene 프로젝트용 러시아어 형태학의 russian_morphology 및 english_morphology를 차례로 사용합니다 https://github.com/AKuznetsov/russianmorphology 플러그인은 두 개의 분석기를 추가하고 토큰 필터: "russian_morphology" 및 "english_morphology"
인덱스를 생성할 때 분석기를 나타내는 설정을 지정하고 해당 설정을 기반으로 매핑을 생성합니다. 예
PUT /products
{
"settings": {
"index": {
"analysis": {
"analyzer": {
"product_name_analyzer": {
"type": "custom",
"tokenizer": "standard",
"filter": [
"lowercase",
"search_synonym",
"russian_morphology",
"english_morphology",
"ru_stopwords"
]
}
},
"filter": {
"search_synonym": {
"ignore_case": "true",
"type": "synonym",
"synonyms": [
"bosch,бош"
]
},
"ru_stopwords": {
"type": "stop",
"stopwords": "а,без,более,бы,был,была,были,было,быть,в,вам,вас,весь,во,вот,все,всего,всех,вы,где,да,даже,для,до,его,ее,если,есть,еще,же,за,здесь,и,из,или,им,их,к,как,ко,когда,кто,ли,либо,мне,может,мы,на,надо,наш,не,него,нее,нет,ни,них,но,ну,о,об,однако,он,она,они,оно,от,очень,по,под,при,с,со,так,также,такой,там,те,тем,то,того,тоже,той,только,том,ты,у,уже,хотя,чего,чей,чем,что,чтобы,чье,чья,эта,эти,это,я,a,an,and,are,as,at,be,but,by,for,if,in,into,is,it,no,not,of,on,or,such,that,the,their,then,there,these,they,this,to,was,will,with"
}
}
}
}
},
"mappings": {
"properties": {
"name": {
"type": "text",
"analyzer": "product_name_analyzer"
},
"code": {
"type": "keyword"
},
"description": {
"type": "text",
"analyzer": "product_name_analyzer"
},
"brand": {
"type": "keyword"
}
}
}
}
분석-형태 플러그인 설치 단계가 포함된 원본 Elasticsearch 8.4.1의 이미지
테스트가 구현되지 않은 경우 mvn clean package -Dmaven.test.skip=true
수집한 다음 결과 /target/releases/elasticsearch-analytic-morphology-8.4.1.zip을 기존 클러스터에 복사하고 bin/elasticsearch-plugin을 통해 설치합니다. 설치 파일: elasticsearch-analytic-morphology-8.4.1.zip