码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 001 ElasticSearch7.x 、IK分词器、Kibana 环境搭建、安装


    ElasticSearch 7.x

    文章目录

    • ElasticSearch 7.x
      • 1.windows环境安装
        • 1.ik分词器安装
        • 2.es启动
        • 3.Kibana启动
      • 2.Linux环境安装
      • 3.分词器
        • 1.分词测试
        • 2.ES中默认分词器
        • 3.IK分词器
        • 4.自定义分词器

    1.windows环境安装

    es下载地址: https://www.elastic.co/cn/downloads/past-releases#elasticsearch

    ik分词器下载地址: https://github.com/medcl/elasticsearch-analysis-ik/releases

    Kibana下载地址: https://www.elastic.co/cn/downloads/past-releases#kibana

    注意:

    • 本文测试基于7.9.0版本,推荐springboot版本2.4以上,本文使用springboot版本为2.7
    • 下载时保证es,ik分词器及kibana版本一致,否则可能出现启动问题,
    • 分词器建议使用官方的安装方式,解压可能会启动失败
    • 7.x版本需要jdk环境为1.8以上,如果是8.x则需要jdk17以上环境,否则启动失败

    1.ik分词器安装

    进入es解压目录通过终端执行安装命令

    ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.9.0/elasticsearch-analysis-ik-7.9.0.zip
    

    2.es启动

    es解压后启动bin下的elasticsearch.bat即可

    ./bin/elasticsearch.bat
    

    访问 http://127.0.0.1:9200/ 验证是否启动成功

    在这里插入图片描述

    3.Kibana启动

    解压后启动bin下的kibana.bat即可

    ./bin/kibana.bat
    

    kibana访问地址

    http://127.0.0.1:5601/
    

    2.Linux环境安装

    待补充

    3.分词器

    ES 中处理分词的部分被称作分词器,英文是Analyzer,它决定了分词的规则。ES 自带了很多默认的分词器,比如Standard、Keyword、Whitespace等等,默认是Standard。当我们在读时或者写时分词时可以指定要使用的分词器

    1.分词测试

    测试hello world 是如何分词的

    POST _analyze
    {
      "analyzer": "standard",
      "text": "hello world"
    }
    

    2.ES中默认分词器

    • Standard Analyzer - 默认分词器,按词切分,小写处理
    • Simple Analyzer - 按照非字母切分(符号被过滤), 小写处理
    • Stop Analyzer - 小写处理,停用词过滤(the,a,is)
    • Whitespace Analyzer - 按照空格切分,不转小写
    • Keyword Analyzer - 不分词,直接将输入当作输出
    • Patter Analyzer - 正则表达式,默认\W+(非字符分割)
    • Language - 提供了30多种常见语言的分词器
    • Customer Analyzer 自定义分词器

    查看地址列分词情况:

    GET news/_analyze
    {
      "field": "address",
      "text": "198 mill lane"
    }
    

    执行结果

    {
      "tokens" : [
        {
          "token" : "198",
          "start_offset" : 0,
          "end_offset" : 3,
          "type" : "",
          "position" : 0
        },
        {
          "token" : "mill",
          "start_offset" : 4,
          "end_offset" : 8,
          "type" : "",
          "position" : 1
        },
        {
          "token" : "lane",
          "start_offset" : 9,
          "end_offset" : 13,
          "type" : "",
          "position" : 2
        }
      ]
    }
    
    

    这些分词器默认都是对英文进行分词,如果是中文就会出现每个汉字进行分词

    3.IK分词器

    由于默认都是英文分词,所有需要安装中文分词插件,安装后可以进行中文分词

    • ik_smart,智能分词,会做最粗粒度的拆分
    • ik_max_word,最细粒度拆分
    POST _analyze
    {
      "analyzer": "ik_smart"
      , "text": "我是中国人"
    }
    

    4.自定义分词器

    待补充

  • 相关阅读:
    Redis中的原子操作(2)-redis中使用Lua脚本保证命令原子性
    nacos服务注册源码过程阅读
    PicoDet 训练自己的数据集(COCO)
    32 【Navigator 对象和Screen 对象】
    Java项目:ssm+mysql医药进销存系统
    【云原生】k8s-----集群调度
    【离散数学】谓词逻辑
    0基础学习VR全景平台篇 第106篇:认识调色软件Lightroom
    智能驾驶开启产业新赛道:资本扎堆布局车规级高精定位
    uniapp iOS 真机调试
  • 原文地址:https://blog.csdn.net/weixin_54158370/article/details/140017954
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号