一.ES简介
1.简单介绍:
ES是一个高拓展和开源的全文搜索和分析引擎,可以准实时的存储,搜索分析海量的数据
高拓展性:只需要加一台服务器加一些配置,启动ES进程即可加入集群
高可用性:提供副本机制,一个分片可设置多个副本,使得服务器宕机时集群可照常运行
2.ES应用场景:
a.全文搜索,搜索推荐等
b.日志数据分析,logstash采集日志,ES进行复杂的数据分析
3.ES在业务中的使用:
二.ES和MYSQL的对比
三.ES的集群选主
动态修改es的discovery.zen.minimum_master_nodes
PUT /_cluster/settings
{
“persistent”: {
“discovery.zen.minimum_master_nodes”: 3
}
}
四.ES的倒排索引
五.ES分词器
1.ES的内置分词器
a.standard:默认分词,单词会被拆分,大写会转换为小写
b.simple:按照非字母分词,大写转为小写
c.whitespace:按照空格分词,忽略大小写
d.shop:去除无意义单词,比如the/a/an/is.....
e.keyword:不做分词,把整个文本作为一个单独的关键词
2.ik分词器:
a.ik_max_word:将文本做最细粒度的拆分
b.ik_smart:将文本按照最粗粒度的拆分