前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Elasticsearch】介绍、使用、配置、中文分词器、Kibana

【Elasticsearch】介绍、使用、配置、中文分词器、Kibana

作者头像
陶然同学
发布2023-02-24 13:52:18
3000
发布2023-02-24 13:52:18
举报
文章被收录于专栏:陶然同学博客陶然同学博客
    1. Elastic 概述

Elastic官网:免费且开放的搜索:Elasticsearch、ELK 和 Kibana 的开发者 | Elastic

Elastic有一条完整的产品线:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。

Logstash 是动态数据收集管道,拥有可扩展的插件生态系统。也就是数据的收集,处理和储存。

Elasticsearch 是一个基于 JSON 的分布式搜索和分析引擎。也就是数据的检索和分析。

Kibana 可视化 Elastic Stack 的窗户(工具)。探索数据并管理堆栈。也就是数据的可视化

    1. ElasticSearch介绍
      1. 什么时候ElasticSearch

ElasticSearch是一个基于Lucene的搜索服务器,提供了一个分布式的全文搜索引擎。

Elasticsearch是用Java开发的,基于RESTful web接口,一个开源项目。

Elasticsearch是当前流行的企业级搜索引擎,能够达到实时搜索,且稳定,可靠,快速。

      1. 下载
  1. 最新版本下载:下载 Elastic 产品 | Elastic
  1. 历史版本下载

Past Releases of Elastic Stack Software | Elastic

https://www.elastic.co/cn/downloads/past-releases#elasticsearch

      1. 安装
  1. 解压即可
    1. ElasticSearch使用
      1. 启动
  1. 确定启动文件,bin目录下elasticsearch.bat命令,是用于启动elasticsearch的
  1. 步骤1:启动,双击启动程序
  1. 启动成功后,绑定的端口
    1. 9300:集群节点间通讯接口
    2. 9200:客户端访问接口
  2. 步骤2:访问,http://localhost:9200/
      1. 无法启动

错误1:关闭xpack

  1. 黑窗口闪烁后关闭
    1. 修改config\ elasticsearch.yml文件,添加如下内容

xpack.ml.enabled: false

    1. ElasticSearch常见配置
      1. JVM参数
  1. Elasticsearch基于Lucene的,而Lucene底层是java实现,学习过程中,建议将jvm参数修改小一些。
  2. 修改 config/jvm.options,
      1. 修改绑定IP(可选)
  1. 默认只允许本机访问
  1. 修改为0.0.0.0后则可以远程访问

network.host: 0.0.0.0

  1. 启动elasticsearch异常(黑窗口一闪关闭)
  1. 修改JDK配置
  1. 再次访问
    1. Kibana介绍
      1. 什么是Kibana

Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。

而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。

      1. Kibana下载
  1. 下载历史版本:

https://www.elastic.co/cn/downloads/past-releases#kibana

      1. Kibana安装
  1. 解压zip即可
    1. Kibana使用
      1. 启动
  1. 双击 /bin/kibana.bat 进行启动
  1. 启动成功
      1. 访问

http://localhost:5601

      1. 控制台
  1. 点击左侧菜单“Dev Tools”就可以访问 ElasticSearch的控制台
      1. 基本使用
      1. 常见错误
  1. 启动错误1:提示配置xpack.reporting.encryptionKey
  1. 启动错误2:提示配置xpack.security.encryptionKey
  2. 修改 kibana.yml文件,添加如下内容

# xpack.reporting.encryptionKey: "任意字符"

xpack.reporting.encryptionKey: "liangtong"

# xpack.security.encryptionKey: "32长度随机字符串"

xpack.security.encryptionKey: "afb73042ba0411ebb4aa54ee7547b0a2"

    1. 中文分词器
  1. 分词与分词器
    1. 分词 Analysis:对文本进行分析,将全文本转换一系列单词的过程。
    2. 分词器Analyzer :分词Analysis通过分词器Analyzer实现的。
  2. 默认es不会对中文进行分词

POST _analyze

{

  "text": ["我是中国人"]  

}

  1. 使用ik_max_word 进行分词

POST _analyze

{

  "analyzer": "ik_max_word",

  "text": ["我是中国人"]  

}

  1. 安装IK分词器(支持中文分词)
    1. IK分词器提供了源代码(maven项目),通过打包生产zip文件

Releases · medcl/elasticsearch-analysis-ik · GitHub

  1. 使用Kibana进行测试

POST _analyze

{

  "analyzer": "ik_max_word",

  "text": ["我是中国人"]

}

  1. 测试结果

{

  "tokens": [

    {

      "token": "我",

      "start_offset": 0,

      "end_offset": 1,

      "type": "CN_CHAR",

      "position": 0

    },

    {

      "token": "是",

      "start_offset": 1,

      "end_offset": 2,

      "type": "CN_CHAR",

      "position": 1

    },

    {

      "token": "中国人",

      "start_offset": 2,

      "end_offset": 5,

      "type": "CN_WORD",

      "position": 2

    },

    {

      "token": "中国",

      "start_offset": 2,

      "end_offset": 4,

      "type": "CN_WORD",

      "position": 3

    },

    {

      "token": "国人",

      "start_offset": 3,

      "end_offset": 5,

      "type": "CN_WORD",

      "position": 4

    }

  ]

}

    1. Kibana常见配置
      1. 整合Elasticsearch(可选)
  1. 通过 config/kibana.yml文件,可以修改elasticsearch的服务地址

elasticsearch.url: "http://localhost:9200"

    1. head服务(可选)
      1. 基本配置
  1. 步骤6:安装和启动head服务(查看elasticsearch索引工具)
  1. 访问head服务,查阅以后索引信息

http://localhost:8084/head/index.html

  1. 使用head进行分词测试
      1. 跨域问题:elasticsearch支持跨域
  1. 在elasticsearch的config目录下,修改elasticsearch.yml文件,添加跨域内容

#Cross domain

http.cors.enabled: true

http.cors.allow-origin: "*"

  1. 如果没有配置跨域,不能访问
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-10-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档