zoukankan      html  css  js  c++  java
  • ElasticSearch简介(三)——中文分词

    很多时候,我们需要在ElasticSearch中启用中文分词,本文这里简单的介绍一下方法。首先安装中文分词插件。这里使用的是 ik,也可以考虑其他插件(比如 smartcn)。

    $ ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip

    上面代码安装的是7.2.0版的插件,与 Elastic 7.2.0 配合使用。

    PS:其它插件命令:elasticsearch-plugin help

    接着,重新启动 Elastic,就会自动加载这个新安装的插件。

    然后,新建一个 Index,指定需要分词的字段。这一步根据数据结构而异,下面的命令只针对本文。基本上,凡是需要搜索的中文字段,都要单独设置一下。

    PUT /accounts
    {
        "mappings": {
            "person": {
                "properties": {
                    "user": {
                        "type": "text",
                        "analyzer": "ik_max_word",
                        "search_analyzer": "ik_max_word"
                    },
                    "title": {
                        "type": "text",
                        "analyzer": "ik_max_word",
                        "search_analyzer": "ik_max_word"
                    },
                    "desc": {
                        "type": "text",
                        "analyzer": "ik_max_word",
                        "search_analyzer": "ik_max_word"
                    }
                }
            }
        }
    }

    上面代码中,首先新建一个名称为accounts的 Index,里面有一个名称为person的 Type。person有三个字段。

    • user
    • title
    • desc

    这三个字段都是中文,而且类型都是文本(text),所以需要指定中文分词器,不能使用默认的英文分词器。

    Elastic 的分词器称为 analyzer。我们对每个字段指定分词器。

    "user": {
        "type": "text",
        "analyzer": "ik_max_word",
        "search_analyzer": "ik_max_word"
    }

    上面代码中,analyzer是字段文本的分词器,search_analyzer是搜索词的分词器。ik_max_word分词器是插件ik提供的,可以对文本进行最大数量的分词。

  • 相关阅读:
    win10 点击开始按钮无反应
    Server Error in '/' Application. IIS拒绝访问
    vs2017添加引用时报错未能正确加载“ReferenceManagerPackage”包。
    关于JavaScript中的this指向问题
    4p-在一张图片中根据矩形四个点的坐标计算两个矩形是否相交
    opencv使用
    [VMware]虚拟网络编辑器
    [所思所想]观《长津湖》有感
    [项目管理]失败的软件项目所具备的特点【待续】
    [软件过程/软件生命周期模型]软件过程的工具链【待续】
  • 原文地址:https://www.cnblogs.com/TianFang/p/11330241.html
Copyright © 2011-2022 走看看