一、简介
es是分布式搜索引擎,支持全文、多条件、分组聚合的实时搜索。
二、倒排索引
数据结构 -> Term Directory (字典树) + Posting List( id list)
三、分词
3.1 组成
Character Filter -> 字符过滤器
Tokenizer -> 按照规则切分单词
3.2 常用分词器
Standard Analyzer -> word切分,转小写
Keyword Analyzer -> 不切分
ICU Analyzer -> 中文分词
四、es常见搜索方式
term -> 精确搜索,不分词
match -> 全文搜索,对查询字段进行分词
multi match->多字段
range -> 范围
bool -> and、or、not 条件组合搜索
五、 es 为啥比 mysql 快
1. es是列存储,并将每个匹配条件的结果列表做合并,而每个匹配条件的查询很快(列查询)。
2.es是多分片存储,有点像mysql 分库分表。