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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

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/

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
存储 NoSQL 关系型数据库
PostgreSQL列存扩展hydra简单测试
Hydra是一款PostgreSQL的扩展,为PostgreSQL增加了列存引擎,使得PostgreSQL的olap性能大幅提升,本文介绍Hydra基本的使用方法。
695 0
|
7月前
|
SQL 关系型数据库 MySQL
功能强大的PostgreSQL没有MySQL流行的10个原因
本篇文章总结了为什么功能强大的PostgreSQL没有像MySQL一样流行的10个原因。玖章算术CEO叶正盛从产品功能、技术架构、生态、品牌商业等多个方面进行了分析,并指出了MySQL在流行度上的优势。文章还讨论了数据库在不同领域的竞争力和展望,并提到了PostgreSQL在中国信创产业发展中可能迎来新的机会。总体而言,这篇文章提供了关于MySQL和PostgreSQL的综合比较和评估。
83 0
功能强大的PostgreSQL没有MySQL流行的10个原因
|
11月前
|
关系型数据库 测试技术 数据库
【全文搜索】全文搜索 PostgreSQL 或 ElasticSearch
【全文搜索】全文搜索 PostgreSQL 或 ElasticSearch
|
SQL 存储 自然语言处理
sphinx(一)全文检索引擎sphinx
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用 程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL 也设计了一个存储引擎插件。
550 0
sphinx(一)全文检索引擎sphinx
|
SQL 缓存 自然语言处理
mysql中文全文检索从入门到放弃
like全匹配模糊查询不能使用索引一直是sql查询的一个棘手的问题,那么mysql的全文检索真的能解决这个问题吗?
1363 0
mysql中文全文检索从入门到放弃
|
存储 SQL 自然语言处理
sphinx全文检索引擎
sphinx全文检索引擎
109 0
|
SQL 存储 JSON
【MySQL 文档翻译】理解查询计划
MySQL 优化器会根据 SQL 语句中的表, 列, 索引和 WHERE 子句中的条件的详细信息, 使用许多技术来有效地执行 SQL 查询. 可以在不读取所有行的情况下对一个巨大的表执行查询; 可以在不比较每个行组合的情况下执行涉及多个表的连接. 优化器选择执行最有效查询的一组操作称为 `查询执行计划` (query execution plan), 也称为 `EXPLAIN plan`. 你的目标是认识到 EXPLAIN 计划表明查询已优化好, 如果发现一些低效的操作, 可以通过学习 SQL 语法和索引技术来改进查询计划.
79 0
|
存储 索引
一个简单的配置实现es全文检索支持
在es的使用过程中,全文搜索属于一个常见的场景,特别是当我们将es作为日志存储检索来使用时,根据关键字查询对应的日志信息,可以怎么处理呢?
424 0
|
SQL NoSQL 搜索推荐
上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB
没工夫分库分表,如何快速实现深度分页~
1968 0
上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB
|
SQL 自然语言处理 关系型数据库
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 12 章 全文搜索_12.6. 词典
12.6. 词典 12.6.1. 停用词 12.6.2. 简单词典 12.6.3. 同义词词典 12.6.4. 分类词典 12.6.5. Ispell 词典 12.6.6. Snowball 词典 词典被用来消除不被搜索考虑的词(stop words)、并被用来正规化词这样同一个词的不同派生形式将会匹配。
1411 0

热门文章

最新文章