`
wbj0110
  • 浏览: 1613088 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

MySQL全文搜索引擎 mysqlcft

阅读更多

MySQL在高并发连接、数据库记录数较多的情况下,SELECT ... WHERE ... LIKE '%...%'的全文搜索方式不仅效率差,而且以通配符%开头作查询时,使用不到索引,需要全表扫描,对数据库的压力也很大。MySQL针对这一问题提供 了一种全文索引解决方案,这不仅仅提高了性能和效率(因为MySQL对这些字段做了索引来优化搜索),而且实现了更高质量的搜索。但是,至今为 止,MySQL对中文全文索引无法正确支持。

Mysqlcft 是为 MySQL 5.1.22 ~ 5.1.25 RC 开发的中文全文索引插件,用于解决MySQL无法正确支持中文全文检索的问题。

特点:

1、优点:

  • 精准度很高:采用自创的“三字节交叉切分算法”,对中文语句进行分割,无中文分词词库,搜索精准度远比中文分词算法高,能达到LIKE '%...%"的准确率。
  • 查询速度快:查询速度比LIKE '%...%"搜索快3~50倍,文章末尾有测试结果;
  • 标准插件式:以MySQL 5.1全文索引的标准插件形式开发,不修改MySQL源代码,不影响MySQL的其他功能,可快速跟进MySQL新版本;
  • 支持版本多:支持所有的MySQL 5.1 Release Candidate版本,即MySQL 5.1.22 RC~最新的MySQL 5.1.25 RC;
  • 支持字符集:支持包括GBK、GB2312、UTF-8、Latin1、BIG5在内的MySQL字符集(其他字符集没有测试过);
  • 系统兼容好:具有i386和x86_64两个版本,支持32位(i386)和64位(x86_64)CPU及Linux系统;
  • 适合分布式:非常适合MySQL Slave分布式系统架构,无词库维护成本,不存在词库同步问题。

2、缺点:

  • mysqlcft中文全文索引只适用于MyISAM表,因为MySQL只支持对MyISAM表建立FULLTEXT索引;
  • MySQL不能静态编译安装,否则无法安装mysqlcft插件;
  • 基于“三字节交叉切分算法”的索引文件会比海量、ft-hightman等基于“中文分词算法”的索引文件稍大,但不是大很多。

根据我的测试,mysqlcft全文索引的.MYI索引文件是.MYD数据文件的2~6倍。

分享到:
评论

相关推荐

    搭建Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词搜索引擎架构

    搭建Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词搜索引擎架构 概述:本资源旨在介绍搭建Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词搜索引擎架构的过程,涵盖了Sphinx的基本概念、特性、安装和配置 MySQL+SphinxSE存储...

    飞猫精仿百度带蜘蛛php+mysql搜索引擎源码

    飞猫搜索引擎源码会使用MySQL来存储网站信息、关键词、排名等数据,同时执行SQL查询以获取搜索结果。熟悉SQL语言,包括SELECT、INSERT、UPDATE和DELETE语句,对于操作这个搜索引擎至关重要。 3. 搜索引擎原理:搜索...

    如何在MySQL中提高全文搜索效率

    MySQL内置的全文搜索引擎提供了一种高效且智能的方法来执行全文搜索,这比传统的LIKE语句方法更具优势。 首先,要理解全文搜索的基本概念。全文搜索允许用户使用关键词或短语来查找匹配的数据,而不是精确匹配整个...

    mysql-存储引擎-实验四.docx

    MySQL 存储引擎实验报告 本实验报告的主要内容是了解 MySQL 存储引擎的概念、设置和特点,并掌握 MySQL 存储引擎的使用方法。实验中涉及到多种存储引擎,包括 MyISAM 和 InnoDB,考察它们的相同点和区别,并对它们...

    用Sphinx搭建MySQL中文全文搜索

    总的来说,搭建Sphinx与MySQL的中文全文搜索系统是一项涉及多个步骤的技术任务,需要理解数据库、搜索引擎和中文处理技术。完成这一过程后,我们就能获得一个强大而灵活的搜索解决方案,可以大幅提升用户在数据库中...

    基于PHP的SEO最新算法橘色屋图库php+mysql带搜索引擎排名优化源码.zip

    标题中的“基于PHP的SEO最新算法橘色屋图库php+mysql带搜索引擎排名优化源码”揭示了这个压缩包文件包含的内容主要与PHP编程、SEO(搜索引擎优化)算法以及MySQL数据库有关,它是一个用于创建图库网站的源码,特别...

    PHP+Mysql+Sphinx高效的站内搜索引擎搭建详释.docx

    - **从MySQL内部搜索**:通过MySQL插件式存储引擎直接访问数据。 - **布尔、短语和近义词查询**:支持复杂的查询语法。 - **多全文检索域**:支持每个文档最多32个全文检索域。 - **多属性支持**:每个文档可以拥有...

    搜索引擎聚合源码搜索引擎聚合源码

    搜索引擎聚合源码

    Mysql全文搜索match against的用法

    MySQL全文搜索功能主要依赖于`MATCH()`和`AGAINST()`两个函数,用于在MyISAM表类型的字段上执行高效的文本搜索。以下是对标题和描述中所述知识点的详细说明: 1. **全文搜索的前提条件** - 表的存储引擎必须是...

    PHP实例开发源码—SEO最新算法橘色屋图库php+mysql 带搜索引擎排名优化.zip

    【PHP实例开发源码—SEO最新算法橘色屋图库php+mysql 带搜索引擎排名优化.zip】这个压缩包文件包含了一个基于PHP和MySQL的图片库应用,特别强调了SEO(搜索引擎优化)的最新算法。这表明我们即将探讨的是一个实际的...

    MySQL中文全文索引插件64位版本

    一、MySQL中文全文索引插件mysqlcft的特点:  1、优点:  ①、精准度很高:采用自创的“三字节交叉切分算法”,对中文语句进行分割,无中文分词词库,搜索精准度远比中文分词算法高,能达到LIKE '%...%"的准确率。...

    支持mysql,access,sqlserver 的jsp搜索引擎

    【标题】支持MySQL、Access和SQLServer的JSP搜索引擎是一个基于Java Web技术的搜索解决方案,专为集成到网站中提供快速、高效的全文检索功能。它能够处理来自不同类型的数据库的数据,包括关系型数据库管理系统MySQL...

    人工智能-项目实践-搜索引擎-基于Nutch+ElasticSearch+MySQL+SSM的简易搜索引擎

    这个项目结合了多个开源工具,包括Nutch(网络爬虫),Elasticsearch(全文搜索引擎),MySQL(关系型数据库)以及SSM(Spring、SpringMVC、MyBatis)框架,来实现一个功能完善的搜索解决方案。 **Nutch** 是一个...

    Sphinx搜索引擎架构与使用文档(和MySQL结合)V1.1.

    6、制作一份MySQL Slave供搜索引擎使用 10 7、创建快捷启动、停止、重启、杀死MySQL进程的脚本(以db11的3306端口为例) 10 三、SPHINX配置: 11 1、生成Sphinx中文分词词库 11 ⑴、词典的构造 12 ⑵、词典文件格式 ...

    人工智能-项目实践-搜索引擎-基于jinja2 mysql 以及bs4的王者搜索引擎

    【标题】中的“人工智能-项目实践-搜索引擎-基于jinja2 mysql 以及bs4的王者搜索引擎”揭示了这个项目的核心内容。它是一个人工智能项目,具体是关于搜索引擎的开发,采用了jinja2模板引擎、MySQL数据库以及...

    搜索引擎 基于java的搜索引擎

    在IT领域,搜索引擎是至关重要的技术之一,它用于在海量数据中快速找到相关信息。本项目“基于Java的搜索引擎”提供了一个基本的实现,涵盖了搜索引擎的关键组成部分:爬虫、网页处理、索引构建以及检索功能。这里...

    斯芬克斯全中文搜索引擎加自动分词mysql+swsc+php,全文索引

    斯芬克斯(Sphinx)是一款高性能的全文搜索引擎,专为高速、精确的全文检索而设计。在本项目中,Sphinx结合了MySQL数据库、SWSC(Smart Chinese Segmentation Component,智能中文分词组件)和PHP编程语言,构建了一...

    Docker基于ElasticSearch全文搜索引擎的旅游景点搜索网设计

    本项目主要是学习利用全文检索引擎框架ElasticSearch实现一个中文旅游网站搜索设计,通过建立一个hotel的索引库关联对应的mysql表数据,实现高效率的查询,解决了传统关系型数据因为数据量大导致的查询瓶颈问题。...

Global site tag (gtag.js) - Google Analytics