Elasticsearch

Elasticsearch

Elasticsearch 是一个基于 Lucene 的分布式搜索引擎,具备高效的全文搜索、实时数据分析和数据可视化等功能。它采用倒排索引的方式来存储和搜索数据,能够快速响应用户的搜索请求,并支持水平扩展。

倒排索引

倒排索引(或者反向索引)是一种存储单词在文档或一组文档中的位置的索引方法,常用于全文搜索。

在没有搜索引擎时,我们是直接输入一个网址,然后获取网站内容,这时我们的行为是:

document -> to -> words

通过文章,获取里面的单词,此谓「正向索引」,forward index.

后来,我们希望能够输入一个单词,找到含有这个单词,或者和这个单词有关系的文章:

word -> to -> documents

于是我们把这种索引,成为inverted index,直译过来,应该叫「反向索引」,国内翻译成「倒排索引」。

为什么快

  1. 使用倒排索引:倒排索引是一种针对文本搜索而优化的数据结构,它将每个词与出现这个词的文档列表关联起来,这样就可以快速查找包含某些词的文档。

  2. 分布式:它将索引分成若干个分片,并在多台机器上进行分布式存储,这样就可以并行处理查询,提升查询效率。

怎么和数据库数据保证一致性

使用数据库监测工具canal监测数据库数据库数据变化,将变化数据的消息投递到MQ中,然后通过MQ异步更新ES中的数据。

学习ES博客推荐

https://blog.csdn.net/Andrew_Chenwq/article/details/128722692

相关推荐
TDengine (老段)5 小时前
TDengine 中的关联查询
大数据·javascript·网络·物联网·时序数据库·tdengine·iotdb
这个懒人8 小时前
深入解析Translog机制:Elasticsearch的数据守护者
数据库·elasticsearch·nosql·translog
直裾10 小时前
Mapreduce的使用
大数据·数据库·mapreduce
愿你天黑有灯下雨有伞12 小时前
Docker 安装 Elasticsearch 教程
运维·elasticsearch·docker
麻芝汤圆12 小时前
使用 MapReduce 进行高效数据清洗:从理论到实践
大数据·linux·服务器·网络·数据库·windows·mapreduce
树莓集团12 小时前
树莓集团海南落子:自贸港布局的底层逻辑
大数据
LuckyRich112 小时前
【boost搜索引擎】下
开发语言·c++·搜索引擎
不剪发的Tony老师12 小时前
Hue:一个大数据查询工具
大数据
靠近彗星13 小时前
如何检查 HBase Master 是否已完成初始化?| 详细排查指南
大数据·数据库·分布式·hbase
墨染丶eye13 小时前
数据仓库项目启动与管理
大数据·数据仓库·spark