浅练ES入门&&工具Kibana&&head的使用&&IK分词器应用

一、什么是Kibana?

Kibana是ES的一个数据分析和可视化工具

1.下载地址

ElasticSearch官网:

2.安装

解压到本地即可使用

3.修改配置

server.port: 5601
server.host: "0.0.0.0" #允许来自远程用户的连接
elasticsearch.url: http://192.168.163.135:9200 #Elasticsearch实例的URL

4.启动

bin目录下的kibana.bat文件

5.练习

浏览器访问:

二、什么是head?

head插件是用来监控ES的状态,也可以快速创建索引库和映射

1.下载地址

下载地址:

2.启动

文件窗口地址栏cmd,打开黑窗口,输入启动命令

npm run start

3.测试

浏览器访问:127.0.0.1:9100,

打开网页后把Elasticsearch虚拟机IP:端口写上,并连接

三、ES快速入门

1、index管理(index只可用小写)

1.创建index索引库

PUT /java2202
{
  "settings": {
    "number_of_shards": 2,
    "number_of_replicas": 0
  }
}

注意:一台服务器时,备份分片的数量必须设置为0,因为主备在同一台上没有意义

2.删除index

DELETE /java2202

3.修改index

PUT /java2202/_settings
{
   "number_of_replicas":0
}

注意:index一旦创建,主分片数量不可修改,因为:Get时--->hash(id)%number_of_shards

2、mapping管理

1.创建mapping

POST /Java2202/course/_mapping
{
   "properties":{
   "name":{
    type:"text"
    },
    "description":{
    type:"text"
    }
  }
}

2.查询mapping

查询所有索引的映射:

GET /java2202/course/_mapping

3.更新mapping

映射创建成功可以添加新字段,已有字段不允许更新。和添加语法一样,type字段不允许重复

4.删除mapping

通过删除索引来删除映射.一个索引库只能添加一个映射,删除库即可

DELETE /java2202

3、document管理

1.创建document

POST /java2202/course/1
            {
              "name":"python从入门到放弃",
              "description":"人生苦短,我用Python",
              "studymodel":"201002"
            }

2.修改document(修改的id有则修改,无则添加)

PUT /java2202/course/1
           {
             "name":"python从入门到放弃",
             "description":"人生苦短,我用Python",
             "studymodel":"201002"
           }

3.查询document

GET /Java2202/course/1

4.删除document

DELETE /java2202/course/1

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings(ignore)
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

四、IK分词器

1.下载

下载IK分词器:(Github地址:)

2、解压

将解压的文件拷贝到ES安装目录的plugins下的ik(重命名)目录下,重启es

建议重命名,也可不改名

3、测试分词效果

两种分词效果

3.1、ik_max_word

会将文本做最细粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为“中华人民共和国、中华人民、中华、华人、人民大会堂、人民、共和国、大会堂、大会、会堂等词语。

3.2、ik_smart

会做最粗粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为中华人民共和国、人民大会堂。

POST /_analyze
{
  "text":"中华人民共和国人民大会堂",
  "analyzer":"ik_smart"
}

POST /_analyze
{
  "text":"中华人民共和国人民大会堂",
  "analyzer":"ik_max_word"
}

4、自定义分词

如果要让分词器支持一些专有词语,可以自定义词库。

iK分词器自带的main.dic的文件为扩展词典,stopword.dic为停用词典。

    先把这三个文件拿到Windows桌面,再进行修改 xml文件,把另外两个文件名家后缀名加上即可 另外两个文件可以加上特有的名词和停用字典(如:的,得,地)
经验分享 程序员 微信小程序 职场和发展