天天看點

次元模組化理論

  • 事實表

    發生在現實世界中的操作型事件,其所産生的可度量數值,存儲在事實表中。例如,一 個按照地區、産品、月份劃分的銷售量和銷售額的事實表如下:

    fact_銷售量和銷售額事實表

    次元模組化理論
  1. 在以上事實表的示例中,“地區 ID”、“産品 ID”、“月份 ID”為鍵值列,“銷售 量”、“銷售額”為度量列,所謂度量列就是列的資料可度量,度量列一般為可統計的 數值列。事實表中每個列通常要麼是鍵值列,要麼是度量列。
  2. 事實表中一般會使用一個代号或者整數來代表次元成員,而不使用描述性的名稱,例如: ID 代号。上表中的“地區 ID”、“産品 ID”、“月份 ID”就是次元列,就是觀察數 據的角度。使用代号或整數來代表次元成員的原因是事實表往往包含很多資料行,使用 代号或整數這種鍵值方式可以有效減少事實表的大小。
  3. 在事實表中使用代号或者整數鍵值時,次元成員的名稱需要放在另一種表中,也就是維 度表。通常事實表中的每個次元都對應一個次元表。
  4. 在資料倉庫中,事實表的字首為“fact”
  • 次元表

    維 度 表 包 含 了 維 度 的 每 個 成 員 的 特 定 名 稱 。 維 度 成 員 的 名 稱 稱 為 “ 屬 性 ” (Attribute),假設“産品 ID”次元表中有 3 種産品,例如:

    次元模組化理論
  1. 如上圖,“産品名稱”是産品次元表中的一個屬性,次元表中可以包含很多屬性列。
  2. 産品次元表中的“産品 ID”與事實表中的“産品 ID”相比對,稱為“鍵屬性”,在當 前産品次元表中一個“産品 ID”隻有一個“産品名稱”,顯示時使用“産品名稱”來 代替,是以“産品名稱”也被認為是“鍵屬性”的一部分。

    在資料倉庫中,次元表中的鍵屬性必須為次元的每個成員包含一個對應的唯一值,用關 系型資料庫術語描述就是,鍵屬性是主鍵列,也就是說次元表中一般為單一主鍵。

  3. 每個次元表中的鍵值屬性都與事實表中對應的次元相比對,在次元表中“産品 ID”類 似關系型資料庫中的主鍵,在事實表中“産品 ID”類似關系型資料庫中的外鍵,次元 表和事實表就是按照鍵值屬性“産品 ID”進行關聯的。在次元表中出現一次的每個鍵 值都會在事實表中出現多次。例如上圖中,産品 ID 中 1111 在事實表中對應多行。
  4. 在資料倉庫中,次元表的字首為"dim"
  • 總結

    在資料倉庫中事實表就是我們需要關注的内容,次元表就是我們從哪些角度觀察這些内 容。例如,某地區商品的銷量,是從地區這個角度觀察商品銷量的。事實表就是銷量表,維 度表就是地區表。

    在多元分析的商業智能解決方案中,根據事實表和次元表的關系,又可将常見的模型分 為星型模型和雪花型模型。

繼續閱讀