InnoDB全文索引停止词(stopwords)设计的缺陷

全文索引FULLTEXT首次运用在了InnoDB引擎上,最近在研究过程中发现停止词(stopwords)设计的缺陷。

何为停止词?就是指不想用户在搜索的时候能搜到‘李洪志大师’、‘法轮大法’等词汇,需要事先定义好停止词,这样就不会被搜索到。但设计的缺陷是,你必须事先就定义好,假如日后还想再定义停止词‘活摘器官’,必须重建一次全文索引,如果表很大的话,相当耗费时间。

下面我们看例子,截图如下:

结论:官方MySQL5.6.16和MariaDB10.0.10均有此缺陷,希望在后面的版本里,可以做调整。

InnoDB全文索引停止词(stopwords)设计的缺陷

时间: 2024-07-28 12:56:25

InnoDB全文索引停止词(stopwords)设计的缺陷的相关文章

29_全文索引与停止词

关于全文索引的用法 macth (全文索引名) against ("要查找的单词"); 关于全文索引的停止词 全文索引不针对非常频繁的词做索引, 如this,you,my等 全文索引:在mysql的默认情况下,对于中文意义不大 因为英文有空格,标点符号来拆成单词,进而对单词进行索引, 而对于中文,没有空格来隔开单词,mysql无法识别每个中文词. create table artical( id int primary key auto_increment, title varchar

elasticsearch ik分词插件的扩展字典和扩展停止词字典用法

本文引自 https://blog.csdn.net/caideb/article/details/81632154 cnblog的排版好看很多,所以在这里建一篇分享博客. ----------------------------------------------------------------------------------------------- 扩展字典中的词会被筛选出来,扩展停止词中的词会被过滤掉 1.没有加入扩展字典 停止词字典用法 1) ik分词器 [[email pro

InnoDB全文索引基础

全文索引: 官方文档: https://dev.mysql.com/doc/refman/5.6/en/fulltext-search.html 参考: http://blog.csdn.net/u011734144/article/details/52817766 http://www.cnblogs.com/olinux/p/5169282.html 全文检索通常使用的是倒排索引. 内容详见姜大神的InnoDB存储引擎2 书上 Page231~Page248 InnoDB存储引擎从1.2.x

MySQL 5.7 innodb全文索引

由于模糊搜索的需求越来越多,所以在从库上创建全文索引来应付各种搜索需求.现在创建一个用户名的全文搜索,全表大小为1100W条记录左右. 1.表结构查询 mysql> desc ucenter_member; +------------------+------------------+------+-----+------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------

Innodb IO优化 — 数据库表设计 转

数据库表设计这块学问比较多,我这里单从互联网角度出发同时结合Innodb的特性给出一些设计方法供大家参考.本文构建大概分两分部分:Innodb的特性及设计中如何利用这种特性. Innodb特性: Innodb是索引聚集表, 存储结构是BTREE Innodb的表的数据存储是有顺序的,默认是以主建排序,主建即是数据本身,不单独存放. 如果没有主建,Innodb以第一个唯一索引排序,如果连唯一索引也没,Innodb内部会产生一个6字节的字段排序(这个也是性能杀手,所以对这块如果不想花太多时间去想这个

IK分词器 整合solr4.7 含同义词、切分词、停止词

IK分词器如果配置成 <fieldType name="text_ik" class="solr.TextField"> <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/> <analyzer type="query" is

Elasticsearch之IKAnalyzer的过滤停止词

它在哪里呢? 非常重要! [[email protected] custom]$ pwd/home/hadoop/app/elasticsearch-2.4.3/plugins/ik/config/custom[[email protected] custom]$ lltotal 5252-rw-r--r--. 1 hadoop hadoop 156 Dec 14 10:34 ext_stopword.dic-rw-r--r--. 1 hadoop hadoop 130 Dec 14 10:34

Servlet过滤器介绍之原理分析

zhangjunhd 的BLOG   写留言去学院学习发消息 加友情链接进家园 加好友 博客统计信息 51CTO博客之星 用户名:zhangjunhd文章数:110 评论数:858访问量:1923464无忧币:6720博客积分:6145博客等级:8注册日期:2007-02-03 热门专题更多>> Linux系统基础之菜鸟进阶 阅读量:2359 ARM驱动之Linux驱动程序设计入门 阅读量:2252 HTML5入门教程 阅读量:1392 深入浅出学MySQL 阅读量:1558 热门文章 基于T

Mysql 优化方案

Mysql 优化方案 从开发角度优化mysql,让数据库效率更高.更快. 索引优化 查看mysql状态 通过周期性观察mysql状态优化,更有利于确定mysql性能瓶颈在哪里. 通过 show status 命令观察mysql的运行状态.其中比较主要的几个: 命令格式: show [global|session] status like 'command'; 默认是session: 当前会话:global: 全局会话. show status like "up_time"; 查看mys