6数据仓库开发实例详解
说明 作者编号 图书编号
建立多维数据模型
图书作者关系
•
图书作者关系事实表只包含键值列,不包含度量值列, 其目的是为了记录图书和作者之间的关系事实。 FactBookAuthor(中间事实表) 属性名称 键 值 列 book_id au_id 功能描述 图书编号 作者编号
建立多维数据模型
订单
作者
出版日期
属性名称 FullDate DateName Month MonthName Year
功能描述 日期 日期名 月 月名 年
其中 FullDate、 Month、 MonthName 形成层次。
建立多维数据模型
出版社
销售日期
出版社
图书 订单
书店
建立多维数据模型
出版社
字段名称 说明
pub_id
pub_name city state country
图书编号
销售日期 销售量 销售额
建立多维数据模型
建立多维数据模型
作者
•
作者维度可以直接包含作者名等属性 DimAuthor 属性名称 au_id au_name 功能描述 作者编号 作者名 au_fname + au_lname
建立多维数据模型
图书作者关系
作者
出版日期
图书 出版社 订单
图书作者关系
书店
建立多维数据模型
图书作者关系
字段名称 au_id title_id
出版社编号
出版社名 所在市 所在州 所在国
建立多维数据模型
出版社
•
出版社维度可以直接包含出版社名、市、州、国家等 属性 DimPublisher 属性名称 pub_id pub_name pub_city pub_state 功能描述 出版社编号 出版社名称 城市 州 国家 其中 pub_name、 pub_city、 pub_state、 pub_country 形成层次。
其中 book_name、 book_type 形成层次结构。
book_name
book_type pubyear
图书名
图书类型 出版年
建立多维数据模型
图书
•
图书型
作者
作者
出版日期
图书 出版社 订单
图书作者关系
书店
建立多维数据模型
作者
字段名称 au_id au_lname au_fname 说明 作者编号 作者名 作者姓
收集项目需求
准备:研究选定的业务过程(术语、步骤、度量 方法) 采访:钻研选定的业务过程(理解使其运作所需 的分析、数据模型和技术)
分析:业务过程相关的数据资源
归档
对于Pub公司:选定“销售”业务过程后, 通过采访了解其与销售分析相关的问题, 如通过什么方式销售、有哪些销售地区等。
收集项目需求
基本业务状况
图书
X
书店
X
销售日期
X
销售日期
出版社
图书 订单
书店
建立多维数据模型
销售日期
销售日期
出版社
图书
订单
书店
建立多维数据模型
销售日期
• • •
日期维度的粒度级别通常为一天 日期维度表需要专门生成(如利用Excel工具) 日期维度表中的时间范围根据业务需求决定
建立多维数据模型
销售日期
•
日期维度至少要包含年、月、日期三个属性 DimDate
建立多维数据模型
订单
FactSales 属性名称 pub_id 来源 publishers表 stores表 功能描述 出版社编号 书店编号
键 值 列
度 量 值 列
stor_id
book_id
ord_date qty amount
titles表
sales表 sales表 计算生成(qty*price)
图书 出版社 订单
图书作者关系
书店
建立多维数据模型
订单
字段名称 stor_id title_id qty 说明
ord_date
书店编号 图书编号 订购数量 订购日期
建立多维数据模型
订单
•
订单事实表中要包含日期、出版社、书店、图书等键 值列,还要包含销售额、销售量2个度量值列,其目 的是为了记录销售事实。
数据仓库与OLAP
广东工业大学 艾丹祥
数据仓库开发实例
案例背景
Pub是美国的一家图书出版公司,希望构建数据 仓库。其中销售部门的需求比较急迫,希望能在 短时间内实现对销售业绩的分析。
根据Pub公司的情况,考虑采用金博尔的 DMDW的开发模式,即先为销售部门设计一个 数据集市,其他部门数据集市的设计可参照 此模型。
pub_country
建立多维数据模型
书店
出版日期
出版社
图书 订单
书店
建立多维数据模型
书店 字段名称
stor_id
说明
书店编号
stor_name city state
书店名称 所在市 所在州
建立多维数据模型
书店
•
书店维度可以直接包含书店名、市、州等属性
建立多维数据模型
图书
出版日期
出版社
图书 订单
Pub公司在美国各地均有出版社,出版社负责联系作 者、出版图书,已出版的图书将由各地的代销书店进 行销售。
收集项目需求
业务分析需求
销售部门最关心销售的业绩,主要通过销售额和销售 量进行考核。
数据仓库开发实例
业务分析需求
希望针对每个出版社作图书销售业绩分析。 希望针对每个国家的出版社作图书销售业绩分析。 希望针对每个州的出版社作图书销售业绩分析。 希望针对每城市的出版社作图书销售业绩分析。 希望针对每本图书作销售业绩分析。 希望针对每类图书做销售业绩分析。 希望针对每年出版的图书做销售业绩分析。 希望针对每位作者所编写的图书做销售业绩分析。 希望针对每个书店作图书销售业绩分析。 希望针对每个州的书店作图书销售业绩分析。 希望针对每个城市的书店作图书销售业绩分析。 希望针对年、月、日作销售业绩分析。
书店
建立多维数据模型
图书
字段名称 title_id pub_id title
type price pubdate
说明 图书编号 出版社编号 图书名
图书类型 图书单价 出版日期
建立多维数据模型
图书
•
图书维度可以直接包含图书名、类型、出版年等属性 DimBook
属性名称 book_id
功能描述 图书编号
数据仓库开发实例
销售业务的总线矩阵
业务实体 业务过程 销售 出版社 X 图书 X 书店 X 出版日期 X
收集项目需求
数据资源状况
公司的业务数据库为Pubs数据库
收集项目需求
数据资源状况
Pubs中与销售业务有关的表
建立多维数据模型
根据总线矩阵建立模型气泡图
业务实体
业务过程
销售
出版社
X