搜索引擎项目

C++基于正倒排索引的Boost搜索引擎 1

Boost搜索引擎项目

1.项目背景

2.搜索引擎的相关宏观原理

3.搜索引擎技术栈和项目环境

4.正排索引 VS 倒排索引 - 搜索引擎具体原理

5.编写数据去标签与数据清洗的模块Parser

6.编写建立索引的模块Index

7.编写搜索引擎模块

8.编写http_server模块

9.编写前端模块

项目背景

-- 公司:百度,搜狗,360............==>自己不可能实现

-- 站内搜索: cplusplus.com..... ==>搜索的数据更垂直,数据量小

eg.网页搜索

++网页title (可点击跳转)--超链接++

网页的摘要描述

即将跳转的网址

百度可以直接出售关键字 ==>竞价排名 -- 广告

项目宏观原理

客户端 pc/手机---------------------------server(服务器)------------------------------------全 网

浏览器 searcher(服务软件)

http请求的方式进行搜索任务 爬虫 <------------

------->

通过GET的方式上传搜索关键字

< ------------

拼接多个网页的title+desc+url,构建一个新网页,返回网络用户

客户端 pc/手机,server(服务器),全 网

浏览器在客户端中,内存与data/*.html在server(服务器)中,searcher(服务软件)在内存中,

浏览器,经过http请求的方式进行搜索任务,通过get的方式上传搜索关键字,到服务软件

服务软件需要绑定端口,检索,索引得到相关html

服务软件,拼接多个网页的title+desc+url,构建一个新的网页,返回网络用户,浏览器

从全网大量抓取网页,通过爬虫程序抓取到 data/*.html中保存

在data/*.html中进行 1.去标签&&数据清洗 2.建立索引 --->加速查找

搜索引擎技术栈与项目环境

技术栈:

C/C++ C++11 STL 准标准库Boost(文件处理) Jsoncpp(数据交换) cppjieba(切分词) cpphttplib(开源库,http服务器)

(前端) html5 CSS JS JQuery Ajax(发送请求)

项目环境:

Centos7云服务器 vim/gcc(g++)/Makefile vs2019/vs code

相关推荐
小雨下雨的雨3 小时前
井字棋AI机器人实现详解 - Minimax算法实战-鸿蒙PC Electron框架完成
前端·人工智能·算法·华为·electron·鸿蒙
ZC跨境爬虫7 小时前
跟着 MDN 学JavaScript day_7:数学运算与逻辑判断实战测试
开发语言·前端·javascript·学习·ecmascript
fangdengfu1237 小时前
ES分析系统各个服务日志占用量
java·前端·elasticsearch
跨境数据猎手8 小时前
大数据在电商行业的应用
大数据·运维·爬虫
JustHappy9 小时前
古法编程秘籍(六):程序到底是怎么跑起来的?从 IO 到中断,一次讲明白
前端·后端·全栈
绿算技术9 小时前
万卡推理集群存储选型分析:从核心架构到应用视角
大数据·科技·算法·架构
HYCS9 小时前
用pixi.js实现fabric.js(六):从线性代数的角度理解编辑器交互
前端·javascript·canvas
卷帘依旧9 小时前
useImperativeHandle的作用
前端
Qt程序员9 小时前
Linux RCU 原理与应用
linux·c++·内核·linux内核·rcu