索引是什么,它的优缺点分别有什么,如何创建一个索引?

索引(Index)是帮助我们快速查询数据的数据结构——是一种数据结构

索引是排好序的快速查询的数据结构

一般来说索引本身也很大,所以不可能全部存储在内存中,因此索引往往以文件形式存储在磁盘上

Mysql目前主要有以下几种索引类型:Normal,Unique,Full Text,Spatial
1. Normal

表示普通索引,大多数情况下都可以使用


2. Unique
表示唯一的,不允许重复的索引,如果该字段信息不能重复,例如id、手机号、身份证号用作索引时,可设置为Unique


3. Full Text
表示全文收索,在检索长文本的时候效果较好,比如搜索一篇文章,在比较短的文本建议使用普通的Index即可
 

4、Spatial

空间索引是对地理空间位置数据类型的字段建立的索引,MYSQL中的地理空间位置数据类型有4种,分别是GEOMETRY、POINT、LINESTRING、POLYGON;
 

数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用 B 树及其变种 B+树。

索引的优点:

1、索引就像新华字典的目录一样,通过目录可以快速定位要找的内容所在的页码,可以提高数据检索效率,降低数据库的IO成本

2、通过索引列对数据进行排序,降低数据排序成本,降低了CPU的消耗

3、提高表与表之间的链接速度,提高group by分组效率

索引的缺点:

1、除了数据表占数据空间之外,每一个索引还要占一定的物理空间。即索引要占据数据库的物理存储空间,数据量越大,占用空间也越大

2、虽然索引大大提高了查询速度,但是如果我们对表进行插入、修改 、删除等操作,索引需要动态维护,所以会降低数据的维护速度。

因为更新表时,不仅要保存数据,还需要花费时间去建立和维护索引,而且随着数据量的不断增加,维护成本也会不断加大。

如何创建一个索引:

最普通的情况,是为出现在where子句的字段建一个索引。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值