如何本地搭建一个开源搜索引擎即可开源project引擎
优采云 发布时间: 2021-07-12 01:12如何本地搭建一个开源搜索引擎即可开源project引擎
假设有一堆单词和一堆内容。现在我想知道:
利用上述词与词、词与内容、内容与内容的关联,优化页面的推荐信息,让用户和搜索引擎获得更好的浏览体验。
这些相关信息的推荐可以通过搜索实现。无论推荐信息是硬编码、实时查询、还是缓存,前提是有搜索引擎。
如何在本地构建搜索引擎?
直接设置开源搜索引擎即可
开源搜索引擎有哪些?
/project/tag/130/search-engine
这个渣用到了下面两个
相比之下,推荐使用迅搜。
因为Coreseek很多年没更新了,我觉得写文档的人可能没学好语言
迅搜一直在更新,用的人很多。更容易找到问题的解决方案。另外,后端基于C/C++开发。总觉得和C有关的性能更好一些。所以下面十分钟搭建本地搜索引擎教程,以xunsearch为例。
xunsearch 官方主页在:/
10 分钟构建本地搜索引擎示例安装
这个渣很久以前就装过了,步骤极其简单,按照这里的官方文档就可以了。
启动xunsearch服务
本渣的xunsearch安装在/Users/sunjian/目录下,执行:
/Users/sunjian/xunsearch/bin/xs-ctl.sh start
将/Users/sunjian/替换为对应的xunsearch安装路径,执行后即可启动xunsearch服务
创建项目配置文件
在/xunsearch/asdk/php/app/目录下创建项目配置文件,文件名一般与项目名一致,以.ini结尾
project.name:项目名称
project.default_charset:编码,通常为 utf-8
server.index 和 server.search 是服务端口,直接粘贴即可
[xxx]和type下面是要索引的字段名称和对应的数据类型。
比如我抓了一堆微信公众号数据放到mysql中,如下:
希望能通过关键词搜索这些公众号内容的标题或正文,找出与这个词相关的内容,然后我需要在存储标题和正文的字段上创建索引,以及id字段是每条记录的唯一标识符是mysql中的主键,所以也需要加到索引中。
然后在xunsearch配置文件中,需要写3个字段用来创建索引:id title和contont
字段名写在[]中,对应mysql中的字段名
type 是该字段对应的数据类型。这个数据类型不是mysql中的数据类型,而是xunsearch对应的数据类型。有以下几种:
显然,title data对应的type是title,body text对应的type是body。
ps:配置文件文档:/doc/php/guide/ini.guide
新索引
ps:索引操作说明文档
/doc/php/guide/util.indexer
测试搜索
ps:搜索测试文档:/doc/php/guide/util.quest
在web目录下创建xunsearch前端搜索页面骨架
ps:生成搜索代码文档:/doc/php/guide/util.skel
本地开启PHP环境
对于MAC本地,打开/etc/apache2/httpd.conf,这一行将被取消注释
重启 Apache:
sudo apachectl restart
ps:如果您已经在本地开启了PHP环境,请跳过这一步。如果是win系统请百度相应的PHP环境打开方法
浏览器打开本地localhost下生成的xunsearch前端搜索页面。
词的相关内容:
与内容相关的内容:
================================================ ====
知识星球-->以后会有福利,比如一段会写*敏*感*词*句子的Python代码
微信公众号---->右下角