邏輯資料模型和實體資料模型之間有何差異?
邏輯資料模型和實體資料模型是資料設計中的兩個重要步驟。資料模型是建立視覺呈現或藍圖的過程,藉此協助不同利益相關者產生統一的組織資料檢視。首先先從資料模型開始,可使用商業使用者的輸入來建立資料實體、屬性和關係的高階抽象呈現。
邏輯資料模型是概念模型的精細版本。它以影像呈現出以平台獨立方式實作的資料約束、實體名稱和關係。實體資料模型進一步精細化邏輯資料模型,以便透過特定資料庫技術進行實作。邏輯資料模型和實體資料模型定義資料的結構、組織和規則,以便支援有效率的儲存、擷取和操作。
呈現:邏輯資料模型與實體資料模型
邏輯資料模型和實體資料模型都是確保在實體資料庫上準確表示業務需求的工具。它們提供不同等級的技術細節,以便在支援資料庫設計同時保留業務觀點。
邏輯資料模型的呈現
透過使用邏輯資料模型,業務分析師和資料架構設計師可以在實體關係圖視覺化作業或交易流程。邏輯資料模型定義資料物件如何以業務利益相關者能夠理解的方式進行運作和交易。因此,它們獨立於稍後部署到其中的實際資料庫。
下圖為體育票務系統的邏輯資料模型範例。
每個表格都以熟悉的業務術語描述資料實體及其各自屬性。例如,實體人員包含 full_name 和 last_name 作為屬性。針對所有實體,您可以指定一個主索引鍵 (PK) 來區分每列中的屬性。某些實體包含外部索引鍵 (FK),以表示其與一對多關係中的另一個實體的關係。
實體資料模型的呈現
實體資料模型提供深入的詳細資料,協助資料庫管理員和開發人員在實體資料庫上執行業務邏輯。這些模型提供邏輯資料模型中未指定的其他屬性,例如觸發程式、預存程序和資料類型。由於實體資料模型對應資料元素至實際資料庫,因此實體資料模型必須遵守平台特定限制,例如命名慣例和保留字詞的使用。
下圖為相同體育票務系統實體資料模型的範例。
在實體資料模型中,您可以指定所有儲存資料物件的資料類型。您也可以修改實體和屬性名稱以便使用平台支援的格式。
設計方式:邏輯資料模型與實體資料模型
設計邏輯資料模型和實體資料模型皆需要採取能夠讓業務需求順利轉換到實用的資料庫實作的步驟。邏輯資料模型為特定業務流程概念資料模型的延伸。實體資料模型則進一步精細化資料庫設計的邏輯資料模型。
建立邏輯資料模型
請依照下列步驟建立邏輯資料模型:
- 決定所有必要的實體及其各自屬性。
- 選擇適當的 PK 作為屬性群組的唯一識別符。
- 根據操作需求,將資料模型標準化與非標準化。
- 在資料模型中建立不同業務實體之間的關係。
- 驗證資料實體及其關係,以準確呈現業務邏輯。
您可以定義個別實體之間的關係。某些實體彼此直接關聯,其他實體可能會透過共用實體連結。通常您會諮詢各自的利益相關者,以確保實體根據業務要求正確連結。您也可以複製某些實體,策略性將其他實體限制為單一執行個體,以便提高查詢效率並最大限度減少儲存空間。
建立實體資料模型
請依照下列步驟設計實體資料模型:
- 轉換本機資料模型,以便符合所選資料庫提供者的平台。
- 將資料實體對應到其各自的表格中。
- 視需要在資料庫表格中對應並建立 PK 和 FK。
- 確認資料庫結構已適當標準化,以便移除多餘資料並改善資料完整性。
- 新增相關資料庫約束、規則、分割區和程式設計功能,以便支援應用程式開發。
- 比較實體資料模型和邏輯資料模型,確保業務需求已正確轉譯。
在某些情況下,一個實體會被分為多個表格。每個表格都包含數個資料欄,可儲存由邏輯資料模型屬性指定的資訊。在實體資料模型中,資料欄會根據其資料類型進行區分,例如整數、varchar 和布林值。
主要差異:邏輯資料模型與實體資料模型
即便為資料模型過程的一部分,邏輯資料模型和實體資料模型卻因不同的特性有所分別。
目標
使用邏輯資料模型,您可以以技術結構化的方式視覺化程序工作流程。您可以了解各種業務系統之間的關係。
此外,實體資料模型描述如何在實際資料庫表格中組織資料。您可以從上而下檢視應用程式如何儲存和存取現實資料。
創作者
資料架構設計師和業務分析師通常會建立邏輯資料模型。開發人員和資料庫管理員則負責執行實體資料模型。
複雜性
邏輯資料模型更簡單,因為它們定義商業資料物件之間的互連。每個資料物件都由資料實體及其相關屬性組成。
實體資料模型則更複雜。您可以使用表格、欄和索引在實體資料模型中組織資料元素,同時符合嚴格的平台限制。實體資料模型中的資料結構受到更穩固的關係約束,例如核心性和無效性。
使用時機
您可以使用邏輯資料模型來視覺化企業系統中的資訊流程。分析師、經理和企業用戶可以了解特定系統的運作方式以及適用的業務概念。
應用程式開發人員在建立應用程式以生產用途時,使用實體資料模型規劃和最佳化資料儲存。實體資料模型為將資料儲存在關聯式資料庫中的藍圖。
差異摘要:邏輯資料模型與實體資料模型比較
邏輯資料模型 |
實體資料模型 |
|
依賴平台的資料庫 |
否。 |
是。 |
資料結構 |
實體、屬性、數個 PK 和 FK。 |
資料庫表格、列、數個 PK、數個 FK 和資料類型。 |
程式設計功能 |
否。 |
觸發器和預存程序。 |
目標 |
使用資料結構可視覺化商業邏輯。 |
為資料庫設計組織資料結構。 |
建立者 |
商業分析師和資料架構設計師。 |
軟體開發人員、程式設計師和資料庫管理員。 |
複雜性 |
簡便。 |
複雜。 |
使用時機 |
瞭解企業系統和商業規則。 |
在開發應用程式時,規劃、執行和優化資料儲存。 |
AWS 如何協助處理邏輯資料模型和實體資料模型?
Amazon Web Services (AWS) 資料庫包含超過 15 個資料庫引擎,支援多樣的資料模型。例如,可以使用 Amazon Relational Database Service (Amazon RDS) 實作邏輯關係資料模型,以及 Amazon Neptune 實作邏輯圖形資料模型。
也可以使用 AWS Amplify DataStore 快速輕鬆地進行資料建模,建置行動和網路應用程式。該資料庫擁有視覺化和程式碼為本的界面,用於定義資料模型與關係,這將加速您的應用程式開發。
以下是可在 AWS 上執行資料建模的方式:
- 使用 Amazon RDS,透過 Amazon Aurora MySQL 相容版本、Amazon Aurora PostgreSQL 相容版本、SQL 伺服器和其他熱門資料庫引擎來構建和擴展資料庫
- 使用 Neptune,可以建置高可用性圖表應用程式,每秒可處理 100,000 多個查詢
- Amplify Datastore 提供用戶端函式庫,可用來輕鬆查詢、更新、排序或篩選雲端上的資料
立即建立帳戶,開始使用 AWS 上的邏輯資料模型和實體資料模型。