資料頁的角度理解B 樹查詢

2021-10-09 10:23:53 字數 746 閱讀 8281

在資料庫中,不論讀一行,還是讀多行,都是將這些行所在的頁進行載入。也就是說,資料庫管理儲存空間的基本單位是頁

1.區(extent)是比頁大一級的儲存結構,在 innodb 儲存引擎中,乙個區會分配 64 個連續的頁.

2.段(segment)由乙個或多個區組成,區在檔案系統是乙個連續分配的空間(在 innodb 中是連續的 64 個頁),不過在段中不要求區與區之間是相鄰的。

3.表空間(tablespace)是乙個邏輯容器,表空間儲存的物件是段,在乙個表空間中可以有乙個或多個段,但是乙個段只能屬於乙個表空間

資料庫 i/o 操作的最小單位是頁,與資料庫相關的內容都會儲存在頁結構裡。資料頁包括七個部分,分別是檔案頭(file header)、頁頭(page header)、

最大最小記錄(infimum+supremum)、使用者記錄(user records)、空閒空間(free space)、頁目錄(page directory)和檔案尾(file tailer)。

從 b+ 樹的根開始,逐層檢索,直到找到葉子節點,也就是找到對應的資料頁為止,將資料頁載入到記憶體中,

頁目錄中的槽(slot)採用二分查詢的方式先找到乙個粗略的記錄分組,然後再在分組中通過鍊錶遍歷的方式查詢記錄.

唯一索引就是在普通索引上增加了約束性,也就是關鍵字唯一,找到了關鍵字就停止檢索。而普通索引,可能會存在使用者記錄中的關鍵字相同的情況,根據頁結構的原理,

當我們讀取一條記錄的時候,不是單獨將這條記錄從磁碟中讀出去,而是將這個記錄所在的頁載入到記憶體中進行讀取。

從資料頁的角度理解B 樹查詢

在資料庫中,不論讀一行,還是讀多行,都是將這些行所在的頁進行載入。也就是說,資料庫管理儲存空間的基本單位是頁。行 頁 區 段 表。1.資料頁 2.系統頁 3.undo頁 4.事務資料頁 1.檔案頭 38位元組,描述頁的資訊 2.頁頭 56位元組,頁的狀態資訊 3.最大最小記錄 26位元組,是兩個虛擬...

B樹查詢,磁碟查詢資料

b 樹 b 樹,又叫平衡多路查詢樹。一棵m階的b 樹 m叉樹 的特性如下 1 樹中每個結點至多有m個孩子 2 除根結點和葉子結點外,其它每個結點至少有 m 2 個孩子 3 若根結點不是葉子結點,則至少有2個孩子 4 所有葉子結點都出現在同一層,葉子結點不包含任何關鍵字資訊 可以看做是外部接點或查詢失...

筆記 B 樹的理解

什麼是b樹 校外實習的一段時間中,有用到mysql資料庫,來儲存管理系統資料。我們都知道,mysql資料庫裡的索引是基於hash表或者是b樹。可是b樹的實現細節是什麼樣的?b 樹和b 樹有什麼區別,聯合索引在b 樹中如何儲存等一系列問題我的理解都還不很深入。所以自己找了些資料,留個筆記。資料庫索引用...