1. 程式人生 > >系統設計中如何區分物理和邏輯結構

系統設計中如何區分物理和邏輯結構

     至從,負責系統中資料結構設計以來,跟產品功能設計人員溝通的機會多了起來,同時,也發現了很多產品設計人員的一個普遍問題:不明確什麼是資料庫邏輯結構,什麼是物理結構,經常因為這些問題,相互爭執。作為一個合格的產品設計師,如果不能有效區分這些,相信這種設計對受眾者員來說,一定不會是一個易於理解的好設計。

     如何有效區分邏輯和物理結構呢?

     邏輯結構:資料元素之間的邏輯關係,即人對資料的理解,而進行抽象的模型 。
     物理結構:資料元素在計算機中的儲存方法,即計算機對資料的理解,邏輯結構在計算機語言中的對映。      那麼邏輯結構到底該如何描述呢?例如:一輛汽車由許多個零件構成。“汽車”這個實體具有型號、單價和牌號等屬性,“零件”這個實體具有名稱、單價和廠家等屬性。汽車和零件通過關係模型來表示,就是1:N關係,作為邏輯結構,我們只需要描述出某汽車由那些零件組成,這些實體的屬性的取值範圍、長度和關係即可。而作為物理結構,就需要把這些描述成具體的關係實體,實體關係,實體屬性對應的資料庫的資料型別、長度、外來鍵關係等。當然E-R關係圖也是必不可少的,更重要的是還需要基本遵循資料庫設計正規化、高可擴充套件性的基本原則。       當然,他們的區別是非常明顯的,邏輯結構,更適合客戶、測試、實施人員等非專業技術人員理解、檢視,而物理結構,則更適合專業技術人員分析、使用。      兩者設計的初衷,當然也有本質的區別。      邏輯結構設計的任務是將基本概念模型圖轉換為與選用的資料模型相符合的邏輯結構。邏輯結構設計的步驟:概念模型、一般資料模型、特定的資料模型、優化的資料模型。
     物理設計的任務是根據具體計算機系統的特點,為給定的資料模型確定合理的儲存結構和存取方法。所謂的“合理”主要有兩個含義:一個是要使設計出的物理資料庫佔用較少的儲存空間,另一個對資料庫的操作具有儘可能高的速度。