本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 1:識別使用案例和邏輯資料模型
一家汽車公司希望建立一個交易部件管理系統,以存儲和搜索所有可用的汽車零件,並在不同的組件和零件之間建立關係。例如,一輛汽車包含多顆電池,每顆電池包含多個高層級模組,每個模組包含多個電芯,每個電芯包含多個低階元件。
一般來說,為了建置階層關係模型,Amazon Neptune 等圖形資料庫是更好的選擇。然而,在某些情況下,Amazon DynamoDB 因其靈活性、安全性、效能和可擴展性而成為階層式資料模型的更佳替代方案。
例如,您可能會建置一個系統,其中 80-90% 的查詢是交易,DynamoDB 非常適合該系統。在此範例中,另外 10-20% 的查詢是關聯式的,其中像 Neptune 這樣的圖形資料庫更適合。在這種情況下,在架構中包含一個額外的數據庫以僅滿足 10-20% 的查詢可能會增加成本。它還增加了維護多個系統和同步數據的操作負擔。相反,您可以在 DynamoDB 中對該 10-20% 的關聯式查詢建模。
繪製汽車元件的範例樹狀目錄可以協助您映射它們之間的關係。下列圖表顯示具有四個層級的相依性圖形。CM1 是範例汽車本身的頂層元件。它具有兩個子元件,用於兩個範例電池即 CM2 和 CM3。每個電池都具有兩個子元件,即模組。CM2 具有模組 CM4 和 CM5,而 CM3 具有模組 CM6 和 CM7。每個模組都具有幾個子元件,即電芯。CM4 模組具有兩個電芯,即 CM8 和 CM9。CM5 具有一個電芯即 CM10。CM6 和 CM7 還沒有任何關聯的電芯。
本指南將使用此樹狀目錄及其元件識別符作為參考。頂端元件將稱為父項,子元件將稱為子項。例如,頂端元件 CM1 是 CM2 和 CM3 的父項。CM2 是 CM4 和 CM5 的父項。這描繪了父項和子項關係。
從樹狀目錄中,您可以看到元件的完整相依性圖形。例如,CM8 依賴於 CM4,CM4 依賴於 CM2,CM2 依賴於 CM1。此樹狀目錄將完整的相依性圖形定義為路徑。路徑描述了以下兩個項目:
-
相依性圖形
-
樹狀目錄中的位置
填寫業務需求的模板:
提供有關您的使用者的資訊:
使用者 |
Description |
僱員 |
需要汽車及其組件信息的汽車公司的內部員工 |
提供有關資料來源以及如何擷取資料的資訊:
來源 |
Description |
使用者 |
管理系統 |
該系統將存儲與可用汽車零件及其與其他組件和零件之間的關係相關的所有數據。 |
僱員 |
提供有關如何使用數據的信息:
消費者 |
Description |
使用者 |
管理系統 |
擷取父元件 ID 的所有直接子元件。 |
僱員 |
管理系統 |
擷取元件 ID 之所有子元件的遞迴清單。 |
僱員 |
管理系統 |
請參閱元件的祖先。 |
僱員 |