首页 > 数据库 >MySQL全文索引实现简单版搜索引擎

MySQL全文索引实现简单版搜索引擎

时间:2024-05-30 22:57:40浏览次数:20  
标签:中文 全文检索 关键词 全文索引 搜索引擎 索引 MySQL 分词

1 前言

  • 只有Innodb和myisam存储引擎能用全文索引(innodb支持全文索引是从mysql5.6开始的)
  • char、varchar、text类型字段能创建全文索引(fulltext index type)
  • 全文索引的基于关键词的,如何区分不同的关键词了,就要用到分词(stopword)
  • 英文单词用空格,逗号进行分词;中文分词不方便(一个句子不知道怎样区分不同的关键词)
  • 内置分词解析器ngram支持中文,日文,韩文(将句子分成固定数字的短语)
  • 当对表写入大量数据时,写入数据后再创建全文索引的速度更快(减少了维护索引的开销)
  • 全文索引的原理的倒排索引(一种数据结构),一般利用关联数组,在辅助表中存储单词与文档中所在位置的映射
  • 每张表只能有一个全文检索的索引
  • 由多列组合而成的全文检索的索引必须使用相同的字符集与排序规则
  • 不支持没有单词界定符delimiter的语言,如中文 日文汉语等

标签:中文,全文检索,关键词,全文索引,搜索引擎,索引,MySQL,分词
From: https://blog.csdn.net/u013938578/article/details/139246808

相关文章

  • 【scau数据库实验一】mysql_navicat_数据库定义实验、基本命令
    实验一开始之前,如果还有不会使用navicat建议花五分钟补课哦~补课地址:【scau数据库实验先导】mysql_navicat_数据库新建、navicat的使用-CSDN博客实验目的:理解和掌握数据库DDL语言,能够熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。实验报告要求:实验报......
  • MySQL编译安装
    在正式安装MySQL5.7.28之前,需要做一些准备工作。比如:安装MySQL的依赖包、卸载MariaDB、编译工具cmake的安装以及boost支持包的准备。卸载MariaDBrpm-qa|grepmariadbrpm-qmariadbmariadb-5.5.52-1.el7.x86_64yum-yremovemariadb*安装所需依赖包yum-yi......
  • mysql高级篇学习(数据表的设计方法,索引优化)
    使用docker安装mysql安装docker#yum包更新到最新yumupdate#卸载旧的dockeryumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\......
  • MySQL数据库-基础
    MySQL数据库P1数据库的作用2022/6/191.简介MySQL是一个[关系型数据库管理系统]由瑞典[MySQLAB](https://baike.baidu.com/item/MySQLAB/2620844)公司开发,属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relat......
  • 基于Servlet+Mysql+Jsp机票管理系统(含论文)
    博主介绍:大家好,本人精通Java、Python、C#、C、C++编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类个性化的开题框架和实际运作方案。我擅长在JavaWeb、SSH......
  • # 关于mysql触发器
    1#触发器2#一种MySQL数据库对象,它在表的某些事件发生时自动执行预定义的SQL语句3#触发器类型4#行级触发器:在每一行受到影响时触发。5#语句级触发器:在整个语句完成后触发(MySQL目前只支持行级触发器)。6#触发器的事件7#BEFOREINSERT:在一条记录插......
  • Mysql-Xtrabackup备份恢复
    恢复准备1、安装Xtrabackup2、数据备份和拷贝 恢复步骤1、恢复全量备份2、恢复增量备份到全量备份注意:开始恢复的增量备份要添加--redo-only参数,最后一次增量备份去掉--redo-only参数3、对整体的完全备份进行恢复:停库——恢复——启动库恢复场景 全量备份恢复nohupin......
  • 19.基于SSM的点餐系统|基于SSM框架+JSP+ Mysql+Java+B/S框架设计与实现(可运行源码+数
    内容概要:全套项目源码+详尽文档,一站式解决您的学习与项目需求。适用人群:计算机、通信、人工智能、自动化等专业的学生、老师及从业者。使用场景及目标:无论是毕设、期末大作业还是课程设计,一键下载,轻松部署,助您轻松完成项目。项目代码经过调试测试,确保直接运行,节省您的时......
  • 为 MySQL/MariaDB 开启 Binlog 功能
    介绍说到Binlog就不得不提一下MySQLServer的四种类型的日志:ErrorLog、GeneralQueryLog、SlowQueryLog和BinaryLog。ErrorLog即错误日志,记录mysqld发生的一些错误。GeneralQueryLog即一般查询日志,记录mysqld正在做的事情,如客户端的连接和断开、来自客......
  • Navicat远程连接阿里云mysql失败,提示2013,2003错误解决方案
    前情提要总结下使用过的各种解决方式,如修改cnf,修改安全组端口,修改防火墙,总有一款方案适合你(如果使用其他方式解决请评论补充,感谢)环境:本文全部使用yum方式安装服务,使用阿里云服务器centos7下文需要格外注意手动配置端口的部分确认已安装好mysql服务(yum安装)......