coreseek

mmseg 同义词/复合词自定义

走远了吗. 提交于 2019-12-07 12:04:09
Linux mmseg 同义词/复合分词处理: 其基本使用状况为: 词库包含:     南京西路、南京、西路 索引时:     文本中的“南京西路”会被同时索引为以上三者 查询时:     输入南京西路,可以直接匹配南京西路,而不匹配南京或者西路;     输入南京或者西路,也可以搜索到南京西路 用法: 1. 处理unigram.txt生成同义词库文件 注*:在mmseg安装目录 /mmseg3/etc/ 下运行 $ python (加安装之前coreseek目录路径)mmseg-3.2.14(源代码=>是解压后的coreseek 目录下)/script/build_thesaurus.py unigram.txt > thesaurus.txt //下载后的压缩包自定义存放 $ python /usr/local/src/coreseek-4.1-beta/mmseg-3.2.14/script/build_thesaurus.py unigram.txt > thesaurus.txt //我自己的存放目录 *thesaurus.txt文件的格式如下: 南京西路 -南京,西路, 张三丰 -太极宗师,武当祖师, 2. 生成同义词词典 注*:在mmseg安装目录 /mmseg3/etc/ 下运行 mmseg -t thesaurus.txt //mmseg 在安装后的mmseg3

打造自己的coreseek分词词库

廉价感情. 提交于 2019-12-07 12:03:44
下面给大家介绍一下如何打造自己的coreseek分词词库。 coreseek自身带的词库不是很大,直接使用它分词可能会返回大量没用结果。要想搜索结果准确打造一个专门的分词 词库必不可少。   i. 首先到搜狗http://pinyin#sogou#com/dict/下载你要的词库   ii. 因为下载回来的词库不是文本文件我们不能直接使用,所以要先转换成文本文件。网上找一个搜狗转 google的小工具,用它把你下载的全部词库转成文本文件。合并为一个文件命名为words.txt。文件要用utf8编码 保存,如果想直接使用我下面的工具进行转换的话文件名一定要是words.txt。如果你想自己转换请参考官网上的方 法http://www#coreseek#cn/opensource/mmseg/   iii. 现在我们有了一个初步的词库,但这个词库还不能直接使用,要再整理并转换coreseek使用的格式才行。 这里我提供一个自己编写的小程序方便转换。 源程序如下: /** Last edit 2012-8-11 Copyrigh@ www.4ji.cn **/ ini_set('max_execution_time','6000'); $buffer=ini_get('output_buffering'); if($buffer)ob_end_flush(); echo '处理新词库..

coreseek 基与Sphinx 的全文索引

做~自己de王妃 提交于 2019-12-06 17:01:33
假设有两张那个表,分别为articles,article_photos两张表。搜索的时候,要匹配articles.title、articles.intro、article_photos.caption这三个字段。 PHP页面 header("content-type:text/html;charset=utf8"); include './sphinxapi.php'; //包含sphinxapi类 $sphinx = new SphinxClient(); //实例化 $sphinx->SetServer('localhost', 9312);//链接 $res = $sphinx->Query("暴动", "*");//查询的字段第二参数是你配置文件里面写得规则这里是*就会匹配所有规则 echo "<pre>"; print_r($res['matches']); coreseek.conf 内容配置如下 #源定义 #mysql类只实现连接数据库 source mysql { type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = nextmgz_archive sql_port = 3306 sql_query_pre = SET NAMES utf8 # 命令行查询时,设置正确的字符集

sphinx中文分词搜索coreseek windows下安装与基本使用简介

狂风中的少年 提交于 2019-12-06 04:06:59
这是半年前没有对外写的文章,现在拿出来分享下。可能会有一些不正确或不严谨的地方,某些语言可能比较轻浮,请见谅。 首先说明一下coreseek其实就是基于sphinx的中文分词版本,sphinx本身并没有提供中文分词功能,需要自行安装中文词库比较麻烦,coreseek提供了中文分词功能,提供了完整的官方中文使用文档,并且在使用上和官方的sphinx并没有差别。以 coreseek-4.1 版本为例 下载地址 http://www.coreseek.cn/news/14/54/ 帮助手册 http://www.coreseek.cn/products-install/#doc_cn 下面开始coreseek的安装 安装过程很简单,下载 coreseek-4.1-win32.zip ,解压至某一个文件夹,这里假设放在d:\coreseek下,双击打开test.cmd进行测试,会出来一串命令行的提示信息,留意提示信息,如果没有提示错误就算安装完成 安装后,先别急着怎么使用,首先要配置好文档,解缩包中有测试文件这里测试也略,教程尽量简单点(其实是我懒。。) 配置文件的位置可以放在任何地方,不过建议就放在d:\coreseek\bin\的目录好了,d:\coreseek\etc\目录下提供了好多配置的参考,我们把csft_mysql.conf复制至d:\coreseek\bin\下

Sphinx+PHP搜索服务

╄→尐↘猪︶ㄣ 提交于 2019-12-06 04:06:48
随着自己 电影网站 资源逐渐增多,增加电影资源搜索服务成为必然。直接操作数据库的搜索,IO口请求增多减低了搜索性能。之前项目中有sphinx的使用基础,加之支持中文检索服务,最后决定采用基于sphinx的Coreseek搜索服务。 下载安装步骤【本人采用 linux环境下 4.1版本,系统支持mysql和xml数据源】: coreseek下载地址 ,下载 coreseek-4.1-beta.tar.gz 包 解压gz包,tar zxvf coreseek-4.1-beta.tar.gz 编译安装 mmseg【中文分词包】 ./bootstrap ./configure --prefix=/usr/local/mmseg3 make && make install 编译安装 coreseek sh buildconf.sh #输出的warning信息可以忽略,如果出现error则需要解决 ./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql #with-mmseg

Coreseek 4.1 win32设置

早过忘川 提交于 2019-12-05 08:10:54
mysql自带有fulltext索引,但是只限于英文字符,如果我们要对含有中文的大文本进行全文模糊索引,自带的 concat()like。。 是满足不了我们的速度需求的, 特别是当我们拥有大量数据,同时需要进行全文模糊索引的时候,如果只是使用like ,10W条的数据搜索时间就有15S!这是绝对不能容忍的,所以这个时侯就可以考虑使用 coreseek, Coreseek 是一款基于Sphinx的开源检索引擎,支持Tb级的全文数据索引,专门为中文用户提供免费开源的中文全文检索系统.具体软件可以到http://www.coreseek.cn/下载,本次主要是记录一下coreseek的简单设置。 一:下载 首先下载coreseek-4.1 win32版本的解压包,解压到随便一个盘符的目录下面 二:修改配置文件 在 X:\....\coreseek-4.1-win32\etc 文件夹下面是一些数据源的配置文件参考信息,此次在这里只说配置mysql数据源的。 首先复制一份 csft_mysql.conf 并重命名为(随意).conf 这里命名为 mysql.conf做参考. 打开mysql.conf , 在源定义里配置源的位置和类型 source mysql { type = mysql sql_host = localhost sql_user = root sql_pass = sql

开源中文检索软件CoreSeek之初体验

守給你的承諾、 提交于 2019-12-04 08:10:49
国人开发的CoreSeek实际是上基于Sphinx的定制版,使用mmseg进行中文分词并实现中文搜索。 官网提供了详细的安装说明和 CentOS5 的rpm安装包,由于笔者需要在CentOS 6 x86_64上运行,得自行打包。笔者已完成源码包的封装: mmseg 、 coreseek 。 相对 Sphinx的安装 ,CoreSeek需要安装中文分词库mmseg。测试方法就是在示例数据库里插入一些中文字符串: 然后重建索引就可以自动分词,并查询中文了: 特别需要注意的就是,要统一字符编码。笔者统一使用UTF-8,示例MySQL数据库对应表的属性是: CREATE TABLE `documents` ( `id` int(11) NOT NULL AUTO_INCREMENT, `group_id` int(11) NOT NULL, `group_id2` int(11) NOT NULL, `date_added` datetime NOT NULL, `title` varchar(255) COLLATE utf8_unicode_ci NOT NULL, `content` text COLLATE utf8_unicode_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT

安装sphinx、coreseek

霸气de小男生 提交于 2019-12-03 05:48:03
wget http://sphinxsearch.com/files/sphinx-2.2.10-release.tar.gz tar -zxvf sphinx-2.2.10-release.tar.gz cd sphinx-2.2.10-release sh configure --prefix=/usr/local/sphinx make && make install wget http://www.coreseek.cn/uploads/csft/4.0/coreseek-4.1-beta.tar.gz tar -zxvf coreseek-4.1-beta.tar.gz cd coreseek-4.1-beta cd mmseg-3.2.14 sh configure --prefix=/usr/local/mmseg 如果报错config.status: error: cannot find input file: src/Makefile.in执行以下命令 aclocal libtoolize --force automake --add-missing autoconf autoheader make clean make && make install cd .. cd csft-4.1 sh buildconf.sh ./configure --prefix=

discuz论坛配置开启Sphinx全文搜索

孤人 提交于 2019-12-03 05:47:36
技术简介: Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。 Sphinx 单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建 如果用到sphinx,全文索引交给sphinx来做,sphinx返回含有该word的ID号,然后用该ID号直接去数据库准确定位那些数据,整个过程如下图:一次只需几十秒。 因为sphinx默认不支持中文索引及检索,而coreseek基于sphinx开发了coreseek全文检索服务器,它提供了为sphinx设计的中文分词包libmmseg包含mmseg中文分词,是目前用的最多的sphinx中文检索。在没有sphinx之前,mysql数据库要对海量的文章中的词进行全文索引,一般用的语句例如:SELECT *** WHERE *** LIKE '%word%';这样的LIKE查询,并且再结合通配符%

Windows下Coreseek4.1环境搭建及运行(提供压缩包地址)

匿名 (未验证) 提交于 2019-12-03 00:43:02
很遗憾,coreseek官网因未知原因打不开了。貌似也不是短时间的事情,难道是开发者放弃coreseek了? 闲话少说,笔者在搭建完sphinx后,因为中文分词的原因总觉得美中不足,于是千方百计的找到了coreseek的win32安装包。 安装包地址 下载后解压到相应目录,我这里安装的是在F:/coreseek下。so下面凡是涉及到路径的地方一定要注意修改哦! 下载解压后,把 F:/coreseek/etc/csft_mysql.conf 这个 文件复制一份到F:/coreseek/bin下面,并且命名为coreseek.conf,然后修改配置文件里面的相关信息。相对于sphinx的配置文件,coreseek.conf还是简单易懂的。 #MySQL数据源配置,详情请查看:http://www.coreseek.cn/products-install/mysql/ #请先将var/test/documents.sql导入数据库,并配置好以下的MySQL用户密码数据库 #源定义 source mysql { } #index定义 index mysql { } #全局index定义 indexer { } #searchd服务定义 searchd { } 准备数据库: DROP TABLE IF EXISTS documents; CREATE TABLE documents ( id