資料庫 資料庫的物理設計

2021-09-26 19:26:28 字數 1753 閱讀 9778

資料庫在物理裝置上的儲存結構與訪問方法稱為資料庫的物理結構,它依賴於給定的計算機系統。為乙個給定的邏輯資料模型選取乙個最合適應用要求的物理結構的過程,稱為資料庫的物理設計。物理設計的目的是有效地實現邏輯模式,確定所採取的儲存策略。此階段是以邏輯設計的結構作為輸入,並結合具體dbms的特點與儲存裝置特性進行設計,選定資料庫在物理裝置上儲存結構和訪問方法。資料庫的物理設計可分為兩步:

如果評價結果滿足原設計要求,則可進入物理實施階段,否則需要重新設計或修改物理結構,有時甚至要返回邏輯設計階段修改資料模型。

關係模式訪問方法選擇

資料庫系統是多使用者共享的系統,對同乙個關係要建立多條訪問路徑才能滿足多使用者的多種應用要求。物理設計的任務之一就是要確定選擇哪些訪問方法,即建立哪些訪問路徑。訪問方法是快速訪問資料庫中資料的技術。資料庫管理系統一般都提供多種訪問方法,常用的訪問方法有3類:索引方法、聚簇(cluster)方法和hash方法。

索引訪問方法的選擇

在關聯式資料庫中,索引是乙個單獨的、物理的資料結構,它是某個表中一列或若干列的集合和相應指向表中物理標識這些值的資料頁的邏輯指標清單。索引可以提高資料的訪問速度,可以確保資料的唯一性。索引訪問方法就是根據應用要求確定對關係的哪些屬性列建立索引、哪些屬性列建立組合索引、哪些索引要設計為唯一索引等。

關係上定義的索引數並不是越多越好,因為系統為維護索引要付出代價,並且查詢索引也要付出代價。例如,若乙個關係的更新頻率很高,這個關係上定義的索引就不能太多。因為更新乙個關係時,必須對這個關係上有關的索引做相應的修改。

聚簇訪問方法的選擇

為了提高某個屬性或屬性組的查詢速度,把這個或這些屬性(稱為聚簇碼)上具有相同值的元組集中存放在連續的物理塊稱為聚簇。建立聚簇可以大大提高按聚簇碼進行查詢的效率。

設計聚簇的規則

凡符合下列條件之一,均可以考慮建立聚簇:

凡存在下列條件之一,均應考慮不建立聚簇:

使用聚簇需要注意的問題

因此,通過聚簇碼進行訪問或連線是關係的主要應用,與聚簇碼無關的其他訪問很少或者是次要時,可以使用聚簇。當sql語句中包含有與聚簇碼有關的order_by、group_by、union、distinct等子句或短語時,使用聚簇特別有利,可以省去對結果集的排序操作;否則很可能會適得其反。

hash訪問方法的選擇

有些資料庫管理系統提供了hash訪問方法。選擇hash訪問方法的規則如下:

確定資料庫的儲存結構

確定資料庫的物理結構主要是指確定資料的存放位置和儲存結構,包括確定關係、索引、聚簇、日誌、備份等的儲存安排和儲存結構;確定系統配置等。

為了提高系統效能,應該根據實際應用將資料庫中資料的易變部分與穩定部分、常訪問部分、訪問頻率較低部分分開存放。有多個磁碟的計算機可以採用下面幾種訪問位置的分配方案。

dbms產品一般都提供了一些系統配置變數、儲存分配引數,以供設計人員和dbs對資料庫進行物理優化。在初始情況下,系統都為這些變數賦予了合理的預設值。這些初始值並不一定適合每種應用環境,在進行物理設計時,需要重新對這些變數賦值,以改善系統的效能。系統配置變數很多,例如,同時使用資料庫的使用者數、同時開啟資料庫的物件數、記憶體分配引數、緩衝區分配引數(使用的緩衝區長度、個數)、儲存分配引數、物理塊的大小、物理塊裝填因子、時間片大小、資料庫的大小、鎖的數目等。這些引數值會影響訪問時間和儲存空間的分配,因此在進行物理設計時,要根據應用環境確定這些引數值,以使系統效能最佳。

(最近更新:2023年09月03日)

資料庫的物理設計

資料庫最終是要儲存在物理裝置上的。為乙個給定的邏輯資料模型選取乙個最適合應用環境的物理結構 儲存結構與訪問方法 的過程,就是資料庫的物理設計。物理結構依賴於給定的dbms和和硬體系統,因此設計人員必須充分了解所用dbms的內部特徵,特別是儲存結構和訪問方法 充分了解應用環境,特別是應用的處理頻率和響...

MySQL之資料庫物理設計

型別 儲存空間 tinyint 1位元組smallint 2位元組mediumint 3位元組int 4位元組bigint 8位元組 型別儲存空間 float 4位元組double 8位元組decimal 每4位元組存9個數字,小數點佔乙個位元組 型別 格式date yyyy mm dd time ...

資料庫 資料庫設計正規化

在關聯式資料庫中的關係是要滿足一定要求的,滿足不同程度要求為不同正規化,越高的正規化資料庫冗餘越小。但是有些時候一昧的追求正規化減少冗餘,反而會降低資料讀寫的效率,這個時候就要反正規化,利用空間來換時間。目前關聯式資料庫有六種正規化 第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 巴斯 ...