数据库 索引类型及其区别
逻辑上:
Single column 单行索引
Concatenated 多行索引
Unique 唯一索引
NonUnique 非唯一索引
Function-based函数索引
Domain 域索引
物理上:
Partitioned 分区索引
NonPartitioned 非分区索引
B-tree:
Normal 正常型B树
Rever Key 反转型B树
Bitmap 位图索引
索引结构:
B-tree:适合与大量的增、删、改(OLTP);
不能用包含OR操作符的查询;
适合高基数的列(唯一值多)
典型的树状结构;
每个结点都是数据块;
大多都是物理上一层、两层或三层不定,逻辑上三层;
叶子块数据是排序的,从左向右递增;
在分支块和根块中放的是索引的范围;
Bitmap:
适合与决策支持系统;
做UPDATE代价非常高;
非常适合OR操作符的查询;
基数比较少的时候才能建位图索引;
树型结构:索引头
开始ROWID,结束ROWID(先列出索引的最大范围)
BITMAP
每一个BIT对应着一个ROWID,它的值是1还是0,如果是1,表示着BIT对应的ROWID有值;
B*tree索引的话通常在访问小数据量的情况下比较适用,比如你访问不超过表中数据的5%,当然这只是个相对的比率,适用于一般的情况。bitmap的话在数据仓库中使用较多,用于低基数列,比如性别之类重复值很多的字段,基数越小越好。
数据库 索引类型及其区别相关推荐
- mysql几种索引类型_Mysql几种索引类型的区别及适用情况
如大家所知道的,Mysql目前主要有以下几种索引类型:FULLTEXT,HASH,BTREE,RTREE. 那么,这几种索引有什么功能和性能上的不同呢? FULLTEXT 即为全文索引,目前只有MyI ...
- 数据库索引类型及实现方式
1.索引定义 数据库索引好比是一本书前面的目录,能加快数据库的查询速度.索引是对数据库表中一个或多个列(例如,employee 表的姓氏 (lname) 列)的值进行排序的结构.如果想按特定职员的姓来 ...
- 关系型数据库索引类型
索引类型分类: 1.主索引:主索引是一种只能在数据库表中建立不能在自由表中建立的索引.在指定的字段或表达式中,主索 引的关键字绝对不允许有重复值. 2.候选索引:和主索引类似,它的值也 不允许在指定的 ...
- Mysql索引类型及区别
mysql索引的四种类型:主键索引.唯一索引.普通索引和全文索引.通过给字段添加索引可以提高数据的读取速度,提高项目的并发能力和抗压能力.索引优化时mysql中的一种优化方式.索引的作用相当于图书的目 ...
- 什么是索引?Mysql目前主要的几种索引类型 和 引擎区别?
一.索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的My ...
- MYSQL数据库四种索引类型的简单使用
MYSQL数据库索引类型包括普通索引,唯一索引,主键索引与组合索引,这里对这些索引的做一些简单描述: (1)普通索引 这是最基本的MySQL数据库索引,它没有任何限制.它有以下几种创建方式: 创建索引 ...
- mysql 索引类型 ref_什么是索引?Mysql目前主要的几种索引类型
一.索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的My ...
- mysql四种常用的索引_四种常见的索引类型
主键索引:数据记录里面不能有 null,数据内容不能重复,在一张表里面不能有 多个主键索引. 普通索引:使用字段关键字建立的索引,主要是提高查询速度 唯一索引:字段数据是唯一的,数据内容里面能否为 n ...
- MYSQL的索引类型:PRIMARY, INDEX,UNIQUE,FULLTEXT,SPAIAL 有什么区别?各适用于什么场合?...
一.介绍一下索引的类型 Mysql常见索引有:主键索引.唯一索引.普通索引.全文索引.组合索引 PRIMARY KEY(主键索引) ALTER TABLE `table_name` ADD PRIMA ...
最新文章
- 三维重建 3D reconstruction 有哪些实用算法?
- python使用imbalanced-learn的EditedNearestNeighbours方法进行下采样处理数据不平衡问题
- 什么数字万用表可以测量噪声?
- 大龄计算机考研 考研帮,大龄学子考研之路
- python可以在哪些平台安装_python都有哪些版本,如何在你的计算机上运行python?...
- 编程方法学18:多维数组收尾
- RuntimeError: ‘cryptography‘ package is required for sha256_password or caching_sha2_password auth m
- 编写你的第一个垃圾收集器
- Exynos4412 所用内存 —— DDR2
- 宁德时代拟定增募资不超582亿元,用于锂离子电池项目等
- Spring之ApplicationContextAware接口详解
- 微信小程序登录流程总结 目录 1.1. 前端调用wx.login 。。给后端传递一个code	1 1.2. 开发者需要在开发者服务器后台调用 auth.code2Session,使用 code 换取
- hadoop ha环境下的datanode启动报错java.lang.NumberFormatException: For input string: 10m
- JS函数传参、作用域
- VMWare虚拟机启动失败,显示intel VT-X处于禁用状态
- Confluence导出PDF文件乱码
- SCAU 计算智能 8615 快乐
- Enterprise Library 2.0 -- Exception Handing Applcation Block
- LM2596/LM2596S多路降压稳压DC-DC开关电源芯片讲解(第一部分:芯片介绍)(12V转5V、12V转3.3V、任意电压转任意电压)
- JS逆向之国家企业信用信息公示系统Cookie传递
热门文章
- 好吧,我要构思一个游戏!
- MTSEA,2732568-75-9可修饰游离半胱氨酸残基
- Unity自动保存场景
- 51信用卡Android 架构演进实践
- 不懂高并发,薪资凉半截!
- 学计算机用16g内存,电脑内存8G和16G有什么区别?电脑内存8G和16G的区别详解
- Python pandas.DataFrame.max函数方法的使用
- php cros跨域处理,CORS跨域问题解决方案
- 一般是指用计算机绘制的画面,()一般指用计算机绘制的画面,如直线、圆、圆弧、矩形、任意曲线和图表等。A、图形B、图像C、动画D、图...
- Ubuntu Linux投影的操作