搜索引擎简介

搜索引擎架构

整个搜索引擎分为三个系统

  1. 爬虫系统

  2. 索引系统

  3. 线上搜素服务

爬虫系统

爬虫分为两个阶段:

  1. 第一阶段:根据目标网站的列表页,爬对应的文档 URL

  2. 第二阶段:根据文档 URL,下载文档内容

触发器:

  • 定时任务触发

  • 消息触发

  • 管理后台手动触发某一个爬虫任务

文件服务器:

  • 存储图片和视频文件

索引系统

索引系统主要数据依赖:内容库和文件服务

依赖服务:

  1. 分词服务

  2. NLP 服务

    1. 同义词扩展

    2. 生成文档摘要

    3. 抽取文档标签

    4. 图片、文本、视频生成向量

    5. ....

  3. PageRank 服务

在线搜索服务

在线服务的主要模块:

  1. Query 理解

  2. 召回

  3. 排序

当欠召回时:

  1. 在线服务会将当前 Query 发送给离线索引系统的消息队列,让其为该 Query 完善索引数据。

  2. 索引系统收到消息后,会使用第三方搜索引擎进行检索,并且将检索的内容解析出 URL,发给爬虫系统,进行数据的补充。

  3. 如果第三方搜索引擎也没有检索到数据,可以通过 LLM 进行生成内容,将生成的内容写入 ES 索引

相关推荐
小马爱打代码2 小时前
Elasticsearch简介与实操
大数据·elasticsearch·搜索引擎
java1234_小锋11 小时前
Elasticsearch是如何实现Master选举的?
大数据·elasticsearch·搜索引擎
AiFlutter13 小时前
Java实现简单的搜索引擎
java·搜索引擎·mybatis
梦幻通灵17 小时前
ES分词环境实战
大数据·elasticsearch·搜索引擎
Elastic 中国社区官方博客17 小时前
Elasticsearch 中的热点以及如何使用 AutoOps 解决它们
大数据·运维·elasticsearch·搜索引擎·全文检索
infiniteWei20 小时前
【Lucene】搜索引擎和文档相关性评分 BM25 算法的工作原理
算法·搜索引擎·lucene
Elastic 中国社区官方博客2 天前
Elasticsearch:如何部署文本嵌入模型并将其用于语义搜索
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
infiniteWei2 天前
【Lucene】详解倒排表的结构,如何实现词典与文档的映射关系
搜索引擎·全文检索·lucene
Elastic 中国社区官方博客3 天前
使用 Elasticsearch 构建食谱搜索(二)
大数据·人工智能·python·elasticsearch·搜索引擎·ai
不会吉他的肌肉男不是好的挨踢男3 天前
Elasticsearch Windows版的安装及启动
大数据·elasticsearch·搜索引擎·spring cloud·全文检索