Elasticsearch入门 互动版

IK分词


  一般中文分词器一般使用第三方的ik分词器、mmsegf分词器和paoding分词器,他们最初可能构建于lucene,后来移植于elasticsearch。 在最新版的elasticsearch,我们主要使用了ik分词器。

  安装ik分词器到elasticsearch很简单,它有个插件目录analysis-ik,和一个配置目录ik, 分别拷贝到plugins和conf目录就可以了。然后在elasticsearch.yml文件中配置加入如下代码:

index.analsis.analyzer.ik.type : ik

  第三方的分词器,你是没法使用,你必须创建一个指定该分词器的索引才行。

curl -XPUT http://localhost:9200/index   //创建索引
curl -XPOST http://localhost:9200/index/fulltext/_mapping -d'  //创建mapping,只有一个字段content,使用ik作为分词器
{
    "fulltext": {
             "_all": {
            "indexAnalyzer": "ik",
            "searchAnalyzer": "ik",
            "store": "false"
        },
        "properties": {
            "content": {
                "type": "string",
                "store": "no",
                "indexAnalyzer": "ik",
                "searchAnalyzer": "ik"
            }
        }
    }
}'

  查看分词效果,如下:

curl -XGET 'http://localhost:9200/index/_analyze?analyzer=ik' -d ‘你们有什么事情’

  也就是说当我们在建立索引的时候,如果想使用我们自己的分词器就要先创建mapping。