elasticsearch学习笔记
一、es是什么呢
以下是百度百科的解释:
Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。
Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elasticsearch 中。
Kibana 使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。(ps: 橙黄色字体的表是的是和es搭配的小工具,可以帮助我们更好的使用es, 一般用的logstash 和 kibana比较多吧,beats我倒是没怎么见过。)
Elasticsearch 为所有类型的数据提供近乎实时的搜索和分析。无论您拥有结构化或非结构化文本、数字数据还是地理空间数据,Elasticsearch 都能以支持快速搜索的方式高效地存储和索引它。您可以超越简单的数据检索和聚合信息来发现数据中的趋势和模式。随着您的数据和查询量的增长,Elasticsearch 的分布式特性使您的部署能够随之无缝增长。
二、为什么需要用es?
当我们的项目数据量越来越大的时候,对于数据的查询检索感觉越来越缓慢,越来越受不了了。这时候你就该考虑使用到es这宽技术来帮助自己的项目了。(吐槽: 难道不是应该项目刚开始的会后就应该用这个吗?这就得问架构师了嘻嘻~)
由于Elasticsearch的功能强大和使用简单,维基百科、卫报、Stack Overflow、GitHub等都纷纷采用它来做全文搜索。
三、为什么选择es?
一般来说对于分布式微服务的项目,如果是toC的项目,对于项目的整体架构来说,更需要很多的中间件来提高项目的整体性能,那么对于中间件的选择就需要以下的几个方面来进行选择:①性能 ②生态 ③可用性 ④社区 ⑤维护团队。对于这些方面来说对于海量的数据来说有Solr、Lucene等搜索引擎,但是一般都会选择es,大家都用,都选择,那就是好的。也有其他博主搞的对比可以去搜索一下。
大家都知道创建索引可以加快查询的速度,帮助我们的数据查询检索,mysql用的索引和es的索引是不同的,es用的索引是使用的倒排索引,而mysql的话一般使用的是B+树这种数据结构,
一般来说数据库的架构图一般都是像这样的:
本文来自博客园,作者:程序员鲜豪,转载请注明原文链接:https://www.cnblogs.com/hg-blogs/p/16918648.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了