安装ElasticSearcha
Posted xieting
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装ElasticSearcha相关的知识,希望对你有一定的参考价值。
安装ElasticSearcha
学习ES也有快一个月了,但是学习的时候一直没有总结。以前没有总结是因为感觉不会的很多,现在对ES有一点了解了。索性就从头从安装到使用ES做一个详细的总结,也分享给其他人供他人学习
首先咱们要官网上去下载ES的安装包,推荐下载Linux版的,要是windos 用户可以自己安装一个虚拟机。因为在生产环境或者真正的开发下ES都是步骤在Linux系统中。
https://www.elastic.co/downloads/elasticsearch ,上es的官网上,我们下载t它的解压包。
或者我们可以服务器上 使用Linux的下载命令
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.tar.gz
我们可以先创建一个文件夹,在这个文件夹下面是我们ES的目录
mkdir elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.tar.gz
tar -vxf elasticsearch-6.0.0.tar.gz
解压之后我们将看到一个ES的文件夹,我们现在进入到这个文件夹下面看看里面是什么样的结构。
下面我们将介绍ES目录下面几个文件夹的用处
bin/
config/ //ES配置文件的目录
lib/ //依赖的第三方库的目录
LICENSE.txt
modules/ //模块目录
NOTICE.txt
plugins/ //第三方插件的目录
README.textile
,
在我们启动之前,我们需要检查JDK的版本,因为ES5.x以后需要高版本的JDK
现在我们的前期准备也已经做完了,我们现在就要qidong ES服务器了
在当前的这个目录下面使用下面的这个命令
sh ./ bin/elasticsearch
随着dos界面闪过的日志,我们无法知道我们的ES服务器是否启动了。
在启动完成后,我们可以通过在浏览器上访问栏判断ES是否正常启动
在浏览器上输入这样的
127.0.0.1:9200
要是浏览器上显示出信息,说明我们的ES 服务器就启动成功了
ES 记录之如何创建一个索引映射,以及一些设置
** 初始化其映射**
PUT /my_index/_mapping/my_type
"my_type": //索引字段
"properties": //
"english_title":
"type": "string",//字段的类型,string类型
"analyzer": "english"//分析方式
//上面这种方式,是以前旧的方式。现在都使用这种的方式创建字段
PUT /my_index/_mapping/my_type
"my_type":
"properties":
"english_title":
"type": "keyword" //不分词结构,
//type也有分词索引结构的字段,就是text类型的字段
ES中的基本数据类型有
字符串 string
数字类型 long integer double 等
日期 date
布尔类型 boolean
二进制 binary
复杂的数据类型
数组类型
对象类型
嵌套类型 netsted
地理数据类型
专门数据类型
ipv4
完成数据类型
单词计数类型
同样我们可以使用其他数据类型来构建我们的数据映射
我们在创建索引时,也可以指定其他的设置,例如自定义分片方式
PUT /my_temp_index
"settings":
"number_of_shards" : 1,//主分片数量
"number_of_replicas" : 0//副分片数量
我们也可以在创建索引,同时自定义分词结构
PUT /product
"settings":
"analysis":
"analyzer":
"defalut":
"tokenizer": "ik_max_word"
,
"pinyin_analyzer":
"tokenizer": "my_pinyin"
,
"tokenizer":
"my_pinyin":
"keep_first_letter": false,
"keep_full_pinyin": true,
"keep_original": false,
"keep_separate_first_letter": false,
"limit_first_letter_length": 16,
"lowercase": true,
"type": "pinyin"
,
ES 中 Text keyword 两种基本类型区别
string字段被拆分成两种新的数据类型: text用于全文搜索的, 而keyword用于关键词搜索.
字符串将默认被同时映射成text和keyword类型,就像下面的这种结构
动态映射(dynamic mappings)
"name":
"type": "text",
"fields":
"keyword":
"type": "keyword",
"ignore_above": 256
于这个映射你即可以在foo字段上进行全文搜索, 也可以通过foo.keyword字段实现关键词搜索及数据聚合
如何将新旧的版本迁移
全文索引的字段
"foo":
"type": "string",
"index": "analyzed"
"foo":
"type": "text",
"index": true
不索引 关键词搜索
"foo":
"type": "string",
"index": "not_analyzed"
"foo":
"type": "keyword",
"index": true
以上是关于安装ElasticSearcha的主要内容,如果未能解决你的问题,请参考以下文章