티스토리 뷰

dev/es

매핑 설정

altvirus 2015. 4. 13. 15:49

DELETE cine21




PUT /cine21

{

  "settings": {

    "analysis": {

      "analyzer": {

        "korean_analyzer" : {

          "type" : "custom",

          "tokenizer": "korean_tokenizer",

          "filter" : ["stop", "lowercase", "trim"]

        },

        "ngram_analyzer" : {

            "type" : "custom",

            "tokenizer" : "ngram_tokenizer",

            "filter" : ["lowercase", "trim"]

        },

        "edge_ngram_analyzer" : {

            "type" : "custom",

            "tokenizer" : "edge_ngram_tokenizer",

            "filter" : ["lowercase", "trim"]

        }

      },

      "tokenizer": {

        "korean_tokenizer": {

          "type": "mecab_ko_standard_tokenizer",

          "compound_noun_min_length": 100

        },

        "ngram_tokenizer" : {

            "type" : "nGram",

            "min_gram" : "1",

            "max_gram" : "5",

            "token_chars": [ "letter", "digit", "punctuation", "symbol" ]

        },

        "edge_ngram_tokenizer" : {

            "type" : "edgeNGram",

            "min_gram" : "1",

            "max_gram" : "5",

            "token_chars": [ "letter", "digit", "punctuation", "symbol" ]

        }        

      }

    }

  }, 

  "mappings": {

    "movie" : {

      "analyzer" : "korean_analyzer",

      "index_analyzer" : "korean_analyzer",

      "search_analyzer" : "korean_analyzer",

      "properties": {

        "title" : {

          "type": "string", 

          "fields" : {

            "h_ko" : {"type" : "string", "index_analyzer" : "korean_analyzer"},

            "h_ng" : {"type" : "string", "index_analyzer" : "ngram_analyzer"},

            "h_ed" : {"type" : "string", "index_analyzer" : "edge_ngram_analyzer"}

          }

        }

      }

    }

  }

}





POST /cine21/movie

{

  "title" : "멀티플레이어를 자처"

}




GET /cine21/_search





GET /cine21/_search

{

  "query": {

    "term": {

      "title.h_ed": "자"

    }

  }

}




analyzer 테스트

curl -XGET 'http://localhost:9200/cine21/_analyze?analyzer=korean_analyzer&pretty=true' -d '멀티플레이어를 자처'

curl -XGET 'http://localhost:9200/cine21/_analyze?analyzer=ngram_analyzer&pretty=true' -d '멀티플레이어를 자처'

curl -XGET 'http://localhost:9200/cine21/_analyze?analyzer=edge_ngram_analyzer&pretty=true' -d '멀티플레이어를 자처'



'dev > es' 카테고리의 다른 글

자동완성 위한 매핑설정  (0) 2015.04.13
analyzer 테스트  (0) 2015.04.13
elasticsearch 설치 관련(mecab 한글등)  (1) 2015.04.09
elasticsearch 08.매핑  (0) 2015.03.13
elasticsearch 7. 질의(QueryDSL)  (0) 2015.03.13
공지사항