资讯专栏INFORMATION COLUMN

全文搜索,迅搜(Xunsearch)使用心得

pkwenda / 2777人阅读

摘要:最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。

最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。文档看了半天,愣是没看懂;看了两天才看出来点东西,然后跟着文档动手测试,有点理解了,总结一下 ,希望能帮助以后用到的phper.

一,安装
wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2 
tar -xjf xunsearch-full-latest.tar.bz2
cd xunsearch-full-1.3.0/
sh setup.sh

安装过程中会提示输入安装目录(如:/usr/local/xunsearch),或选默认的;如果提示缺少什么软件,则根据提示安装就行。

二,启动

安装完之后,进入到安装目录执行

cd /usr/local/xunsearch

执行

bin/xs-ctl.sh restart

强烈建议您将此命令添加到开机启动脚本中,以便每次服务器重启后能自动启动搜索服务程序, 在 Linux 系统中您可以将脚本指令写进 /etc/rc.local 即可。

三,检测php-sdk运行条件,查看是否支持。
/usr/local/xunsearch/sdk/php/util/RequiredCheck.php

四,将mysql内容导入到迅搜索引库

在/usr/local/xunsearch/sdk/php/app目录下有个demo.ini,也可以自己新建或重命名。这就是一个索引库,打开后如图

里面的id,title,intro就是要导入的数据库里某个表的字段,每个字段下面的type表示迅搜里的字段类型,有以下几种:


根据实际情况选择。 假设现在有个商品表goods,在使用迅搜搜索商品时,需要先把goods表要搜索的字段导入到demo.ini中

/usr/local/xunsearch/sdk/php/util/Indexer.php --rebuild --source=mysql://root:password@localhost/dbname --sql="SELECT id,title,intro FROM goods" --project=demo
五,编写php代码进行测试
 require_once "/usr/local/xunsearch/sdk/php/lib/XS.php";
 $xs = new XS("demo");   // 自动使用 /usr/local/xunsearch/sdk/php/app/demo.ini 作项目配置文件
 $docs = $xs->search->search("山地车"); //搜索山地车
 //获取搜索结果
    $result=array();
    foreach ($docs as $doc)
    {
        $arr=array();
        $arr["id"]=$doc->id;
        $arr["title"]=$xs->search->highlight($doc->title);
        $arr["intro"]=$doc->intro;
        $result[]=$arr;
    }
    print_r($result);

上面就是最简单的单表搜索,但既然是全文索引,那就是可以搜索多个表,至于多个表怎么使用,有人说将多个表的内容保存在一个临时表内,然后将临时表的信息导入到索引库,不过还没试过。查了下,可以使用mysql的视图来解决。详细的文档可以参考官网的 http://www.xunsearch.com/doc/...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/40580.html

相关文章

  • 全文搜索迅搜(Xunsearch)使用心得

    摘要:最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。 最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。文档看了半天,愣是没看懂;看了两天才看出来点东西,然后跟着文档动手测试,有点理解了,总结一下 ,希望能帮助以后用到的phper. 一,安装 wget http://www.xunsearch.com/download/xunsearch-full...

    miya 评论0 收藏0
  • 全文搜索迅搜(Xunsearch)使用心得

    摘要:最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。 最近公司的项目需要全文搜索的功能,网上有人说用迅搜可以,特地研究了下。文档看了半天,愣是没看懂;看了两天才看出来点东西,然后跟着文档动手测试,有点理解了,总结一下 ,希望能帮助以后用到的phper. 一,安装 wget http://www.xunsearch.com/download/xunsearch-full...

    Leo_chen 评论0 收藏0
  • 简单几步搭建一个支持自定义数据的搜索引擎

    摘要:引言相信很多朋友们也想拥有一个属于自己的,可自定义数据的搜索引擎。旨在帮助一般开发者针对既有的海量数据,快速而方便地建立自己的全文搜索引擎。引言相信很多朋友们也想拥有一个属于自己的,可自定义数据的搜索引擎。可是网上的教程大多集中于利用SearX实现聚合各个公共搜索引擎的数据源,而不是用自己爬取的数据作为数据源。 而提到了如何利用自有数据建立搜索引擎的教程大多是基于ElasticSerach,...

    Tecode 评论0 收藏0
  • Laravel xunsearch 全文搜索

    摘要:开始之前强烈推荐先浏览一下的官方文档简介是一个高性能全功能的全文检索解决方案。旨在帮助一般开发者针对既有的海量数据,快速而方便地建立自己的全文搜索引擎。一定要重建索引。否则不会报错,但是搜索结果会不正确。 开始之前强烈推荐先浏览一下 xunsearch 的官方文档 Xunsearch简介 Xunsearch 是一个高性能、全功能的全文检索解决方案。Xunsearch 旨在帮助一般开发者...

    gecko23 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<