Magento适配Mysql5.7的全文检索,支持中文分词

原创 2015年11月17日 17:08:52

Mysql5.7正式版发布了,其中一个新特性是新的全文索引插件n-gram parser支持中文的分词了。什么意思呢,就是说你可以只用mysql一种工具就实现以前必须引入第三方的Solr或者Sphinx等等全文检索引擎的情况,系统结构变的简洁了。

我这里分享下我自己花了2小时写的Magento模块,让你的Magento不需要Solr或Sphinx就能在搜索时支持中文分词了(前提:Mysql5.7大笑

https://github.com/walexer/Yli_Fulltext

效果图

可能有人会质疑mysql自带全文索引的性能,这个我没有测试过,借用InsideMySQL大神的原话,mysql自带全文索引的性能与solr在同一个数量级,并没有特别明显的差距,有兴趣的同学可以自己来做下对比测试。

PS:模块是在Magento1.9.2.1下测试的,不保证所有版本兼容

参考:http://mysqlserverteam.com/innodb%E5%85%A8%E6%96%87%E7%B4%A2%E5%BC%95%EF%BC%9An-gram-parser/

版权声明:本文为博主原创文章,未经博主允许不得转载。

深度解析MySQL 5.7之中文全文检索

InnoDB默认的全文索引parser非常合适于Latin,因为Latin是通过空格来分词的。但对于像中文,日文和韩文来说,没有这样的分隔符。一个词可以由多个字来组成,所以我们需要用不同的方式来处理。...

MySQL 5.7 深度解析: 中文全文检索

全文检索在MySQL里面很早就支持了,只不过一直以来只支持英文。缘由是他从来都使用空格来作为分词的分隔符,而对于中文来讲,显然用空格就不合适,需要针对中文语义进行分词。这不,从MySQL 5.7开始,...

MySQL 5.7 InnoDB中文全文索引测试

从MySQL 5.7.6开始,MySQL内置了ngram全文检索插件,用来支持中文分词,并且对MyISAM和InnoDB引擎有效。在全文索引中,ngram就是一段文字里面连续的n个字的序列。...

MySql5.7 InnoDB全文索引(针对中文搜索)

MySql5.7 建立全文索引1、ngram and MeCab full-text parser plugins全文检索在MySQL里面很早就支持了,只不过一直以来只支持英文。缘由是他从来都使用空格...

支持中文的MySQL 5.1+ 全文检索分词插件

经过不停的尝试和努力,以最新的 mysql 5.1.11-beta 为基础,制作的分词插件已经测试成功,现在发布如下。 由于 mysql 5.1.x 本身的架构作了修改,所以增加分词直接以插件形式方...
  • ahstudy
  • ahstudy
  • 2011年11月09日 15:18
  • 2130

Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词

什么是Sphinx Sphinx 是一个全文检索引擎,一般而言,Sphinx是一个独立的搜索引擎,意图为其他应用提供高速、低空间占用、高结果相关度的全文搜索功能。Sphinx可以非常容易的与SQL数...
  • tjcyjd
  • tjcyjd
  • 2014年07月08日 16:03
  • 8796

MySql模糊匹配、全文检索、中文分词相关

因为要做一个对数据库进行简单匹配查询的搜索框,所以对 MySql 进行关键字匹配查询作了一些了解。 书上给出的匹配查询一般是这两种。 (1)精确匹配,使用等号(=). 例如:select...

MySQL使用全文索引(fulltext index)

1.创建全文索引(FullText index)        旧版的MySQL的全文索引只能用在MyISAM表格的char、varchar和text的字段上。         不过新版的...

MYSQ LFULLTEXT索引实现全文搜索

使用FULLTEXT索引 MySQL具备全文搜索的能力。全文搜索引擎可以在不使用模板匹配操作的情况下查找单词或短语。全文搜索分为3种模式,如下所示。 自然语言模式。把搜索字符串解释为一系列单词并查找...

mysql 5.7.14 整合sphinx 2.2.11编译 插件式热安装

1、系统centos 7、mysql5.7.14,sphinx-2.2.11 下载mysql5.7.14源码:http://cdn.mysql.com/archives/mysql-5.7/mysql...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Magento适配Mysql5.7的全文检索,支持中文分词
举报原因:
原因补充:

(最多只允许输入30个字)