0
点赞
收藏
分享

微信扫一扫

搞定 ElasticSearch系列一 下载安装

老榆 2022-08-09 阅读 43

一、安装jdk

二、安装ElasticSearch

1.ElasticSearch下载地址:

2: 配置ElasticSearch

3:启动ElasticSearch

4: 安装ElasticSearch服务

三、安装elasticsearch-head

3.1 HEAD简介

3.2 安装HEAD

四、安装集成Ikanalyzer分词器

4.1 什么是分词

4.2 获取 ES-IKAnalyzer插件

4.3 安装插件

4.4 扩展词库

4.5测试 IK

一、安装jdk

ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持。所以要先安装JAVA环境。

由于ElasticSearch 5.x 往后依赖于JDK 1.8的,所以现在我们下载JDK 1.8或者更高版本。

下载JDK1.8,下载完成后安装。

二、安装ElasticSearch

1.ElasticSearch下载地址:

​​https://www.elastic.co/downloads/elasticsearch​​

搞定 ElasticSearch系列一 下载安装_elasticsearch

2: 配置ElasticSearch

config目录下:

搞定 ElasticSearch系列一 下载安装_elasticsearch_02

  • jvm.options ===> 配置JVM
  • elasticsearch ===> 配置ElasticSearch 信息

例如: elasticsearch.yaml 修改端口:

http.port: 92003

3:启动ElasticSearch

\bin目录下 command 执行 : elasticsearch.bat

搞定 ElasticSearch系列一 下载安装_搜索_03

访问以下地址 : http://localhost:9200/ 表示访成功:

搞定 ElasticSearch系列一 下载安装_analyzer_04

4: 安装ElasticSearch服务

window下提供以下GUI管理程序 可在bin目录下找到:

  • elasticsearch-service-mgr.exe
  • elasticsearch-service-x64.exe

elasticsearch-service.bat 是提供安装服务相关功能(本质上是一系列BAT的综合体)

# 安装
bin>elasticsearch-service.bat install
# 卸载
bin>elasticsearch-service.bat remove
# 开始
bin>elasticsearch-service.bat start
#停止
bin>elasticsearch-service.bat stop
# gui管理
bin>elasticsearch-service.bat manager

三、安装elasticsearch-head

3.1 HEAD简介

ElasticSearch-head是一个H5编写的ElasticSearch集群操作和管理工具,可以对集群进行傻瓜式操作。

  • 显示集群的拓扑,并且能够执行索引和节点级别操作
  • 搜索接口能够查询集群中原始json或表格格式的检索数据
  • 能够快速访问并显示集群的状态
  • 有一个输入窗口,允许任意调用RESTful API。这个接口包含几个选项,可以组合在一起以产生有趣的结果;
  • 5.0版本之前可以通过plugin名安装,5.0之后可以独立运行。

3.2 安装HEAD

安装grunt(安装head前必须安装,已久安装请忽略)

grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.x里之后的head插件就是通过grunt启动的。因此需要安装grunt.

npm install -g grunt-cli

查看版本号 grunt -version

如果下载慢 请使用淘宝镜像: npm config set registry ​​https://registry.npm.taobao.org​​

# 下载
git clone git://github.com/mobz/elasticsearch-head.git
# 进入到head目录
cd elasticsearch-head
#安装 head
npm install
# 启动head
npm run start
# 浏览器访问地址:
http://localhost:9100/

ElasticSearch配置Head: 在ElasticSearch.yaml中配置

# 增加新的参数,这样head插件可以访问es http.cors.enabled: true http.cors.allow-origin: "*"

# 浏览器访问地址:

​​http://localhost:9100/​​

搞定 ElasticSearch系列一 下载安装_搜索_05

四、安装集成Ikanalyzer分词器

4.1 什么是分词

全文检索就是对一篇文章进行索引,可以根据关键字搜索,类似于mysql里的like语句。

全文索引就是把内容根据词的意义进行分词,然后分别创建索引,例如”你们的激情是因为什么事情来的” 可能会被分词成:“你们“,”激情“,“什么事情“,”来“ 等token,这样当你搜索“你们” 或者 “激情” 都会把这句搜出来.

4.2 获取 ES-IKAnalyzer插件

​​https://github.com/medcl/elasticsearch-analysis-ik/releases​​

注意: IK的版本必须与ElasticSearch 一致

搞定 ElasticSearch系列一 下载安装_elasticsearch_06

4.3 安装插件

将 ik 的压缩包解压到 ES安装目录的plugins/目录下(最好把解出的程序文件 放到新建立的目录下: ),然后重启ES。

搞定 ElasticSearch系列一 下载安装_analyzer_07

4.4 扩展词库

扩展词典可以修改配置文件 config/IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>IK Analyzer 扩展配置</comment>
<!--用户可以在这里配置自己的扩展字典 -->
<entry key="ext_dict"></entry>
<!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords"></entry>
<!--用户可以在这里配置远程扩展字典 -->
<!-- <entry key="remote_ext_dict">words_location</entry> -->
<!--用户可以在这里配置远程扩展停止词字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

4.5测试 IK

下列工具使用 POSTMAN 发送请求:

创建索引:

​​http://127.0.0.1:9200/iktest​​

​​

搞定 ElasticSearch系列一 下载安装_搜索_08

​​

创建映射(处理规则): ​​http://127.0.0.1:9200/iktest/_mapping​​

#请求体:
{
"properties": {
"content": {
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart"
}
}

}

​​

搞定 ElasticSearch系列一 下载安装_搜索_09

​​

测试分词: ​​http://127.0.0.1:9200/_analyze​​

#请求体
{
"analyzer":"ik_smart",
"text":"天团S.H.E昨在两厅院艺文广场举办17万人露天音乐会,3人献唱多首经典好歌,让现场粉丝听得如痴如醉"
}

测试结果:

{
"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": "s.h.e",
"start_offset": 2,
"end_offset": 7,
"type": "LETTER",
"position": 2
},
{
"token": "昨在",
"start_offset": 7,
"end_offset": 9,
"type": "CN_WORD",
"position": 3
},
{
"token": "两厅",
"start_offset": 9,
"end_offset": 11,
"type": "CN_WORD",
"position": 4
},
{
"token": "院",
"start_offset": 11,
"end_offset": 12,
"type": "CN_CHAR",
"position": 5
},
{
"token": "艺文",
"start_offset": 12,
"end_offset": 14,
"type": "CN_WORD",
"position": 6
},
{
"token": "广场",
"start_offset": 14,
"end_offset": 16,
"type": "CN_WORD",
"position": 7
},
{
"token": "举办",
"start_offset": 16,
"end_offset": 18,
"type": "CN_WORD",
"position": 8
},
{
"token": "17",
"start_offset": 18,
"end_offset": 20,
"type": "ARABIC",
"position": 9
},
{
"token": "万人",
"start_offset": 20,
"end_offset": 22,
"type": "CN_WORD",
"position": 10
},
{
"token": "露天",
"start_offset": 22,
"end_offset": 24,
"type": "CN_WORD",
"position": 11
},
{
"token": "音乐会",
"start_offset": 24,
"end_offset": 27,
"type": "CN_WORD",
"position": 12
},
{
"token": "3人",
"start_offset": 28,
"end_offset": 30,
"type": "TYPE_CQUAN",
"position": 13
},
{
"token": "献",
"start_offset": 30,
"end_offset": 31,
"type": "CN_CHAR",
"position": 14
},
{
"token": "唱",
"start_offset": 31,
"end_offset": 32,
"type": "CN_CHAR",
"position": 15
},
{
"token": "多首",
"start_offset": 32,
"end_offset": 34,
"type": "CN_WORD",
"position": 16
},
{
"token": "经典",
"start_offset": 34,
"end_offset": 36,
"type": "CN_WORD",
"position": 17
},
{
"token": "好歌",
"start_offset": 36,
"end_offset": 38,
"type": "CN_WORD",
"position": 18
},
{
"token": "让",
"start_offset": 39,
"end_offset": 40,
"type": "CN_CHAR",
"position": 19
},
{
"token": "现场",
"start_offset": 40,
"end_offset": 42,
"type": "CN_WORD",
"position": 20
},
{
"token": "粉丝",
"start_offset": 42,
"end_offset": 44,
"type": "CN_WORD",
"position": 21
},
{
"token": "听得",
"start_offset": 44,
"end_offset": 46,
"type": "CN_WORD",
"position": 22
},
{
"token": "如痴如醉",
"start_offset": 46,
"end_offset": 50,
"type": "CN_WORD",
"position": 23
}
]
}



举报

相关推荐

0 条评论