QlikView - 星型模式



星型模式是一種資料模型,其中多個維度連結到一個事實表。當然,在更大的模型中,可以有多個事實錶鏈接到多個維度和其他事實表。此模型的實用性在於執行快速查詢,並在各種表之間進行最少的連線。事實表包含資料,這些資料是度量,並且具有數值。計算應用於事實表中的欄位。維度表的唯一鍵用於將其連結到事實表,事實表通常也具有相同欄位名稱的鍵。因此,事實表包含來自整個維度表的鍵,並形成用於各種查詢的連線主鍵。

輸入資料

下面列出了包含來自各種供應商和地區的不同產品的資料的表。供應也發生在不同的時間間隔內,這些時間間隔在時間維度表中捕獲。

產品維度

它包含產品類別和產品名稱。產品 ID 欄位是唯一鍵。

ProductID,ProductCategory,ProductName
1,Outdoor Recreation,Winter Sports & Activities
2,Clothing,Uniforms
3,Lawn & Garden	Power, Equipment
4,Athletics,Rugby
5,Personal Care,Shaver
6,Arts & Entertainment,Crafting Materials
7,Hardware,Power Tool Batteries

區域維度

它包含供應商所在的區域名稱。RegionID 欄位是唯一鍵。

RegionID,Continent,Country
3,North America, USA
7,South America, Brazil
12,Asia,China
2,Asia,Japan
5,Europe,Belgium

供應商維度

它包含供應上述產品的供應商名稱。SupplierID 欄位是唯一鍵。

SupplierID,SupplierName
3S12,Supre Suppliers
4A15,ABC Suppliers
4S66,Max Sports
5F244,Nice Foods
8A45,Artistic angle

時間維度

它包含供應上述產品的時間段。TimeID 欄位是唯一鍵。

TimeID,Year,Month
1,2012,Feb
2,2012,May
3,2012,Sep
4,2013,Aug
5,2014,Jan
6,2014,Nov

供應商數量事實

它包含所供應數量的值及其缺陷百分比。它透過與名稱相同的鍵連線到上述每個維度。

ProductID,RegionID,TimeID,SupplierID,Quantity, DefectPercentage
1,3,3,5F244,8452,12
2,3,1,4S66,5124,8.25
3,7,1,8A45,5841,7.66
4,12,2,4A15,5123,1.25
5,5,3,4S66,7452,8.11
6,2,5,4A15,5142,3.66
7,2,1,4S66,452,2.06

載入指令碼

上述資料透過使用指令碼編輯器載入到 QlikView 記憶體中。從“檔案”選單開啟指令碼編輯器或按Control+E。從“來自檔案的資料”選項卡中選擇表文件選項,並瀏覽包含上述資料的檔案。單擊確定並按Control+R將資料載入到 QlikView 的記憶體中。以下是讀取每個上述檔案後出現的指令碼。

LOAD ProductID, 
     ProductCategory, 
     ProductName
FROM
[C:\Qlikview\images\StarSchema\Product_dimension.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

LOAD TimeID, 
     Year, 
     Month
FROM
[C:\Qlikview\images\StarSchema\Time.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

LOAD SupplierID, 
     SupplierName
FROM
[C:\Qlikview\images\StarSchema\Suppliers.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

LOAD RegionID, 
     Continent, 
     Country
FROM
[C:\Qlikview\images\StarSchema\Regions.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

LOAD ProductID, 
     RegionID, 
     TimeID, 
     SupplierID, 
     Quantity, 
     DefectPercentage
FROM
[C:\Qlikview\images\StarSchema\Supplier_quantity.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

星型模式資料模型

將上述資料讀入 QlikView 記憶體後,我們可以檢視資料模型,該模型以星型模式的形式顯示所有表、欄位和關係。

starschema_model
廣告

© . All rights reserved.