搜索引擎简介

搜索引擎架构

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

  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 索引

相关推荐
uyeonashi5 小时前
Boost搜索引擎测试报告
功能测试·selenium·搜索引擎
洛阳纸贵1 天前
JAVA高级工程师--Elasticsearch安装以及内置分词器、IK分词器
大数据·elasticsearch·搜索引擎
历程里程碑1 天前
子串----和为K的子数组
大数据·python·算法·leetcode·elasticsearch·搜索引擎·哈希算法
Elastic 中国社区官方博客1 天前
使用 LangGraph 和 Elasticsearch 构建 人机协同( HITL )AI agent
大数据·人工智能·elasticsearch·搜索引擎·ai·机器人·全文检索
YXWik61 天前
openManus更改搜索方式Google改为国内搜索引擎
搜索引擎
历程里程碑2 天前
滑动窗口-----找到所有字母异位词
大数据·python·算法·elasticsearch·搜索引擎·flask·tornado
历程里程碑2 天前
Linux 13 进程前言:冯诺依曼体系结构和操作系统
大数据·linux·运维·服务器·算法·elasticsearch·搜索引擎
Elastic 中国社区官方博客2 天前
Elasticsearch:使用 Elastic Workflows 构建自动化 - 9.3
大数据·运维·人工智能·elasticsearch·搜索引擎·自动化·全文检索
HIT_Weston2 天前
114、【Ubuntu】【Hugo】搭建私人博客:搜索样式(二)
javascript·ubuntu·搜索引擎
_周游2 天前
Java8 API 文档搜索引擎_1. 项目简介与模块划分
java·搜索引擎·servlet·maven·intellij-idea