ES优化参考


分片优化 每个分片大小不要超过30GB,常规需要y = x/30个分片,增长速度快建议修正为y = x/30+1 每个节点建议的单个索引分片数<3,即按6个节点计算,最多有12个分片。 即分片数满足条件为y=x/30或y=x/30+1且y<=12, 更改分片数量,需要重建索引结构、刷数据。 路由控制

fielddata 和 doc_values


doc values 2.1 倒排索引的优势 &

ES正排索引


ElasticSearch - 底层原理 测试数据 "index": false 不生成倒排索引

非分词字段搜索逻辑


简言之 整体通过前缀树的逻辑存储,老版本都是将所有类型的值转为字符串存储的,比如数字也是存储成字符串,因为数值比较大小和字符串不一致,解决的一种办法就是给数字前面补0,但是会浪费空间 当搜索401的时候,会解析成搜40,4 最后从4的前缀树头结点搜索,但是按道理搜索4这个值的时候不应该是从这个节点进

ES脑裂原因及避免方式


为何Elasticsearch选择倒排索引而非B树索引?探索背后的差异与优势


索引可能大家都不陌生,在用关系型数据库时,一些频繁用作查询条件的字段我们都会去建立索引来提升查询效率。在关系型数据库中,我们一般都采用 B 树索引进行存储,所以 B 树索引也是我们接触比较多的一种索引数据结构,然而在 es 中,进行全文搜索的时候却并没有选择使用 B 树 索引,而是采用的倒排索引。本

Elasticsearch


生活中的数据 搜索引擎是对数据的检索,所以我们先从生活中的数据说起。 我们生活中的数据总体分为两种:结构化数据 和 非结构化数据。 结构化数据:也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过