02_用大白话告诉你什么是Elasticsearch

news/2024/10/1 19:05:06

大白话、什么是Elasticsearch

Elasticsearch,分布式,高性能,高可用,可伸缩的搜索和分析系统

1、什么是搜索?
2、如果用数据库做搜索会怎么样?
3、什么是全文检索、倒排索引和Lucene?
4、什么是Elasticsearch?


1、什么是搜索?

百度:我们比如说想找寻任何的信息的时候,就会上百度去搜索一下,比如说找一部自己喜欢的电影,或者说找一本喜欢的书,或者找一条感兴趣的新闻(提到搜索的第一印象)
百度 != 搜索,这是不对的

垂直搜索(站内搜索)

互联网的搜索:电商网站,招聘网站,新闻网站,各种app
IT系统的搜索:OA软件,办公自动化软件,会议管理,日程管理,项目管理,员工管理,搜索“张三”,“张三儿”,“张小三”;有个电商网站,卖家,后台管理系统,搜索“牙膏”,订单,“牙膏相关的订单”

搜索,就是在任何场景下,找寻你想要的信息,这个时候,会输入一段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息


2、如果用数据库做搜索会怎么样?

做软件开发的话,或者对IT、计算机有一定的了解的话,都知道,数据都是存储在数据库里面的,比如说电商网站的商品信息,招聘网站的职位信息,新闻网站的新闻信息,等等吧。所以说,很自然的一点,如果说从技术的角度去考虑,如何实现如说,电商网站内部的搜索功能的话,就可以考虑,去使用数据库去进行搜索。

1、比方说,每条记录的指定字段的文本,可能会很长,比如说“商品描述”字段的长度,有长达数千个,甚至数万个字符,这个时候,每次都要对每条记录的所有文本进行扫描,懒判断说,你包不包含我指定的这个关键词(比如说“牙膏”)
2、还不能将搜索词拆分开来,尽可能去搜索更多的符合你的期望的结果,比如输入“生化机”,就搜索不出来“生化危机”

用数据库来实现搜索,是不太靠谱的。通常来说,性能会很差的。


3、什么是全文检索和Lucene?

(1)全文检索,倒排索引
(2)lucene,就是一个jar包,里面包含了封装好的各种建立倒排索引,以及进行搜索的代码,包括各种算法。我们就用java开发的时候,引入lucene jar,然后基于lucene的api进行去进行开发就可以了。用lucene,我们就可以去将已有的数据建立索引,lucene会在本地磁盘上面,给我们组织索引的数据结构。另外的话,我们也可以用lucene提供的一些功能和api来针对磁盘上额


4、什么是Elasticsearch?

(1)图解分析

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/66867.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

25个单据看透支付

本文深入解析了25个关键单据在支付环节中的核心作用与重要性。这些单据涵盖了支付指令、收款确认、交易凭证等多个方面,是支付流程中不可或缺的组成部分。文章通过详细剖析每个单据的功能、使用场景及合规要求,为读者提供了一套全面的支付单据知识体系。此外,文章还探讨了单…

吴恩达大模型教程笔记-七-

吴恩达大模型教程笔记(七) LangChain_微调ChatGPT提示词_RAG模型应用_agent_生成式AI - P29:5——基于文档的问答 - 吴恩达大模型 - BV1gLeueWE5N人们构建的最常见复杂应用之一。使用llm是一个可回答文档内或关于文档问题的系统,给定一段文本可能来自PDF文件或网页,或公司…

吴恩达大模型教程笔记-六-

吴恩达大模型教程笔记(六) LangChain_微调ChatGPT提示词_RAG模型应用_agent_生成式AI - P21:3. 第二篇 - RAG 指标三元组(RAG Triad of metrics) 中英文字幕 - 吴恩达大模型 - BV1gLeueWE5N本节课我们将深入探讨评估,我们将带你了解如何评估服务器架设的核心概念,具体来说…

吴恩达大模型教程笔记-二-

吴恩达大模型教程笔记(二) 【LangChain大模型应用开发】DeepLearning.AI - P4:4——链 - 吴恩达大模型 - BV1iZ421M79T这节课,这节课。哈里森将教授土地链最重要的基础构建块,哈里森将教授土地链最重要的基础构建块,即链条,即链条,链条通常结合一个大语言模型和一个提示…

御网杯

MISC MISC-信息安全大赛的通知 下载附件后打开 修改字体颜色得到flag Misc-编码转换 首先发现他是一个Brainfuck 编码进行解密flag{ab71cda1 这是第一段线索 这是第二段线索,发现是一个js解密b495e13b3f21 进行第三段解码,发现他是Ook编码方式f6fd50221978} 最终拼接得到flag…

御网杯2

Reverse Reverse-ez_apk 用IDA进行打开,找到main函数 def decrypt(encrypted_text, decryption_key):key_bytes = decryption_key.encode()characters = list(encrypted_text)decrypted_characters = [] * len(characters)for index, character in enumerate(characters):if c…

Free5GC源码研究(4) - AUSF研究

本文研究AUthentication Server Function (AUSF) 主要实现的功能AUSF的概念 在开始研究其源代码之前,我们需要先对AUSF有一些概念上的认识。AUSF的主要技术文档是TS29.509,规定了AUSF提供哪些服务,其对应的API接口有哪些。总的来说,AUSF就是帮助其他NF,比如AMF,来认证一个…

manim边学边做--形状匹配

manim中有几个特殊的用于形状匹配的对象,它们的作用是标记和注释已有的对象,本身一般不单独使用。 形状匹配对象一共有4种:BackgroundRectangle:为已有的对象提供一个矩形的背景 Cross:用交叉线标记已有对象 SurroundingRectangle:用矩形框围住某个对象 Underline:为某个…