韩国网站建站,好看响应式网站模板下载,网络推广需要什么技能,搜索引擎排名国内索引是一种用来快速检索数据的一种结构, 索引使用的好不好关系到对应的数据库性能方面, 这篇文章我们就来详细的介绍一下数据库的索引。
1. 页面的大小: B 树索引是一种 Key-Value 结构#xff0c;通过 Key 可以快速查找到对应的 Value。B 树索引由根页面#xff08;Root 树索引是一种 Key-Value 结构通过 Key 可以快速查找到对应的 Value。B 树索引由根页面Root、分支页面Branch和叶子页面Leaf组成一棵树的结构。InnoDB 中索引页面的大小由参数 innodb_page_size 控制默认为 16K。 2. 行的大小: innoDB 对行的长度有一定的限制每行记录的长度不能超过页面大小的一半。对于 16K 的页面大小1 行记录最长大概在 8000 字节多一点。如果 1 行记录平均长度为 200 字节那么一个页面最多可以容纳八十多行记录
3. key, value:
在分支页面中Value 存了下一层索引页面的编号Page No页面编号就是页面在数据文件中的地址。而在叶子页面中Value 又是什么呢 对于 InnoDB 的二级索引你可以认为叶子页面中不存 Value 而对于聚簇索引Value 是表里面的所有字段。
type keyValue struct {t uint8 //表示对应的类型key any // 表示对应的keyvalue any // 表示存储的值,
}我们先看一下面这段SQL 代码:
create table t_user(id int not null,username varchar(30),email varchar(128),phone varchar(15),login_time datetime,key idx_username(username),primary key(id)
);在innodb 中表中的数据是按照对应的聚簇索引的形式来进行存储的, 聚簇索引的key 字段为表结构中的 primary key 指定的字段, 如果不指定对应的字段, 则会以非空的唯一索引作为Primary key, 活着对应的innodb 自动生成一个隐藏的字段作为 Primary key 在上面中我指定了对应的 primary key 为对应的 id 字段, 所以Id 就作为对应的默认索引