【原 】 淺析數(shù)據(jù)模型和數(shù)據(jù)建?!居袌D易懂】
通過使用數(shù)據(jù)模型,開發(fā)人員、數(shù)據(jù)架構(gòu)師和業(yè)務(wù)分析師等各種利益相關(guān)者可以在構(gòu)建數(shù)據(jù)庫和倉庫之前就他們將捕獲的數(shù)據(jù)以及他們希望如何使用這些數(shù)據(jù)達(dá)成一致。 數(shù)據(jù)模型指定要捕獲哪些信息、如何存儲(chǔ)它以及它如何與業(yè)務(wù)的各個(gè)組件相關(guān)聯(lián)。數(shù)據(jù)建模的最終目標(biāo)是為整個(gè)組織建立清晰的數(shù)據(jù)標(biāo)準(zhǔn)。例如,電子商務(wù)網(wǎng)站的模型可能會(huì)指定將捕獲的客戶數(shù)據(jù)。它將定義如何標(biāo)記該數(shù)據(jù)及其與產(chǎn)品信息和銷售流程的關(guān)系。 就像房子的藍(lán)圖一樣,當(dāng)事情變得復(fù)雜時(shí),數(shù)據(jù)模型在開始建造之前定義了要建造什么以及如何建造。這種方法可以防止數(shù)據(jù)庫設(shè)計(jì)和開發(fā)錯(cuò)誤、捕獲不必要的數(shù)據(jù)以及在多個(gè)位置復(fù)制數(shù)據(jù)。 數(shù)據(jù)模型分為三類:概念模型、邏輯模型和物理模型。它們幫助利益相關(guān)者圍繞數(shù)據(jù)項(xiàng)目的原因、方式和內(nèi)容保持一致。每種類型的模型在數(shù)據(jù)建模過程中服務(wù)于不同的目的和受眾。 概念數(shù)據(jù)模型以可視化方式管理正在建模的業(yè)務(wù)流程的概念和規(guī)則,而無需深入了解技術(shù)細(xì)節(jié)??梢允褂么丝梢暬J絹硎箻I(yè)務(wù)利益相關(guān)者、系統(tǒng)架構(gòu)師和開發(fā)人員在項(xiàng)目和業(yè)務(wù)需求方面保持一致:數(shù)據(jù)系統(tǒng)將包含哪些信息、元素應(yīng)如何相互關(guān)聯(lián)以及它們的依賴關(guān)系。 通常,概念模型表示系統(tǒng)內(nèi)容、組織和相關(guān)業(yè)務(wù)規(guī)則的高級(jí)視圖。例如,電子商務(wù)業(yè)務(wù)的數(shù)據(jù)模型將包含供應(yīng)商、產(chǎn)品、客戶和銷售,業(yè)務(wù)規(guī)則是每個(gè)供應(yīng)商需要提供至少一種產(chǎn)品。 概念模型沒有標(biāo)準(zhǔn)格式。重要的是,它可以幫助技術(shù)和非技術(shù)利益相關(guān)者就其數(shù)據(jù)項(xiàng)目的目的、范圍和設(shè)計(jì)達(dá)成一致。以下圖形都是概念數(shù)據(jù)模型的示例。
邏輯數(shù)據(jù)模型基于概念模型并定義項(xiàng)目的數(shù)據(jù)元素和關(guān)系,可以看到數(shù)據(jù)庫中特定實(shí)體的名稱以及它們的屬性。繼續(xù)使用電子商務(wù)示例:邏輯模型顯示產(chǎn)品是通過“產(chǎn)品 ID”標(biāo)識(shí)的,具有描述、類別和單價(jià)等屬性。 數(shù)據(jù)架構(gòu)師和業(yè)務(wù)分析師使用邏輯數(shù)據(jù)模型來規(guī)劃數(shù)據(jù)庫系統(tǒng)中的實(shí)施。以下是邏輯數(shù)據(jù)模型的示例。
物理數(shù)據(jù)模型變得技術(shù)化。數(shù)據(jù)庫分析師和開發(fā)人員使用它來設(shè)計(jì)數(shù)據(jù)庫和相關(guān)數(shù)據(jù)結(jié)構(gòu)。該模型指定了將存儲(chǔ)的數(shù)據(jù)類型以及技術(shù)數(shù)據(jù)要求。 數(shù)據(jù)類型規(guī)范的例子是:一條數(shù)據(jù)是整數(shù)(不帶小數(shù)點(diǎn)的數(shù)字)還是浮點(diǎn)型(帶小數(shù)位的數(shù)字)。技術(shù)要求包括有關(guān)存儲(chǔ)需求、訪問速度和數(shù)據(jù)冗余的詳細(xì)信息——將一條數(shù)據(jù)存儲(chǔ)在多個(gè)位置以提高持久性并提高查詢性能。
在實(shí)踐中,只有非常大的項(xiàng)目,比如為供應(yīng)鏈業(yè)務(wù)建模,才會(huì)從概念模型轉(zhuǎn)向邏輯模型再到物理模型。大多數(shù)其他項(xiàng)目跳過概念階段,將大部分時(shí)間花在邏輯建模上。一些團(tuán)隊(duì)甚至同時(shí)涵蓋物理階段的元素,因?yàn)閺氖逻壿嬆P偷娜藛T也負(fù)責(zé)技術(shù)實(shí)施。 有許多不同的技術(shù)來設(shè)計(jì)和構(gòu)建數(shù)據(jù)庫。應(yīng)該探索這些技術(shù),并在概念階段結(jié)束時(shí)確定最適合的技術(shù)。這些數(shù)據(jù)建模方法定義了數(shù)據(jù)庫的結(jié)構(gòu)化方式,并與可用于管理數(shù)據(jù)項(xiàng)目的格式或技術(shù)類型密切相關(guān)。 在關(guān)系數(shù)據(jù)模型中,數(shù)據(jù)存儲(chǔ)在表中,其中特定元素鏈接到其他表中的信息。實(shí)體可以具有一對(duì)一、一對(duì)多或多對(duì)多的關(guān)系。 關(guān)系數(shù)據(jù)庫通常使用 SQL(結(jié)構(gòu)化查詢語言)語言,用于訪問和管理數(shù)據(jù)。它們經(jīng)常用于CRM系統(tǒng)以及其他類型的交易處理。
實(shí)體-關(guān)系模型(有時(shí)稱為 ER 模型)類似于關(guān)系模型。它展示了系統(tǒng)中不同元素之間的關(guān)系,但不涉及技術(shù)細(xì)節(jié)。可以在概念階段使用 ER 模型來協(xié)調(diào)技術(shù)和非技術(shù)利益相關(guān)者。 理解維度數(shù)據(jù)模型,可以想象一個(gè)立方體。立方體的每一面都代表嘗試捕獲的數(shù)據(jù)的一個(gè)方面。 例如,假設(shè)企業(yè)向不同的客戶群銷售多種產(chǎn)品,并且要評(píng)估一段時(shí)間內(nèi)的銷售業(yè)績??梢詫⑵湔宫F(xiàn)為具有時(shí)間、產(chǎn)品和客戶細(xì)分維度的數(shù)據(jù)立方體。通過在立方體的軸上上下左右移動(dòng),可以在所有這些維度上進(jìn)行比較。我們將在任何時(shí)間看到這些產(chǎn)品的銷售額如何相互比較以及不同的客戶群。
在概念階段使用立方體模型。這種多維數(shù)據(jù)集在邏輯階段最常見的表現(xiàn)之一是“星型模式”,如下圖所示。起初,它可能看起來像一個(gè)關(guān)系模型。盡管如此,星型模式還是不同的,因?yàn)樗幸粋€(gè)連接到許多其他節(jié)點(diǎn)的中心節(jié)點(diǎn)。
在概念階段,大多數(shù)人在白板上繪制數(shù)據(jù)模型。這樣的草圖類似于圖模型。它由“節(jié)點(diǎn)”和邊組成——節(jié)點(diǎn)代表數(shù)據(jù)存儲(chǔ)的位置,邊代表節(jié)點(diǎn)之間的關(guān)系。這也是這種方法的主要優(yōu)點(diǎn):“你在白板上畫的東西就是你存儲(chǔ)在數(shù)據(jù)庫中的東西。”
其他技術(shù)要求將概念階段的輸出轉(zhuǎn)換為邏輯和物理實(shí)現(xiàn)的不同格式,例如,從 ER 轉(zhuǎn)換為關(guān)系模型或從多維數(shù)據(jù)集模型轉(zhuǎn)換為星型模式。圖模型并非如此,可以使用 Neo4j 等技術(shù)直接實(shí)現(xiàn)它們,Neo4j 是一個(gè)原生圖形數(shù)據(jù)庫平臺(tái)。 數(shù)據(jù)模型是一種可視化的表示,它將抽象的想法轉(zhuǎn)化為技術(shù)實(shí)施計(jì)劃。它們有助于避免代價(jià)高昂的數(shù)據(jù)基礎(chǔ)架構(gòu)拆除和重建,因?yàn)閿?shù)據(jù)建模人員需要在創(chuàng)建數(shù)據(jù)庫和倉庫之前考慮他們需要的數(shù)據(jù)、數(shù)據(jù)關(guān)系、數(shù)據(jù)架構(gòu),甚至項(xiàng)目是否可行。 數(shù)據(jù)模型還有助于數(shù)據(jù)治理和法律合規(guī)性。它要求從項(xiàng)目一開始就設(shè)置標(biāo)準(zhǔn),這樣團(tuán)隊(duì)就不會(huì)遇到?jīng)_突的數(shù)據(jù)集,這些數(shù)據(jù)集需要在使用之前進(jìn)行清理,或者更糟糕的是,根本無法使用。 數(shù)據(jù)模型和標(biāo)準(zhǔn)化有助于避免在整個(gè)組織中以近十種不同方式標(biāo)記的注冊字段之類的情況。 它還有助于在建模時(shí)識(shí)別敏感信息(社會(huì)保險(xiǎn)號(hào)、密碼、信用卡號(hào)),以便在開始構(gòu)建之前讓安全和法律專家參與進(jìn)來。 安全、準(zhǔn)確和高質(zhì)量的數(shù)據(jù)為組織中的各個(gè)團(tuán)隊(duì)帶來了一系列現(xiàn)實(shí)的好處。產(chǎn)品團(tuán)隊(duì)可以更快地迭代并構(gòu)建身臨其境的用戶體驗(yàn)。分析和商業(yè)智能團(tuán)隊(duì)無需繁重的變通方法即可創(chuàng)建查詢。營銷團(tuán)隊(duì)可以通過根據(jù)用戶行為和特征個(gè)性化消息傳遞來改進(jìn)工作。
轉(zhuǎn)藏
分享
獻(xiàn)花(0 )
+1