web_browser_key bigint
ip_address_key bigint
start_date_key int
referring_page_key bigint
landing_page_key bigint
exit_page_key bigint
duration_seconds int
number_of_pages_visited int
它有一堆键值,这些键值指向其他表中的值†,还有两个非键。这些非键是数值型的,被称为度量。你能计算出网络浏览器品牌名称的平均值吗?不能,所以它是一个维度。你能计算访问持续时间的平均值吗?可以,所以它是一个度量。
其他表被称为维度表,ip_address维度表可能如下所示:
ip_address_key bigserial primary key, /* use meaningless surrogate keys */
ip_address inet unique,
country text,
division text,
locality text,
latitude numeric(8,6),
longitude numeric(9,6)
请注意,它并不是规范化的:国家可能来自城市(地点)。然而,在数据仓库中,我们首先关心的是促进分析。通过促进分析,我指的是避免深度连接。
请注意,维度表中的一些数据是层次结构的:国家 > 划分 > 地点。您的OLAP服务器(希望如此)理解层次结构以支持钻取操作。
一个逻辑立方体只是您正在使用的维度和度量集合。与魔方不同,它可以有多个维度。只需将维度视为数据集中的列。
OLAP是您可以对数据集执行的一组操作,例如旋转、切片、挖掘、钻取。想象一下Excel中的数据透视表。一个OLAP服务器促进OLAP操作。
†通常没有外键

如果你还有其他更具体的问题想知道,请告诉我。