题记
- 有的是只求一用,有的是力求深入,“我们”的底线只是要知道是怎么回事
- 既然“学习底线”不高,那么记录格式、表空间、段什么的都先放任不管
- 只是先知道下页
页
- 以页作为磁盘和内存之间交互的基本单位
- 说简单了,用碗还是盆盛饭,都得一口一口吃,一口,就是盆和胃交换的基本单位(当然不需要胃里的再交出来)
- 再把饭粒比作记录,那么页中有记录,有多少呢?看,调皮了是不!不管,知道是这么回事就行!
- 咱们再说,用卡车将砖厂露天堆放烧制好的砖块,一车车运送到建筑工地…,一车就是砖厂和建筑工地交换的基本单位
- 还有…,打住!例子够了
索引初探
- 圣上后宫三千,划分了居住区,划分了院子,划分了标间,大概你知道了,皇帝翻牌公公找人,是能很快找到的
- 古建筑拆除搬迁新址重建,是个贴切例子,每个部件都标记归类打包运到新址,在新址,专家按照图纸指定所需部件,作为牛马的你,出去取,专家看不对,再出去取,专家看不对,再…,没有再了,你被开除了
- 后宫佳丽有名字,古建筑部件有编号,页中的数据有什么标记,是自定义的主键,如果没有,系统给记录唯一row_id(终于还是回到了生冷、无人情味的MYSQL本身)
- 如图,像书本目录找内容,感觉就像这么回事
聚簇索引
-
上面提到row_id,就作为数据的标识,记录在册方便寻找,mysql用B+tree记录
-
从上图看,这也不是树呀
-
是的,书本的目录也不全是在一页纸上呀
-
可上图还是不像树,现在该怎么举例,不需要了,我们切换到逻辑思维,一本很厚的书,目录高达百页,好,按指定页数分组
-
上图有树的样子了,如果目录按照20页分组,还有很多组,怎么办,把组再合在一起分组,这下更像了
-
难道一直增长上去,要知道mysql的索引树前缀是 B+,是B+tree,此树可以控制树高,那是B+树的知识了,不谈(hui)