MySQL聚簇索引的實際應(yīng)用于結(jié)構(gòu)描述
以下的文章主要介紹的是高性能的MySQL索引策略之MySQL聚簇索引(Clustered Indexes),我們大家都知道MySQL聚簇索引(Clustered Indexes),在實際應(yīng)用中比例還是占有一定的比例的,下面就是文章對其具體內(nèi)容描述。
MySQL聚簇索引保證關(guān)鍵字的值相近的元組存儲的物理位置也相同(所以字符串類型不宜建立聚簇索引,特別是隨機字符串,會使得系統(tǒng)進行大量的移動操作),且一個表只能有一個聚簇索引。因為由存儲引擎實現(xiàn)索引,所以,并不是所有的引擎都支持聚簇索引。目前,只有solidDB和InnoDB支持。
聚簇索引的結(jié)構(gòu)大致如下:
注:葉子頁面包含完整的元組,而內(nèi)節(jié)點頁面僅包含索引的列(索引的列為整型)。一些DBMS允許用戶指定聚簇索引,但是MySQL的存儲引擎到目前為止都不支持。InnoDB對主鍵建立聚簇索引。如果你不指定主鍵,InnoDB會用一個具有唯一且非空值的索引來代替。
如果不存在這樣的索引,InnoDB會定義一個隱藏的主鍵,然后對其建立聚簇索引。一般來說,DBMS都會以聚簇索引的形式來存儲實際的數(shù)據(jù),它是其它二級索引的基礎(chǔ)。
以上的相關(guān)內(nèi)容就是對MySQL聚簇索引的介紹,望你能有所收獲。
【編輯推薦】