当前位置: 首页 > news >正文

Elasticsearch:什么是搜索引擎?

搜索引擎定义

搜索引擎是一种软件程序或系统,旨在帮助用户查找存储在互联网或特定数据库中的信息。 搜索引擎的工作原理是对各种来源的内容进行索引和编目,然后根据用户的搜索查询向用户提供相关结果列表。

搜索引擎对于希望快速有效地查找特定信息的用户来说是有用的工具。 它们的范围、功能和索引的内容类型各不相同。 这种多功能性可以满足不同环境下的特定用户需求。 搜索引擎可以是巨大的互联网搜索引擎,旨在对网络上的所有内容进行编目,也可以是旨在在组织内部使用以使内部信息发现更容易的企业搜索引擎。 它们甚至包括为本地网络上的文件建立索引的桌面搜索引擎。

搜索引擎简史

搜索引擎的概念早于互联网出现数十年。 1945 年,万尼瓦尔·布什 (Vannevar Bush) 在《大西洋月刊》发表的著名文章中,科学研究与发展办公室主任提议美国应该开展 “memex” 项目。 这个拟议的自动个人归档系统将 “机械化,以便可以以超快的速度和灵活性进行咨询”。

20 世纪 50 年代,第一个自动化信息检索系统问世。 20 世纪 50 年代末,杰拉德·索尔顿 (Gerard Salton) 等研究人员开始为文本自动信息检索系统奠定基础。 Salton 在 20 世纪 60 年代初开发了 SMART(文本机械分析和检索系统)信息检索系统。 这一里程碑使用数学和统计方法来分析和检索相关文本信息。 它还引入了相关性排名的概念。

在整个 20 世纪 60 年代和 1970 年代,各种信息检索系统不断发展,融入了布尔搜索和向量空间模型(一种将文本等对象表示为向量的数学模型)等新技术。 20 世纪 80 年代标志着自然语言处理技术融入信息检索系统,从而可以对用户查询和文档内容进行更复杂的分析。 1996 年,随着第一个自动化网络搜索引擎 WebCrawler 的首次亮相,出现了一个重大转折点。 Google 于 1998 年进入,以其 PageRank 算法彻底改变了互联网搜索,显着增强了搜索相关性。

20 世纪 90 年代末和 2000 年代初见证了搜索引擎的多元化。 企业搜索引擎的出现是为了应对日益数字化的业务数据。 2010 年代,开源企业选项兴起,为企业构建自己的搜索功能提供了灵活性和可扩展性。 其他新的搜索引擎包括垂直搜索引擎(专注于特定主题)和社交媒体搜索。 如今,在人工智能的帮助下,搜索引擎将不断改进和多样化。

搜索引擎如何工作?

搜索引擎的工作原理是遵循一个多步骤过程,旨在找到与用户查询最相关的结果。 从企业搜索引擎到互联网搜索,大多数都遵循类似的过程。

对于基于互联网的搜索引擎,搜索引擎部署自动化机器人(称为网络爬虫或蜘蛛)来查找信息。 这些机器人首先访问一组已知的网页。 他们从中提取并跟踪其他页面的链接,创建互连网页的地图。 在企业搜索引擎中,使用不同的方法来探索组织内的内部数据库、文档和其他存储库,通常是 API 和专用连接器。

爬行完成后,就开始建立索引。 爬虫分析每个网页、内部文档或其他数据的内容,以提取相关信息、关键字和元数据。 然后将收集到的信息组织成索引。 索引是一种结构化数据库,可以快速有效地检索信息。 它通常包括有关网页或文档的内容和位置的详细信息。

接下来的步骤是查询提交和分析。 当用户输入搜索查询时,搜索引擎会处理该查询以了解用户的意图。 它通过识别关键字、短语和用户上下文来分解查询。 如今,许多搜索引擎使用自然语言处理(NLP)技术来更好地理解单词背后的含义。

然后,搜索引擎将用户的查询与索引内容进行匹配。 它识别包含相关关键字或短语的文档或网页。 从索引中检索相关结果。 搜索引擎根据其算法生成潜在匹配列表。

算法排名根据各种因素(例如相关性或来源的权威性)组织结果。 有些通过内容相关性来衡量,有些会考虑跳出率和历史参与度等指标,而另一些则衡量点击率,甚至根据用户参与度数据提供自动建议。 通常,搜索引擎使用专有算法和复杂的排名算法来辨别列出结果的顺序。 在企业搜索中,可以调整甚至策划分层结果列表以对某些结果进行优先级排序。

最后,搜索引擎在搜索引擎结果页面(SERP)上向用户呈现排名结果。 每个结果通常包括标题、描述和 URL 或其他信息位置。 用户可以单击搜索结果来访问网页或文档的完整内容。

搜索引擎不断地抓取、索引和完善其算法,为用户提供最相关和最新的信息。 他们还持续监控用户行为,包括点击率和页面停留时间。 这些数据有助于完善排名算法并随着时间的推移提高结果的相关性。

为什么搜索引擎很重要?

搜索引擎很重要,因为它们是通往互联网和各种数字平台上大量可用信息的门户。 在数据泛滥的世界中,搜索引擎充当导航工具,帮助用户快速找到他们正在寻找的任何信息。

无论是用于学术研究、企业业务查询,还是仅仅在线购物,搜索引擎都会通过索引和组织在线信息和内部数据以使其易于访问,从而简化搜索过程。

搜索引擎在不同的行业提供了不同的可能性。 例如,在电子商务领域,它们可以充当内容创作者和消费者之间的桥梁,培育数字生态系统。 对于学术界各个层面的研究人员和学生来说,搜索引擎是教育和发现的重要工具。 搜索引擎可以通过提供对法律信息和数据库的访问来支持法律发现。 同样,他们可以通过索引文件和聚合医学期刊的信息来为医疗保健专业人员提供支持。 在大多数行业中,搜索引擎支持并简化研究和发现过程,使其对我们的日常生活至关重要。

搜索引擎的类型

搜索引擎有多种形式,每种形式都是为了满足特定的需求和环境而设计的。 以下是一些不同类型的搜索引擎:

互联网搜索引擎:通过索引和检索互联网上的信息,互联网搜索引擎可以接受用户查询并生成相关网页、图像、视频等。 请注意,互联网搜索引擎与网络浏览器不同,网络浏览器是显示网页的软件应用程序。 网络浏览器用于访问搜索引擎。

企业搜索引擎:专为内部组织使用而设计,企业搜索引擎在公司的数据库、文档和内部网中索引和检索信息。

桌面搜索引擎:通过对用户个人计算机或本地网络上的文件、应用程序和文档进行索引,桌面搜索引擎为用户提供快速的本地搜索功能。

学术搜索引擎:学术搜索引擎专注于学术内容,包括研究论文、文章和学术出版物,满足研究人员和学生的需求。

社交媒体搜索引擎:社交媒体搜索引擎可以对社交媒体平台上的内容进行索引,这允许用户搜索与帖子和讨论相关的主题以及查找其他用户个人资料。

元搜索引擎:这些聚合来自多个搜索引擎的结果,为用户提供更广阔的视角,通常用于比较结果。

垂直搜索引擎和专业搜索引擎:这些术语有时可以互换使用。 然而,它们之间存在重要的区别。 主要区别在于覆盖范围。 专业搜索引擎通常关注范围较窄,专注于独特的内容类型,而垂直搜索引擎则涵盖特定行业或主题内更广泛的范围。

搜索引擎优化(SEO)

搜索引擎优化(SEO)主要与互联网搜索引擎相关。 SEO 策略旨在提高网站在搜索引擎结果页面 (SERP) 中针对特定关键字和查询的可见性和排名。

SEO 的原理也可以应用于其他类型的搜索引擎,具体取决于上下文。 例如,组织可以在其企业搜索引擎中采用 SEO 技术来优化其内部内容。 专业搜索引擎的开发人员可以修改 SEO 技术并将其应用于图像、视频或其他类型的内容。 即使进行了这些修改,SEO 的核心原则仍然保持一致。

在互联网搜索引擎的上下文中使用不同的 SEO 子类型:

  • 技术搜索引擎优化优化网站的技术方面,以增强其搜索引擎可见性和用户体验。 网站速度、移动设备友好性、网站架构和 HTTPS 安全性是技术 SEO 中的众多考虑因素之一。
  • 页面搜索引擎优化优化网站上的各个页面,以提高排名并吸引相关流量。 关键词优化、元标签、标题标签、URL 结构和页面内容都是页面 SEO 的因素。
  • 页外搜索引擎优化涉及在网站之外进行的活动,以提高其排名。 这可能涉及从其他信誉良好的网站获取相关反向链接、利用社交媒体平台以及其他外部促销(例如影响者外展)。

搜索引擎的新趋势

一些新趋势可能会塑造搜索引擎的未来。 以下是一些值得思考的问题:

  • 零点击搜索(用户从搜索结果页面获取所需信息,而不是单击链接)将更加流行。 生成式人工智能将增强这一点,生成式人工智能会从各种来源收集信息来回答用户的查询。
  • 搜索引擎也将越来越多地利用人工智能来实现个性化。 人工智能将在其结果中考虑用户的偏好和行为(以及任何其他相关背景,例如位置)。
  • 语音激活设备和自然语言处理的改进已经导致对语音搜索的依赖增加。 搜索引擎将不断发展以更好地理解和响应对话式查询。
  • 隐私问题将推动注重隐私的搜索引擎的发展。 用户可能会倾向于优先考虑数据保护并提供匿名搜索选项的搜索引擎。
  • 视觉搜索将继续前进。 除了当前可用的查询(例如向视觉搜索添加文本提示)之外,用户将能够使用文本、图像和视频(称为多模式搜索)创建复杂的查询。
  • 问答已经变得司空见惯,在搜索结果的顶部为用户查询提供快速、简洁的答案的特色片段。 优化问答内容是互联网搜索引擎上日益增长的 SEO 策略。

使用 Elastic 搜索

Elastic 是为你的企业构建个性化、可扩展的 AI 搜索体验的完美选择。 借助 Elastic,你将获得一流的文本、向量、混合和语义搜索、生成式 AI 集成以及对 NLP 转换器模型和第三方模型管理的支持。 详细了解为什么 Elastic 是当今构建 AI 搜索应用程序的行业标准。

根据 Db-engine 的统计数据,目前 Elasticsearch 在搜索引擎领域排名第一:

我们常见的网站及 app,比如 CSDN,抖音,滴滴,美团,携程,微博,github 等等里的搜索都是来自 Elasticsearch。

搜索引擎资源

  • Elasticsearch:免费开放的 Elastic Stack 的核心
  • 视频:Elasticsearch 入门
  • 深入了解新的 Elasticsearch 相关性引擎

相关文章:

Elasticsearch:什么是搜索引擎?

搜索引擎定义 搜索引擎是一种软件程序或系统,旨在帮助用户查找存储在互联网或特定数据库中的信息。 搜索引擎的工作原理是对各种来源的内容进行索引和编目,然后根据用户的搜索查询向用户提供相关结果列表。 搜索引擎对于希望快速有效地查找特定信息的用…...

人工智能几个关键节点:深蓝,AlphaGo,ChatGPT,Sora

近30年,人工智能几个关键节点:深蓝,AlphaGo,ChatGPT,Sora 深蓝: 1997年,深蓝击败卡斯帕罗夫的比赛是通过一系列复杂的算法和策略实现的。深蓝的开发团队使用了一种名为“暴力搜索”的技术&…...

WordPres Bricks Builder 前台RCE漏洞复现(CVE-2024-25600)

0x01 产品简介 Bricks Builder是一款用于WordPress的开发主题,提供直观的拖放界面,用于设计和构建WordPress网站。它使用户能够轻松创建自定义的网页布局和设计,无需编写或了解复杂的代码。Bricks Builder具有用户友好的界面和强大的功能,使用户可以通过简单的拖放操作添加…...

代码随想录算法训练营总结 | 慢慢总结,想起啥就先写上

二叉树总结 二叉树的结构 stauct TreeNode {int val;TreeNode* left;TreeNode* right; }二叉树的递归函数分析 二叉树的递归函数当做只有一个根节点,一个左子树,一个右节点的数去看,这看着是个废话, 其实很重要 回溯…...

基于开源模型对文本和音频进行情感分析

应用场景 从商品详情页爬取商品评论,对其做舆情分析;电话客服,对音频进行分析,做舆情分析; 通过开发相应的服务接口,进一步工程化; 模型选用 文本,选用了通义实验室fine-tune的st…...

SQL中为什么不要使用1=1

最近看几个老项目的SQL条件中使用了11,想想自己也曾经这样写过,略有感触,特别拿出来说道说道。 编写SQL语句就像炒菜,每一种调料的使用都可能会影响菜品的最终味道,每一个SQL条件的加入也可能会影响查询的执行效率。那…...

python 几种常见的音频数据读取、保存方式

1. soundfile 库的使用 soundfile库是一个Python库,主要用于读取和写入音频文件。它支持多种音频格式,包括WAV、AIFF、FLAC和OGG等。通过soundfile库,用户可以方便地将numpy数组存储到音频文件或者将音频文件加载到numpy数组中。此外&#x…...

关于msvcr120.dll丢失怎样修复的详细解决步骤方法分享,msvcr120.dll文件的相关内容

在电脑使用过程中,我们经常遇到各种系统错误,其中msvcr120.dll丢失是一个常见问题。msvcr120.dll文件是Visual C Redistributable for Visual Studio 2015/2017的一个组件,主要用于支持某些应用程序的正常运行。当电脑出现msvcr120.dll丢失情…...

简单几步通过DD工具把云服务器系统Linux改为windows

简单几部通过DD安装其他系统,当服务器的web控制台没有我们要装的系统,就需要通过DD(Linux磁盘)工具来更改系统,(已知支持KVM系统) 本文如何简单的更换系统,不通过web控制台来更换&a…...

使用 package.json 配置代理解决 React 项目中的跨域请求问题

使用 package.json 配置代理解决 React 项目中的跨域请求问题 当我们在开发前端应用时,经常会遇到跨域请求的问题。为了解决这个问题,我们可以通过配置代理来实现在开发环境中向后端服务器发送请求。 在 React 项目中,我们可以使用 package…...

生成 Let‘s Encrypt 免费证书

文章目录 1. 安装 acme.sh2. 添加云服务商安全访问密钥并授权管理DNS记录3. 当前 Shell 添加安全访问密钥变量4. 生成证书5. 拷贝证书6. 清理安全访问密钥变量7. 打开脚本自动更新 代码仓库地址:https://github.com/Neilpang/acme.sh 1. 安装 acme.sh yum -y insta…...

int128的实现(基本完成)

虽然有一个声明叫_int128但是这并不是C标准: long long 不够用?详解 __int128 - FReQuenter - 博客园 (cnblogs.com) 网络上去找int128的另类实现方法,发现几乎都是在介绍_int128的 然后我就自己想了个办法,当时还没学C&#xf…...

【linux】使用 acme.sh 实现了 acme 协议生成免费的SSL 证书

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书. 主要步骤: 安装 acme.sh生成证书copy 证书到 nginx/apache 或者其他服务更新证书更新 acme.sh出错怎么办, 如何调试 下面详细介绍. 1. 安装 acme.sh 安装很简单, 一个命令: curl https://get.acme.sh | sh…...

MACOS上面C/C++获取网卡索引,索引获取网卡接口名

依赖函数: if_nametoindex IF名字 to IF索引 if_indextoname IF索引 to IF名字 MACOS 10.7 版本支援(就是2011年发不OSX的第一个面向用的系统版本) int GetInterfaceIndex(const ppp::string& ifrName) noexcept{if (ifrName.empt…...

解决SSH远程登录开饭板出现密码错误问题

输入“adduser Zhanggong回车”,使用adduser命令创建开发板用户名为Zhanggong 输入密码“123456” 输入密码“123456”...

什么时候用ref和reactive

在Vue 3中,ref和reactive都是用于创建响应式数据的工具,但它们的使用场景有所不同。 使用ref的情况: 基本数据类型:当你需要响应式地处理基本数据类型(如数字、字符串、布尔值)时,应该使用ref…...

Java实战:Spring Boot实现邮件发送服务

本文将详细介绍如何在Spring Boot应用程序中实现邮件发送服务。我们将探讨Spring Boot集成邮件发送服务的基本概念,以及如何使用Spring Boot和第三方邮件服务提供商来实现邮件发送。此外,我们将通过具体的示例来展示如何在Spring Boot中配置和使用邮件发…...

重磅!MongoDB推出Atlas Stream Processing公共预览版

日前,MongoDB宣布推出Atlas Stream Processing公共预览版。 在Atlas平台上有兴趣尝试这项功能的开发者都享有完全的访问权限,可前往“阅读原文”链接点击了解更多详细信息或立即开始使用。 开发者喜欢文档型数据库的灵活性、易用性以及Query API查询方…...

dell戴尔电脑灵越系列Inspiron 15 3520原厂Win11系统中文版/英文版

Dell戴尔笔记本灵越3520原装出厂Windows11系统包,恢复出厂开箱预装OEM系统 链接:https://pan.baidu.com/s/1mMOAnvXz5NCDO_KImHR5gQ?pwd3nvw 提取码:3nvw 原厂系统自带所有驱动、出厂主题壁纸、系统属性联机支持标志、Office办公软件、MyD…...

k8s(3)

目录 一.K8S的三种网络 flannel的三种模式: 在 node01 节点上操作: calico的 三种模式: flannel 与 calico 的区别? 二.CoreDNS 在所有 node 节点上操作: 在 master01 节点上操作: ​编辑 DNS 解析测试&#…...

Java多线程并发学习

一、Java 中用到的线程调度 1. 抢占式调度: 抢占式调度指的是每条线程执行的时间、线程的切换都由系统控制,系统控制指的是在系统某种运行机制下,可能每条线程都分同样的执行时间片,也可能是某些线程执行的时间片较长&#xff0…...

Curfew e-Pass 管理系统存在Sql注入漏洞 附源代码

免责声明:本文所涉及的信息安全技术知识仅供参考和学习之用,并不构成任何明示或暗示的保证。读者在使用本文提供的信息时,应自行判断其适用性,并承担由此产生的一切风险和责任。本文作者对于读者基于本文内容所做出的任何行为或决…...

记阿里云mysql丢表丢数据的实践记录

第一时间挂工单,联系工程师指引,现在回过来想,第一时间要确认发生时间。 1.通过性能视图(马后炮的总结,实际凭记忆恢复了三四次才找到数据) 2.先恢复数据 通过Navicat工具,结构同步&#xff0…...

自然语言转SQL的应用场景探索

自然语言转SQL的应用场景探索 1. 自然语言转sql有哪些解决方案2. 自然语言转sql有哪些应用场景3. 自然语言转sql在智能制造领域有哪些应用场景 1. 自然语言转sql有哪些解决方案 自然语言转SQL(NL2SQL)是一个涉及自然语言处理(NLP&#xff09…...

Python学习笔记——PySide6设计GUI应用之UI与逻辑分离

1、打开PySide6的UI设计工具pyside6-designer,设计一个主窗口,保存文件名为testwindow.ui 2、使用PySide6的RCC工具把testwindow.ui文件转换为testwindow_rc.py文件,此文件中有一个类Ui_MainWindow(包含各种控件对象)…...

【智能家居入门2】(MQTT协议、微信小程序、STM32、ONENET云平台)

此篇智能家居入门与前两篇类似,但是是使用MQTT协议接入ONENET云平台,实现微信小程序与下位机的通信,这里相较于使用http协议的那两篇博客,在主程序中添加了独立看门狗防止程序卡死和服务器掉线问题。后续还有使用MQTT协议连接MQTT…...

Java架构师之路九、设计模式:常见的设计模式,如单例模式、工厂模式、策略模式、桥接模式等

目录 常见的设计模式: 单例模式: 工厂模式: 策略模式: 桥接模式: 责任链模式: Java架构师之路八、安全技术:Web安全、网络安全、系统安全、数据安全等-CSDN博客Java架构师之路十、框架和工…...

【OpenAI官方课程】第三课:ChatGPT文本总结Summarizing

欢迎来到ChatGPT 开发人员提示工程课程(ChatGPT Prompt Engineering for Developers)!本课程将教您如何通过OpenAI API有效地利用大型语言模型(LLM)来创建强大的应用程序。 本课程由OpenAI 的Isa Fulford和 DeepLearn…...

跨越千年医学对话:用AI技术解锁中医古籍知识,构建能够精准问答的智能语言模型,成就专业级古籍解读助手(LLAMA)

介绍:首先在 Ziya-LLaMA-13B-V1基线模型的基础上加入中医教材、中医各类网站数据等语料库,训练出一个具有中医知识理解力的预训练语言模型(pre-trained model),之后在此基础上通过海量的中医古籍指令对话数据及通用指令…...

初识表及什么是数据表

一、了解表 1.1.概述 表是处理数据和建立关系型数据库及应用程序的基本单元,是构成数据库的基本元素之一,是数据库中数据组织并储存的单元,所有的数据都能以表格的形式组织,目的是可读性强。 1.2.表结构简述 一个表中包括行和列…...