日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

MYSQL索引结构学习笔记

發(fā)布時(shí)間:2023/12/10 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MYSQL索引结构学习笔记 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?mysql 的數(shù)據(jù)、索引、DDL 等數(shù)據(jù),都是以文件形式存儲(chǔ)的,

? 所以導(dǎo)致每次查詢都是一次I/O操作,當(dāng)I/O操作過(guò)大時(shí),會(huì)嚴(yán)重影響效率

MYSQL索引結(jié)構(gòu):

?????????? mysql使用的是B+樹來(lái)存儲(chǔ)索引的,為什么不用其他的呢?
二叉樹 -> 根據(jù)二叉樹的概念,當(dāng)數(shù)據(jù)是遞增的時(shí)候,它的節(jié)點(diǎn)會(huì)一直增大下去
紅黑樹 -> 平衡二叉樹 -> 每個(gè)節(jié)點(diǎn)存一個(gè)值,同樣會(huì)導(dǎo)致節(jié)點(diǎn)過(guò)多
B 樹?? -> 每個(gè)節(jié)點(diǎn)可存多個(gè)值(解決紅黑樹太深的問題) ?->但是涉及到范圍查詢的時(shí)候,也會(huì)慢
B+樹?? -> 變種B樹 -> 葉子節(jié)點(diǎn) 有指針相連 (方便范圍查詢)

?

MYSQL引擎存儲(chǔ)結(jié)構(gòu):

myIsam 引擎 : 存儲(chǔ)數(shù)據(jù)單獨(dú)一個(gè)文件 .MYD? 存儲(chǔ)索引單獨(dú)一個(gè)文件 .MYI
innerdb引擎 : 一個(gè)文件 同時(shí)存 索引+數(shù)據(jù) .idb? (聚集索引)? 尋址快,

又為什么所有的data都存在葉子結(jié)點(diǎn)上?

mysql 默認(rèn)每個(gè)節(jié)點(diǎn)存16K數(shù)據(jù),如果每個(gè)節(jié)點(diǎn)都存 key+value 會(huì)導(dǎo)致每個(gè)節(jié)點(diǎn)的key變少,從而導(dǎo)致節(jié)點(diǎn)增多 ,導(dǎo)致樹H變高。

?

?

分享一個(gè)不錯(cuò)的數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)網(wǎng)站:

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

總結(jié)

以上是生活随笔為你收集整理的MYSQL索引结构学习笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。