如何形象生動的描述資料庫引擎這個概念?

時間 2021-06-01 06:22:37

1樓:機智飛

Adatabase engine(orstorage engine) is the underlying software component that a database management system (DBMS) uses to create, read, update and delete (CRUD) data from a database.

---From Wikipedia

乙個資料庫管理系統總是要有資料傳輸管理模組,資料操縱語言編譯器和乙個儲存引擎。 它們之間的界限不那麼分明, 但是儲存引擎總是最底層的。

儲存引擎首先要把由作業系統提供的方法進行改造,使其適配DBMS的需求或傳統。比如:有些儲存引擎要改造作業系統提供的自旋鎖,實現指數後退,或者指定最高後退次數。

有的要指定每次從磁碟上至少取多少資料作為乙個塊。

儲存引擎還要指定基本的資料二進位制表達。比如這個儲存引擎如何制定眾多整數分別要占用多少位元組, 變長資料是存長度還是存標記。

儲存引擎還要規範各種物理儲存單元在磁碟上的一維布局(非記憶體資料庫)。資料在磁碟上的實體地址是一維線性的,因此儲存引擎必須提供對其進行整理,提供具有各種獨特語義的儲存單元,如頁,區,段,還要提供資料結構對他們進行分發和訪問。

儲存引擎規定了各種邏輯儲存單元的格式。比如記錄的結構(記錄頭格式),各種頁(記錄頁,系統資訊頁)的結構(頁頭,頁描述符)。

儲存引擎提供了索引結構。乙個資料庫支不支援B+樹索引,雜湊索引是由儲存引擎決定的。

儲存引擎的大部分其他功能就是optional了,比如是否支援事務,日誌,DML編譯,優化等等。

形象來說,如果DBMS是乙個軟體,那麼儲存引擎就是執行它的作業系統。

2樓:魯小夫

如何形象生動的解釋ip位址 子網掩碼 閘道器等概念?

勝勳 網路IP位址5.6.7.8 家庭住址,美國家裡蹲大學1號樓1號室 內網IP位址192.168.1.15 房間號碼,咱小區1號樓1號室 子網掩碼255.255.255.0 跟誰在同乙個網路內,咱小區1號樓是同乙個網路 閘道器192.168.1.1 小區大門,咱小區1號門 stanjay 你家在上...

資料庫的 Buffer Pool 如何提高並行度?

李晨曦 既然鎖的粒度太大了,最簡單的方法就是減小鎖的粒度就好了,你的實現是全域性鎖,這種肯定慢,執行緒數多的時候甚至比單執行緒還慢。改成範圍鎖或者槽鎖就能夠大幅度提公升效能了,hashtable的每個槽一把鎖,操作page id對映到同乙個槽的page時才會有衝突,否則是沒有鎖衝突的。極端情況下所有...

乙個優秀的關係型資料庫儲存引擎應該具備哪些功能, 達到哪些指標

肖堂 數蠶 資料庫儲存引擎是資料庫的最基礎的部分,是資料庫的各種功能的實現的載體,它的功能包含儲存結構 含索引結構 事務功能,快取機制,監控或分析機制。其中儲存結構和索引結構是最基礎的功能,用於保證資料的完整性,高效性和查詢特性。事務功能應該滿足基礎的事務的基本級別,至少支援最高端別。支援回滾。快取...