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

相关推荐
2501_941146704 小时前
5G与物联网:智能城市的未来
elasticsearch
isNotNullX4 小时前
数据中台有什么用?数据仓库和数据中台怎么选?
大数据·数据仓库·人工智能·数据中台
roman_日积跬步-终至千里4 小时前
【AI Engineering】Should I build this AI application?—AI应用决策框架与实践指南
大数据·人工智能
DolphinScheduler社区5 小时前
图解 Apache DolphinScheduler 如何配置飞书告警
java·大数据·开源·飞书·告警·任务调度·海豚调度
稚辉君.MCA_P8_Java5 小时前
通义千问 SpringBoot 性能优化全景设计(面向 Java 开发者)
大数据·hadoop·spring boot·分布式·架构
SeaTunnel5 小时前
Apache SeaTunnel 如何将 CDC 数据流转换为 Append-Only 模式?
大数据·开源·apache·开发者·seatunnel·转换插件
万山y5 小时前
git remote add做了什么
大数据·git·elasticsearch
六边形架构6 小时前
别再盲目地堆砌技术了!大部份大数据项目的失败,都是因为架构设计没做对!
大数据·系统架构
驾数者6 小时前
DDL实战指南:如何定义和管理动态表
大数据·sql·flink
Hello.Reader7 小时前
Flink CDC 用 OceanBase CDC 实时同步数据到 Elasticsearch
elasticsearch·flink·oceanbase