MySQL中的索引分为3种:
1,主键索引:即用主键当唯一索引
2,常规索引:实现方式为B树和哈希表
3,全文索引:实现原理类似倒排索引,常用来查询字段中包含关键字
下面复习下B-TREE和hash-table
1 B-tree
B树是一种多路查找平衡多叉树,具有以下属性:
1,如果根节点不是叶节点...
分类:
数据库 时间:
2015-04-06 21:54:24
阅读次数:
241
最近改进了项目中的站内搜索的功能,增加了全文索引,提升了搜索速度。因为项目框架是django,所以采用django+haystack+pyelasticsearch+elasticsearch的方式实现。django作为Web framework,采用MVC设计模式,非常易于开发数据库驱动的网站。h...
分类:
其他好文 时间:
2015-04-06 12:46:32
阅读次数:
187
摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MyS...
分类:
数据库 时间:
2015-04-05 15:48:13
阅读次数:
210
在全文索引工具中,都是由这样的三部分组成
1.索引部分
2.分词部分
3.搜索部分
----------------------------------
索引创建域选项
----------------------------------
Field.Store.YES或者NO(存储域选项)
YES:表示会把这个域中的内容完全存储到文件中,方便进行还原[对于主键,标题可以是这种方式...
分类:
Web程序 时间:
2015-04-01 17:47:16
阅读次数:
162
一. Mysql常用的存储引擎包括Innodb和Myisam以及memory引擎,但是最常用的莫过于Innodb引擎和MyISAM引擎,下边分别做下记录和比较: 下面思考下这几个问题:你的数据库需要外键支持吗?你的数据库需要事务支持吗?你的数据库需要全文索引吗?你的数据库的数据量有多大?你经常使用....
分类:
数据库 时间:
2015-04-01 10:56:34
阅读次数:
131
版权归QQ87006009所有一、MyISAM引擎:1、隔离事务界别:由于myisam的隔离事务级别是串行。采用的是表级锁,不支持事物和全文索引。因此不适用在大并发,重负荷的生产系统上。2、实例的崩溃恢复:当系统宕机或者mysql进程崩溃后,MyISAM引擎表很容易受到损坏。不得不用外部命令..
分类:
数据库 时间:
2015-03-30 19:00:48
阅读次数:
157
摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MyS...
分类:
数据库 时间:
2015-03-17 00:45:33
阅读次数:
271
------------------------------------------------------------------------------------搜索分为两种: 1. 对结构化数据搜索:SQL语句对数据库中存储的内容进行查询。 2. 对非结构化数据搜索:文本,图片,全文搜索.....
分类:
其他好文 时间:
2015-03-16 06:11:00
阅读次数:
163
什么是索引:索引即数据库通过一定的组织方式(B-tree等)把创建索引列上数值和位置存储已达到快速查询的目的。索引的种类:(1) 主键索引,一张表指定主键,自动创建索引。(2) 唯一性索引,列值不能相同,但相对于主键索引可以为空。(3) FULLTEXT 是全文索引,用于搜索长文本.(4) 普通索引...
分类:
数据库 时间:
2015-03-12 13:13:26
阅读次数:
191
上一节,我们发现搜索‘a‘,但是发现‘aa‘,‘aaa‘,‘aaaa‘搜索不出来。为什么呢?这就涉及到mysql的一个内置变量ft_boolean_syntax。ft_boolean_syntax
Variable_nameValue
ft_boolean_syntax+-><()~*:""&|(其中有一个空格)该变量的意思,表示需要被全文索引的字段通过以..
分类:
数据库 时间:
2015-03-10 19:43:18
阅读次数:
188