爱搜-基于java的中文网络搜索引擎

项目简介

面对浩瀚的网络资源,搜索引擎为所有在网上寻找信息的用户提供了一个入口,毫不夸张的说,所有的用户都可以从搜索出发到达自己想去的网上任何一个地方。搜索引擎技术发展至今,逐渐趋于成熟,搜索结果也越来越好。有数据显示,大型的搜索引擎其索引量已达到TB级别,每秒需要承受高达百万次的查询,可见如今搜索引擎技术已经非常复杂。

本文研究的是基于因特网的搜索技术,在现有的搜索引擎原理的基础上,研究并编码实现了一种轻量级的中文网络搜索引擎(爱搜)。爱搜包含一整套网络搜索引擎技术,其中包括网络爬虫、中文分词与索引引擎和Web应用与搜索等。在具体实现的过程中,爱搜的搜索等待时间达到20s以上,经过研究发现问题在于索引效率和排序算法。于是首先改进了系统中的索引引擎,将索引的存储结构从关系型数据库改为非关系型数据库,同时采用缓存技术将倒排索引直接存储在内存中。接着改进了现有的网页结果排序算法,提出了基于Page Rank、TF-IDF和搜索统计等算法的混合排序算法Page Weight。排序算法改进后,搜索等待时间提高了一个量级。在搜索技术基础上,爱搜还包含了一些上层的应用。其中有网站分析,它能为站长提供网站流量监控和漏洞检测等工具。还有语音搜索,可以让用户通过“说”的方式去搜索,并且能“听”到搜索结果。
项目图示

爱搜-整体效果

开发人员

刘雷

项目演示

https://github.com/aishangzoulu

发表评论