美文网首页
迅搜创建数据库索引

迅搜创建数据库索引

作者: KavinDotG | 来源:发表于2017-09-05 10:53 被阅读0次

    1、Ubuntu环境下安装:
    1)LNMP安装:参考https://lnmp.org/install.html
    #wget -c http://mirrors.duapp.com/lnmp/lnmp1.3-full.tar.gz && tar zxf lnmp1.3-full.tar.gz && cd lnmp1.3-full && ./install.sh lnmp
    mysql的root密码设置为mysql,选择mysql 5.7.11和php7.0.7安装;
    安装了两个小时多,提示Install lnmp V1.3 completed! enjoy it.不容易啊!
    2)下载解压:
    #wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2
    #tar -xjf xunsearch-full-latest.tar.bz2
    3)安装:
    #cd xunsearch-full-1.4.10/
    #sh setup.sh
    提示输入安装目录,这里设为/home/xunsearch
    4)启动:
    #cd /home/xunsearch
    #bin/xs-ctl.sh restart
    5)检测PHP-SDK运行环境:
    #cd /home/xunsearch
    #sdk/php/util/RequiredCheck.php
    如果是GBK环境在最后加上 -c GBK,如果php不是在默认安装目录()下则切换到php安装目录下执行;
    6)关闭和删除:
    #cd /home/xunsearch
    #bin/xs-ctl.sh faststop 关闭
    #rm -rf /home/xunsearch 删除安装目录即可

    2、Demo体验
    1)项目配置文件:
    #cd /home/xunsearch
    #cat sdk/php/app/demo.ini
    配置文件默认连接本地的 8383、8384端口并使用UTF-8编码,包含四个字段:pid,subject,message,chrono;
    2)填充索引数据:
    sdk/php/util/Indexer.php管理索引数据导入,可以导入mysql数据表、json格式以及制定分隔符的CSV文件;
    下面命令设置导入数据csv格式并清空demo库内当前的索引数据
    #sdk/php/util/Indexer.php --source=csv --clean demo
    输入:
    1,关于 xunsearch 的 DEMO 项目测试,项目测试是一个很有意思的行为!,1314336158
    2,测试第二篇,这里是第二篇文章的内容,1314336160
    3,项目测试第三篇,俗话说,无三不成礼,所以就有了第三篇,1314336168
    回车按ctrl+D退出;

    3)测试搜索:

    cd /home/xunsearch

    sdk/php/util/Quest.php demo 搜索内容

    每个搜索后的关键词系统都会记录下来进行分析,并保存在日志中用于统计热门搜索、搜索建议、相关搜索等。
    默认情况系统会每 2 小时进行一次更新日志,可使用以下指令进行强制刷新。

    sdk/php/util/Indexer.php --flush-log demo

    复杂搜索:#sdk/php/util/Quest.php demo subject:内容 #sdk/php/util/Quest.php demo pid:2

    sdk/php/util/Quest.php demo "第三篇 OR pid:1"

    日志相关的搜索:其中--suggest 是搜索建议,当用户敲入少许汉字或字母时给出相应的关键词建议(常用于搜索输入框下拉自动提示),而 --related 表示相关搜索、--hot 表示热门搜索、 --correct 表示搜索纠错。

    sdk/php/util/Quest.php --hot demo

    sdk/php/util/Quest.php --related demo 项目 #sdk/php/util/Quest.php --correct demo yunsearch

    sdk/PHP/util/Quest.php --suggest demo 项

    3、建立MySQL索引库
    1)导入CSV文件到mysql

    mysql -u root -p

    密码:mysql

    create database xunsearch;

    create table csv(pid varchar(50),subject varchar(100),message varchar(200),chrono varchar(20));

    把csv文件放在/home/xunsearch/data目录下

    load data infile '/home/xunsearch/data/demo.csv' replace into table csv CHARACTER SET gb2312 fields terminated by ',';

    2)导入mysql到索引库
    按照这个格式--source=mysql://[user[:passwd]@]host/dbname[/table]

    sdk/php/util/Indexer.php --source=mysql://root:mysql@localhost/xunsearch/csv --clean demo

    3)搜索

    sdk/php/util/Quest.php demo 内容

    sdk/php/util/Quest.php --hot demo

    相关文章

      网友评论

          本文标题:迅搜创建数据库索引

          本文链接:https://www.haomeiwen.com/subject/ztlujxtx.html