時(shí)間:2022-11-19 00:30:02 | 來源:信息時(shí)代
時(shí)間:2022-11-19 00:30:02 來源:信息時(shí)代
數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計(jì) : 為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方法)。它根據(jù)DBMS特點(diǎn)和處理的需要,進(jìn)行物理存儲安排,設(shè)計(jì)索引,形成數(shù)據(jù)庫內(nèi)模式。數(shù)據(jù)庫物理設(shè)計(jì)和具體使用的數(shù)據(jù)庫管理系統(tǒng)有關(guān),也和數(shù)據(jù)庫所運(yùn)行的軟、硬件平臺有關(guān),目的是盡量合理地給數(shù)據(jù)庫分配物理空間,在具體計(jì)算機(jī)系統(tǒng)中,設(shè)計(jì)并實(shí)現(xiàn)高效的數(shù)據(jù)庫物理結(jié)構(gòu)。這一步在數(shù)據(jù)庫設(shè)計(jì)中很重要,關(guān)系到數(shù)據(jù)庫數(shù)據(jù)的安全和數(shù)據(jù)庫的性能。
新奧爾良會議設(shè)定的關(guān)于數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的最后階段設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)的其他方面一樣,要根據(jù)數(shù)據(jù)的性質(zhì)和用途來進(jìn)行物理數(shù)據(jù)庫設(shè)計(jì)。特別是應(yīng)該了解數(shù)據(jù)庫所必須支持的典型的工作負(fù)載。用戶有一些特定的要求,如,默認(rèn)查詢或更新的執(zhí)行速度應(yīng)該有多快,或者每秒鐘必須處理多少個(gè)事務(wù)等。在物理數(shù)據(jù)庫設(shè)計(jì)過程中,工作負(fù)載的描述和用戶的需求是做出許多決策的基礎(chǔ)。為了獲得一個(gè)好的物理數(shù)據(jù)庫設(shè)計(jì),在物理設(shè)計(jì)的過程中,還要調(diào)整系統(tǒng)的性能以滿足用戶需求。設(shè)計(jì)者需要清楚DBMS工作的細(xì)節(jié),特別是DBMS所支持的索引和查詢處理技術(shù)。
可以使用設(shè)計(jì)工具完成物理模型的設(shè)計(jì)。所有的數(shù)據(jù)庫對象應(yīng)盡可能在物理模型上進(jìn)行設(shè)計(jì),而且每個(gè)物理模型都要有相應(yīng)的文字描述。所有的數(shù)據(jù)庫對象變更以數(shù)據(jù)庫物理模型為基準(zhǔn)。
關(guān)系數(shù)據(jù)庫物理設(shè)計(jì)的內(nèi)容主要包括: 為關(guān)系模式選擇存取方法;設(shè)計(jì)關(guān)系、索引等數(shù)據(jù)庫文件的物理存儲結(jié)構(gòu)等。
以O(shè)racle數(shù)據(jù)庫為例,這一步包括相應(yīng)表空間的數(shù)據(jù)文件在磁盤上的分配,還要根據(jù)數(shù)據(jù)量的大小確定redolog文件、rollback段的大小,然后進(jìn)行分配,這些文件的分配要本著利于備份、利于性能優(yōu)化的原則,原則如下:
(1)為表和索引建立不同的表空間,禁止在系統(tǒng)表空間中放入非核心Oracle系統(tǒng)成分的對象,確保數(shù)據(jù)表空間和索引表空間位于不同的磁盤驅(qū)動器上。
(2)了解終端用戶怎樣訪問數(shù)據(jù),如果可能,將經(jīng)常同時(shí)查詢和頻繁查詢的對象放在不同的物理磁盤上。
(3)當(dāng)數(shù)據(jù)庫包含允許用戶并行訪問不同數(shù)據(jù)元素的大對象時(shí),將對象分割存放在多個(gè)磁盤上是有好處的(也可以采用分區(qū))。在某個(gè)操作系統(tǒng)平臺上定義擁有數(shù)百萬行的表時(shí),則更需小心,因?yàn)閿?shù)據(jù)庫文件的大小受到限制,這種限制是由操作系統(tǒng)而不是由Oracle引起的。
(4)在獨(dú)立的磁盤上至少創(chuàng)建兩個(gè)用戶定義的rollback表空間,以存放用戶自己的rollback段。在初始化文件中安排rollback段的次序,使它們在多個(gè)磁盤之間進(jìn)行切換。
(5)將redolog文件放在一個(gè)讀寫較少的盤上。對于每個(gè)Oracle實(shí)例要建立兩個(gè)以上的redolog組,同組的兩個(gè)成員放在不同的設(shè)備上。
(6)確立表和索引的大小,這決定了保存它們所需的表空間的尺寸,也決定了哪些表空間物理地裝在哪些盤上和哪些表空間可以結(jié)合在一起。具體的估算方法可以按照Oracle的一些公式,這里還要按照各個(gè)表的具體特性、用途,定義它的存儲參數(shù)。
索引設(shè)計(jì): 對于查詢中需要作為查詢條件的字段,可以考慮建立索引。最終根據(jù)性能的需要決定是否建立索引。對于復(fù)合索引,索引字段順序比較關(guān)鍵,把查詢頻率比較高的字段排在索引組合的最前面。
索引使用原則: 索引是從數(shù)據(jù)庫中獲取數(shù)據(jù)的最高效方式之一。大部分的數(shù)據(jù)庫性能問題都可以采用索引技術(shù)得到解決。
客戶&案例
關(guān)于我們
微信公眾號
版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。