📜  QlikView-星型模式

📅  最后修改于: 2020-11-29 07:32:36             🧑  作者: Mango


起始模式模型是一种数据模型,其中多个维度链接到单个事实表。当然,在较大的模型中,可以有多个事实表链接到多个维度以及其他事实表。该模型的有用之处在于在各种表之间以最少的联接执行快速查询。事实表包含数据,这些数据是度量并具有数字值。计算将应用于事实表中的字段。维度表的唯一键用于将其链接到胖表,胖表也具有通常具有相同字段名称的键。因此,事实表包含整个维度表中的键,并形成在各种查询中使用的串联主键。

输入数据

以下是表格列表,其中包含来自不同供应商和地区的不同产品的数据。此外,供应发生在不同的时间间隔,这些时间间隔在时间维度表中记录。

产品尺寸

它包含产品类别和产品名称。产品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存储器后,我们可以查看数据模型,该数据模型以星型模式的形式显示所有表,字段和关系。

starchema_model