成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數(shù)據(jù)倉庫中的七種建模方法及示例

大數(shù)據(jù) 數(shù)據(jù)倉庫
試象一下,你是一家繁忙餐廳的分析工程師。每天,顧客都會預訂、下訂單并完成付款。所有這些數(shù)據(jù)都會流入餐廳的交易數(shù)據(jù)庫,記錄每次互動的詳細信息。

試象一下,你是一家繁忙餐廳的分析工程師。每天,顧客都會預訂、下訂單并完成付款。所有這些數(shù)據(jù)都會流入餐廳的交易數(shù)據(jù)庫,記錄每次互動的詳細信息。

但是,事務型數(shù)據(jù)庫雖然非常適合日常運營,但并不適合分析數(shù)據(jù)以發(fā)現(xiàn)有助于業(yè)務增長的趨勢和見解。這就是數(shù)據(jù)倉庫的作用所在。數(shù)據(jù)倉庫是一個單獨的數(shù)據(jù)庫,經(jīng)過優(yōu)化,可用于存儲大量歷史數(shù)據(jù)以及快速查詢和分析。

挑戰(zhàn)在于如何構建倉庫中的數(shù)據(jù),以便進行高效分析,同時保持足夠的靈活性以應對不斷變化的業(yè)務需求。數(shù)據(jù)倉庫中的數(shù)據(jù)建模有幾種常見和不太常見的方法。在本文中,我們將介紹七種關鍵的建模技術,權衡它們的優(yōu)缺點,并幫助您為數(shù)據(jù)倉庫選擇正確的方法。

一、事務數(shù)據(jù)庫示例

在深入研究數(shù)據(jù)倉庫建模之前,讓我們簡單看一下餐廳的典型事務數(shù)據(jù)庫可能包含哪些內(nèi)容:

  • 包含姓名、電子郵件、電話號碼等詳細信息的客戶表
  • 預訂表,包括預訂日期、時間、團體規(guī)模等
  • 帶有描述的產(chǎn)品表,鏈接到產(chǎn)品價格和產(chǎn)品組表
  • 訂單表將顧客與他們所選的菜單項聯(lián)系起來
  • 訂單明細表,其中包含每個訂單的每個菜單項的數(shù)量
  • 包含總額、付款方式等的付款表。

交易數(shù)據(jù)庫使用針對處理交易進行優(yōu)化的規(guī)范化結構。但這種結構使分析和報告更加困難。數(shù)據(jù)倉庫建模方法對數(shù)據(jù)進行非規(guī)范化和重組,以優(yōu)化整合層中的分析,同時仍便于快速寫入加工層。

二、數(shù)據(jù)倉庫建模方法

1.第三范式(3NF)

第三范式 (3NF) 是一種經(jīng)典的關系數(shù)據(jù)庫建模方法,可最大限度地減少數(shù)據(jù)冗余。在 3NF 中,每個非鍵列僅依賴于表的主鍵。

將 3NF 應用于我們的餐廳數(shù)據(jù)倉庫,我們將進一步分離表格,這樣各個表格結構中就不會有層次結構,而是作為表格鏈接的層次結構。訂單和付款等交易表將引用元數(shù)據(jù)表的主鍵,而元數(shù)據(jù)表又將引用更高級別的元數(shù)據(jù)表。

本質(zhì)上,我們要做的改變是確定客戶表包含地址詳細信息,這是自然層次結構。然后,我們會將它們拆分為組件表。通常,您不會將此方法用于整合層,但它可能適用于加工層。如果您正在提取可能以不同粒度級別本機構建的多個源,則尤其如此。

3NF 實體關系數(shù)據(jù)庫3NF 實體關系數(shù)據(jù)庫

優(yōu)點:

  • 減少數(shù)據(jù)冗余,節(jié)省存儲空間
  • 通過主鍵關系保證數(shù)據(jù)完整性
  • 提供靈活性以適應未來的變化

缺點:

  • 可能需要進行許多表連接進行分析,從而影響查詢性能
  • 對于業(yè)務用戶來說,理解和操作起來可能很復雜

2.Kimball 星型模式

Kimball 星型模式是數(shù)據(jù)倉庫中的一個關鍵概念,由數(shù)據(jù)倉庫和商業(yè)智能領域的杰出人物 Ralph Kimball 提出。它旨在簡化數(shù)據(jù)存儲并提高查詢性能,使復雜的數(shù)據(jù)結構更易于管理并更易于進行業(yè)務分析。

關鍵部件

  1. 事實表:事實表是星型模式的核心,包含定量數(shù)據(jù),例如銷售額、交易次數(shù)和其他可衡量指標。事實表中的每條記錄都對應一個特定事件或交易,并包含鏈接到維度表的外鍵。由于它保存的交易數(shù)據(jù)量很大,因此該表通常很大。通常,它包括銷售額、銷售量和成本等數(shù)值度量,以及引用維度表的鍵。
  2. 維度表:維度表是為事實表中的數(shù)據(jù)提供上下文的外圍表。它們包含與業(yè)務維度相關的描述性屬性,例如時間段、地理位置、產(chǎn)品、客戶和員工。與事實表相比,維度表通常更小且更靜態(tài)。它們以非規(guī)范化形式存儲數(shù)據(jù)以簡化查詢,使其更易于理解和導航。

結構和設計

星型模式因其布局類似星星而得名。事實表位于中心,周圍是維度表,每個維度表都通過外鍵連接到事實表。這種設計非常直觀,允許用戶在事實表和維度表之間執(zhí)行直接連接。

在我們的餐廳示例中,我們將有一個中央訂單事實表,其中包含客戶、日期、產(chǎn)品等維度表的外鍵。維度表包含冗余、非規(guī)范化的數(shù)據(jù),以避免進一步連接。這是倉庫中整合層或表示層的一種相當標準的方法。

訂單數(shù)據(jù)的星型模式 ERD訂單數(shù)據(jù)的星型模式 ERD

優(yōu)點:

  • 通過最小化連接來優(yōu)化快速查詢
  • 對于熟悉業(yè)務流程的業(yè)務用戶來說很直觀
  • 聚合計算簡單

缺點:

  • 非規(guī)范化增加了數(shù)據(jù)冗余
  • 處理緩慢變化的維度可能很棘手
  • 適應未來變化的靈活性較差

3.雪花模式

雪花模式是數(shù)據(jù)倉庫中星型模式的一種變體,旨在處理復雜且高度規(guī)范化的數(shù)據(jù)結構。該模式因其復雜的雪花狀形狀而得名,它將數(shù)據(jù)組織到多個相關表中,從而增強了數(shù)據(jù)完整性并減少了冗余。然而,這會增加查詢編寫的復雜性并可能影響性能。它幾乎可以看作是星型模式和 3NF 的混合體。

關鍵部件

  1. 事實表:事實表仍然是雪花模式中的中心表,包含定量數(shù)據(jù),例如銷售額、收入或其他業(yè)務指標。它包含維度表的外鍵,為事實提供背景信息。事實表中的每條記錄代表一個可測量的事件,并包括數(shù)值度量和鏈接到相關維度的外鍵。
  2. 維度表:與星型模式不同,雪花模式進一步規(guī)范化了維度表。每個維度表都可以分解為多個相關表,從而創(chuàng)建更規(guī)范的結構。例如,我們的客戶維度將地址拆分為郵政編碼、城市和州表,每個表都通過外鍵鏈接。這種規(guī)范化減少了數(shù)據(jù)冗余,但增加了查詢所需的連接數(shù)。

結構和設計

雪花模式由于其多級結構而類似于雪花。維度表被規(guī)范化為多個相關表,分散成復雜的網(wǎng)狀結構。這種設計旨在通過消除冗余來節(jié)省存儲空間并提高數(shù)據(jù)完整性。

訂單數(shù)據(jù)的雪花模式訂單數(shù)據(jù)的雪花模式

優(yōu)點:

  • 與星型模式相比,減少了數(shù)據(jù)冗余
  • 通過規(guī)范化確保數(shù)據(jù)完整性
  • 使維度表更易于維護

缺點:

  • 與星型模式相比,可能需要更多連接,從而影響查詢性能
  • 商業(yè)用戶更難理解和駕馭

4.寬表 (OBT)

One-Big-Table (OBT) 設計,也稱為平面表或?qū)挶恚且环N數(shù)據(jù)倉庫方法,其中所有數(shù)據(jù)都合并到單個非規(guī)范化表中。這種方法與星型和雪花型等規(guī)范化模式形成鮮明對比,它提供了更簡單的結構,但代價是冗余度增加,并且在處理非常大的數(shù)據(jù)集時可能會出現(xiàn)性能問題。

關鍵部件

  1. 單表:OBT 設計的核心特征是所有相關數(shù)據(jù)都存儲在一個綜合表中。該表包含大量列,可捕獲分析所需的所有屬性和度量。該表可能包含數(shù)千列,每行代表一條包含多個維度和指標的唯一記錄。
  2. 屬性和指標:在 OBT 設計中,屬性(通常在其他模式的維度表中找到)和指標(通常在事實表中找到)被組合到單個表中。例如,客戶詳細信息、產(chǎn)品信息和銷售數(shù)據(jù)都將存儲在同一張表中,每條記錄都提供交易或事件的完整快照。

結構和設計

OBT 設計的結構非常簡單,只包含一個表,其中每行包含所有必要的數(shù)據(jù)點。這種扁平結構無需連接,用戶無需了解復雜的表關系即可輕松查詢和檢索數(shù)據(jù)。

對于我們的餐廳,我們將為三個關鍵事件(預訂、訂單和付款)分別設置一個大表。我看到過一些關于 OBT 還是星型模式是更好的方法的相當激烈的爭論。答案是“視情況而定”。如果您將數(shù)據(jù)拉入 Power BI,它將需要星型模式樣式的數(shù)據(jù)集。但是,如果您將數(shù)據(jù)拉入 Tableau,您可能更喜歡 OBT 方法。但應該注意的是,如果您確實選擇 OBT,則應將任何可重復使用的邏輯保留在可以反復引用的支持表中。

OBT 示例OBT 示例

優(yōu)點:

  • 極快的查詢性能,無需連接
  • 所有數(shù)據(jù)都集中在一處,簡單易懂
  • 適合數(shù)據(jù)科學消費

缺點:

  • 數(shù)據(jù)冗余度高,需要大量存儲空間
  • 如果不改變整個表結構,就很難做出改變
  • 包含許多列的查詢可能難以編寫和維護

5.數(shù)據(jù)倉庫 2.0

Data Vault 2.0 是一種現(xiàn)代數(shù)據(jù)倉庫方法,旨在提供可擴展、靈活且可審計的數(shù)據(jù)模型。它由 Dan Linstedt 開發(fā),以原始 Data Vault 方法為基礎,對其進行了增強,以更好地支持當今復雜的數(shù)據(jù)環(huán)境。Data Vault 2.0 滿足了處理大數(shù)據(jù)、非結構化數(shù)據(jù)和各種數(shù)據(jù)源的需求,同時保持了數(shù)據(jù)完整性和歷史準確性。與 3NF 一樣,這將位于您的銀層。這不是您指向 BI 工具的東西。

關鍵部件

  1. 樞紐:樞紐存儲具有唯一代理鍵和元數(shù)據(jù)(如加載日期和源信息)的唯一業(yè)務鍵。每個樞紐代表一個核心業(yè)務概念,例如客戶、產(chǎn)品或訂單。樞紐高度穩(wěn)定且很少發(fā)生變化,為數(shù)據(jù)倉庫提供一致的參考點。
  2. 鏈接:鏈接捕獲存儲在中心中的業(yè)務鍵之間的關系。每個鏈接表包含相關中心的外鍵以及元數(shù)據(jù)。鏈接表示實體之間的事務、關聯(lián)或?qū)哟谓Y構。它們用于對多對多關系以及關系隨時間的變化進行建模。
  3. 衛(wèi)星:衛(wèi)星存儲中心中業(yè)務鍵或鏈接中關系的描述性屬性和上下文。它們包括用于跟蹤隨時間變化的元數(shù)據(jù),例如加載日期和來源。衛(wèi)星可以在不影響核心業(yè)務鍵和關系的情況下發(fā)展,從而可以靈活地適應新的業(yè)務需求。

結構和設計

Data Vault 2.0 采用模塊化架構設計,將數(shù)據(jù)存儲分為這三種類型的表,從而提高可擴展性和靈活性。集線器、鏈路和衛(wèi)星被設計為增量和并行加載,從而可以高效處理大量數(shù)據(jù)和隨時間變化的數(shù)據(jù)。

數(shù)據(jù)倉庫 ERD 示例數(shù)據(jù)倉庫 ERD 示例

優(yōu)點:

  • 旨在應對業(yè)務需求隨時間的變化
  • 將結構變化與信息變化分開
  • 提供可追溯性并保存歷史記錄

缺點:

  • 設計和實施起來可能很復雜
  • 需要許多表格和連接來匯總數(shù)據(jù)進行分析
  • 查詢可能難以編寫和理解

6.活動模式

活動模式是 Ahmed Elsamadisi 設計的一種數(shù)據(jù)倉庫方法,用于以結構化和高效的方式捕獲業(yè)務活動或事件的詳細記錄。此模式側(cè)重于記錄企業(yè)內(nèi)部執(zhí)行的操作或交易,因此對于事件驅(qū)動數(shù)據(jù)和詳細交易日志記錄特別有用。它已用于需要跟蹤大量細粒度事件的系統(tǒng),例如電子商務網(wǎng)站、金融系統(tǒng)或物聯(lián)網(wǎng)應用程序。

關鍵部件

  1. 活動表:活動模式中的中心表是活動表,它記錄每個業(yè)務活動或事件。活動表中的每一行代表單個事件或交易,捕獲有關發(fā)生了什么、何時發(fā)生以及其他相關背景的詳細信息。此表屬性已定義為標準的一部分,因此易于實現(xiàn)。
  2. 維度表:活動表附帶一個可選維度表,該維度表為活動表中記錄的事件提供額外的背景信息。維度可能包括有關客戶、產(chǎn)品、位置、時間和其他相關實體的詳細信息,具體取決于它所涉及的活動流。

在我們的餐廳示例中,我們可能有一個帶有相關客戶維度的客戶活動表。活動表將跟蹤客戶的活動,例如他們的預訂、訂單和付款。這些活動的詳細信息保存在列中feature_json,并有一個可選列用于存儲相關的收入影響。

活動架構示例活動架構示例

優(yōu)點:

  • 設計簡單直觀,表格數(shù)量極少
  • 無需更改架構即可捕獲實體的其他活動
  • 僅當需要跟蹤新實體時才需要新表

缺點:

  • 相對較新的方法,尚未被廣泛采用
  • 可能不適合所有業(yè)務領域和分析需求

7.以實體為中心的建模

以實體為中心的建模是一種靈活的方法,由 Maxime Beauchemin 提出,專注于圍繞客戶和產(chǎn)品等實體進行建模。每個實體都有自己的表,使用 JSON 來跟蹤包括聚合在內(nèi)的各種指標。這種方法不需要額外的維度表,因為實體表位于實體的最低粒度,并且可以直接在表中包含其屬性。

在餐廳環(huán)境中,我們會有一個客戶表,其中包含客戶屬性列,加上一個 json 列來保存時間綁定指標,例如visit.7d,,visit.14d。sale.30d

以實體為中心的建模以實體為中心的建模

優(yōu)點:

  • 靈活適應不斷變化的業(yè)務需求
  • 只需少量表格即可輕松理解
  • 在指標欄內(nèi)有效捕捉歷史記錄

缺點:

  • 查詢可能很復雜,通常需要解除半結構化數(shù)據(jù)的嵌套
  • 實體具有重疊屬性或行為類型時的挑戰(zhàn)
  • 與星型模式相比,更難實施完整性約束

三、選擇正確的建模方法

考慮到這七種常見的數(shù)據(jù)倉庫建模方法,如何為您的數(shù)據(jù)倉庫選擇正確的方法?請考慮以下因素:

  • 分析要求:您需要回答哪些類型的問題?選擇針對這些查詢模式進行優(yōu)化的模型。
  • 數(shù)據(jù)量和可擴展性:考慮您現(xiàn)在擁有的數(shù)據(jù)量以及未來預期的數(shù)據(jù)量。有些方法的可擴展性優(yōu)于其他方法。
  • 易用性:考慮誰將查詢數(shù)據(jù)倉庫。有些模型對于非技術用戶來說更直觀。
  • 靈活性:您的業(yè)務可能會不斷發(fā)展。選擇能夠適應不斷變化的需求的模型。
  • 性能:考慮查詢速度和數(shù)據(jù)冗余之間的權衡。非規(guī)范化模型通常速度更快,但需要更多存儲空間。

最后,“正確”的數(shù)據(jù)倉庫建模方法取決于您獨特的業(yè)務需求和優(yōu)先事項。通過了解每種建模技術的優(yōu)勢和劣勢,您可以設計一個數(shù)據(jù)倉庫,提供快速、靈活且富有洞察力的分析,以推動公司發(fā)展。

責任編輯:華軒 來源: 數(shù)據(jù)驅(qū)動智能
相關推薦

2023-08-14 16:56:53

2022-08-01 11:30:27

數(shù)據(jù)建模

2022-10-27 09:50:41

數(shù)據(jù)倉開發(fā)

2009-01-18 16:01:42

數(shù)據(jù)倉庫數(shù)據(jù)建模常用術語

2014-05-13 09:56:24

數(shù)據(jù)挖掘

2023-10-08 16:26:23

數(shù)據(jù)倉庫

2025-06-10 03:00:00

數(shù)據(jù)倉庫數(shù)據(jù)模型大數(shù)據(jù)

2014-01-10 10:42:33

2025-01-15 10:46:23

開發(fā)JavaScript集合

2011-03-25 16:15:42

SQL Server

2023-11-23 16:59:37

數(shù)據(jù)倉庫建模

2013-10-16 15:56:41

虛擬化數(shù)據(jù)丟失

2023-01-11 10:29:26

2013-07-25 09:32:58

虛擬化數(shù)據(jù)丟失

2010-06-10 14:45:24

UML建模語言

2011-07-20 11:12:41

數(shù)據(jù)倉庫星型模式事實表

2011-05-30 13:37:46

JSP

2022-05-24 14:37:49

React條件渲染

2025-05-13 08:20:58

2021-07-16 09:55:46

數(shù)據(jù)工具軟件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲激情综合 | 日韩欧美精品在线播放 | 视频1区2区 | 欧美日韩高清在线一区 | 久久久久亚洲 | 夜夜骚| 欧美日韩亚洲国产 | 欧美日韩一 | 伊人中文字幕 | h片在线观看网站 | 久久久久国产一区二区三区 | 欧美在线观看一区 | 久久国产成人精品国产成人亚洲 | 黄色一级免费观看 | 综合久久av | 欧美专区在线视频 | 99久久久久久久 | 国产精品久久久精品 | 午夜精品久久 | 噜久寡妇噜噜久久寡妇 | 97久久久久久久久 | 久久一区二区免费视频 | 亚洲三区在线观看 | 国产成人精品久久二区二区91 | 亚洲高清在线观看 | wwwxxx日本在线观看 | 久久不射电影网 | 亚洲精品在线视频 | 日韩精品一区中文字幕 | 国产日韩欧美在线 | 日本一二三区在线观看 | 国产精品福利视频 | 9久久婷婷国产综合精品性色 | 精品国产乱码久久久久久1区2区 | 国产成人精品亚洲日本在线观看 | 日韩一级黄色片 | 91在线看 | 精品国产乱码久久久久久丨区2区 | 欧美精品三区 | 国产精品久久久久久久毛片 | 国产精品99一区二区 |