论文部分内容阅读
摘要:随着数据仓库技术的发展和应用,OLAP技术已成为决策支持系统领域研究的热点。文章探讨了基于OLAP的多维分析模型设计,将OLAP技术应用于学生选课数据仓库中,阐述了具体的实现过程,并形成了客户端访问界面。
关键词: 联机分析处理(OLAP);维表;事实表;星型结构;客户端界面
中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)03-10625-01
1 引言
随着数据仓库技术的不断发展,OLAP(联机分析处理)已成为该领域研究的重点。OLAP是利用存储在数据仓库中的数据,根据用户提出的问题或假设,去进行各种分析操作,并以较为直观易懂的形式将结果返回给用户。OLAP具有提供数据的多维逻辑视图、快速响应用户分析请求,为用户提供强大的统计、分析功能等特点。
本文将OLAP技术应用于学生选课分析,设计了学生选课数据仓库模型,可以从多个角度,多个层面了解学生的选课情况,并形成了客户端访问界面,各类用户可以方便地查询学生选课情况,从而为课程的设置及调整等决策支持提供服务。
2 OLAP多维分析
多维性是OLAP的关键属性,系统能够提供对数据分析的多维视图和多维分析,多维分析是OLAP的灵魂。维是人们观察数据的特定角度,例如,企业常常关心产品销售数据随着时间推移而产生的变化情况,这时是从时间的角度来观察产品的销售,所以时间是一个维(时间维),企业也时常关心自己的产品在不同地区的销售分布情況,是从地理分布的角度来观察产品的销售,所以地理分布也是一个维(地理维)。一个维可以存在细节程度不同的多个描述方面,我们称这多个描述方面为维的层次。例如,描述时间的维可以从日期、月份、季度、年等不同层次来描述,同时,城市、地区、国家等构成了地理维的多个层次。
维的一个取值称为该维的一个维成员。如果一个维是多层次的,则该维的维成员是在不同维层次的取值的组合。如若时间维具有日期、月份、年这三个层次,分别在日期、月份、年上各取一个值,就得到了时间维的一个成员,即“某年某月某日”。对于销售数据来说,就表示该销售数据是“某年某月某日”的销售数据。
一个多维数组可以表示为(维1,维2,…维n,变量),例如可将商品销售数据按时间、地区和产品组织起三维立方体,加上变量“销售额”就组成了一个多维数组(时间,地区,产品,销售额)。
多维分析是指对以多维形式组织起来的数据采取切片、切块、旋转等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入地了解包含在数据中的信息内涵,帮助他们制定出正确的方案,也就是说,OLAP是共享多维信息的快速分析。
根据综合性数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。
关系型结构能较好地适应多维数据的表示和存储。关系数据库将多维数据库中的多个结构划分为两类表,一类是事实表,用来存储事实的度量值及各个维的键值,事实度量值是最终用户在数据仓库应用中所需要查看和分析的细节或聚集数据;另一类是维表,对每一个维来说,至少有一个表用来保存该维的元数据,即维的描述信息,包括维的层次及成员类别等,每个维表通过一个主键链接到事实表中与此对应的一个外键上。
3 学生选课分析的多维模型设计
德州学院对学生的选修课实行网上选课,这样就获取了学生选课的大量信息,将这些信息转化、抽取到数据仓库,建立多维模型,进行分析,从多个角度、多个层面了解学生的选课情况,从而为课程的设置、教学的调整提供一定的决策支持。
根据对学生选课分析的要求,设计了数据仓库的多维分析模型。
此数据模型表示如下:
事实表:学生选课事实表(stu_code(学号), sem_code(学期号), tech_code(教师号), cour_code(课程号), class_hour(课时数), reg_num(注册数))
维表:有以下几个维表组成:
(1)学生维表:学籍表(stud_code(学号), stud_name(学生名), stud_sex(性别), dept_name,(系名) spe_name(专业名), grade(年级)),维度级别分为年级,系,专业,姓名。
(2)学期维表:学期表(sem_code(学期号), year_name(学年), sem_name(学期)),维度级别分为学年,学期。
(3)课程维表:课程表(cour_code(课程号);cour_name(课程名), cour_credit(学分), dept_name(系名)),维度级别分为系,课程。
(上接第625页)
(4)教师维表:教师表(tech_code(教师号),tech_name(教师名),cour_name(课程名),dept_name(系名), tech_pos(职称), tech_sex(教师性别)),维度级别分为系,教师,课程。
此模型为一星型结构,多维结构模式如图1。
图1 学生选课分析数据仓库多维模型
4 OLAP联机分析的实现
根据以上构建的分析模型,生成多维数据仓库结构,使用OLAP联机分析处理技术,实现了对学生选课数据的分析,该模型使用Microsoft SQL Server 中的Analysis Manager实现了从星型模型向多维立方体的转换,形成了多维分析模型。图2是多维数据立方体的拓扑结构图例,图3是由该拓扑结构生成的浏览界面,浏览界面可以方便地转换角度,进行上钻和下钻操作,从而可以在多个角度,多个层面了解学生的选课情况,如可以方便地查看计算机系学生有多少人选修数学系开的课程,有多少学生选某个老师的课程,等等。从而为课程设置和调整提供一定的依据。
图2 学生选课分析数据立方体拓扑结构
5 客户端界面的内容展现
OLAP提供了一组从服务器传递到客户端的工具—数据透视表服务,该服务主要通过为OLAP服务的OLE DB和ActiveX数据对象ADO MD为客户端提供查询数据源的编程接口。由于Microsoft Excel使用了许多为OLAP服务的OLE DB核心API,使得Excel具有强大的OLAP数据提取和分析功能。学生选课分析使用Excel实现客户端界面的内容展现,使用户可以在客户端方便地浏览、查询学生选课情况。图4就是一个浏览界面。
图3 计算机系学生选修各门课程的情况
图4 客户端浏览界面
6 结束语
OLAP多维分析模型非常适合于数据仓库的分析需求,是数据仓库成功与否最重要的技术因素。本文将OLAP技术应用于学生选课分析,并形成了客户端访问界面,使各级各类用户可以方便地浏览、查询学生选课信息,为学校各级教育决策者提供一定的决策支持,随着数据仓库技术的应用,OLAP将更加显示其强大的生命力。
参考文献:
[1]李林花.等.数据仓库多维分析模型的设计[J].计算机工程与应用,2004,40.
[2]王虹.等.基于OLAP与DM一体化的数据建模技术的研究[J].计算机工程与应用,2002,38.
[3]王珊.等.数据仓库技术与联机分析处理[M].北京:科学出版社,1998.
[4]康博创作室.SQL Server 2000数据仓库设计和使用指南[M].北京:清华大学出版社,2001.4.
[5]陈京民.数据仓库原理、设计与应用[M].北京:中国水利水电出版社,2004,3.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键词: 联机分析处理(OLAP);维表;事实表;星型结构;客户端界面
中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)03-10625-01
1 引言
随着数据仓库技术的不断发展,OLAP(联机分析处理)已成为该领域研究的重点。OLAP是利用存储在数据仓库中的数据,根据用户提出的问题或假设,去进行各种分析操作,并以较为直观易懂的形式将结果返回给用户。OLAP具有提供数据的多维逻辑视图、快速响应用户分析请求,为用户提供强大的统计、分析功能等特点。
本文将OLAP技术应用于学生选课分析,设计了学生选课数据仓库模型,可以从多个角度,多个层面了解学生的选课情况,并形成了客户端访问界面,各类用户可以方便地查询学生选课情况,从而为课程的设置及调整等决策支持提供服务。
2 OLAP多维分析
多维性是OLAP的关键属性,系统能够提供对数据分析的多维视图和多维分析,多维分析是OLAP的灵魂。维是人们观察数据的特定角度,例如,企业常常关心产品销售数据随着时间推移而产生的变化情况,这时是从时间的角度来观察产品的销售,所以时间是一个维(时间维),企业也时常关心自己的产品在不同地区的销售分布情況,是从地理分布的角度来观察产品的销售,所以地理分布也是一个维(地理维)。一个维可以存在细节程度不同的多个描述方面,我们称这多个描述方面为维的层次。例如,描述时间的维可以从日期、月份、季度、年等不同层次来描述,同时,城市、地区、国家等构成了地理维的多个层次。
维的一个取值称为该维的一个维成员。如果一个维是多层次的,则该维的维成员是在不同维层次的取值的组合。如若时间维具有日期、月份、年这三个层次,分别在日期、月份、年上各取一个值,就得到了时间维的一个成员,即“某年某月某日”。对于销售数据来说,就表示该销售数据是“某年某月某日”的销售数据。
一个多维数组可以表示为(维1,维2,…维n,变量),例如可将商品销售数据按时间、地区和产品组织起三维立方体,加上变量“销售额”就组成了一个多维数组(时间,地区,产品,销售额)。
多维分析是指对以多维形式组织起来的数据采取切片、切块、旋转等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入地了解包含在数据中的信息内涵,帮助他们制定出正确的方案,也就是说,OLAP是共享多维信息的快速分析。
根据综合性数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。
关系型结构能较好地适应多维数据的表示和存储。关系数据库将多维数据库中的多个结构划分为两类表,一类是事实表,用来存储事实的度量值及各个维的键值,事实度量值是最终用户在数据仓库应用中所需要查看和分析的细节或聚集数据;另一类是维表,对每一个维来说,至少有一个表用来保存该维的元数据,即维的描述信息,包括维的层次及成员类别等,每个维表通过一个主键链接到事实表中与此对应的一个外键上。
3 学生选课分析的多维模型设计
德州学院对学生的选修课实行网上选课,这样就获取了学生选课的大量信息,将这些信息转化、抽取到数据仓库,建立多维模型,进行分析,从多个角度、多个层面了解学生的选课情况,从而为课程的设置、教学的调整提供一定的决策支持。
根据对学生选课分析的要求,设计了数据仓库的多维分析模型。
此数据模型表示如下:
事实表:学生选课事实表(stu_code(学号), sem_code(学期号), tech_code(教师号), cour_code(课程号), class_hour(课时数), reg_num(注册数))
维表:有以下几个维表组成:
(1)学生维表:学籍表(stud_code(学号), stud_name(学生名), stud_sex(性别), dept_name,(系名) spe_name(专业名), grade(年级)),维度级别分为年级,系,专业,姓名。
(2)学期维表:学期表(sem_code(学期号), year_name(学年), sem_name(学期)),维度级别分为学年,学期。
(3)课程维表:课程表(cour_code(课程号);cour_name(课程名), cour_credit(学分), dept_name(系名)),维度级别分为系,课程。
(上接第625页)
(4)教师维表:教师表(tech_code(教师号),tech_name(教师名),cour_name(课程名),dept_name(系名), tech_pos(职称), tech_sex(教师性别)),维度级别分为系,教师,课程。
此模型为一星型结构,多维结构模式如图1。
图1 学生选课分析数据仓库多维模型
4 OLAP联机分析的实现
根据以上构建的分析模型,生成多维数据仓库结构,使用OLAP联机分析处理技术,实现了对学生选课数据的分析,该模型使用Microsoft SQL Server 中的Analysis Manager实现了从星型模型向多维立方体的转换,形成了多维分析模型。图2是多维数据立方体的拓扑结构图例,图3是由该拓扑结构生成的浏览界面,浏览界面可以方便地转换角度,进行上钻和下钻操作,从而可以在多个角度,多个层面了解学生的选课情况,如可以方便地查看计算机系学生有多少人选修数学系开的课程,有多少学生选某个老师的课程,等等。从而为课程设置和调整提供一定的依据。
图2 学生选课分析数据立方体拓扑结构
5 客户端界面的内容展现
OLAP提供了一组从服务器传递到客户端的工具—数据透视表服务,该服务主要通过为OLAP服务的OLE DB和ActiveX数据对象ADO MD为客户端提供查询数据源的编程接口。由于Microsoft Excel使用了许多为OLAP服务的OLE DB核心API,使得Excel具有强大的OLAP数据提取和分析功能。学生选课分析使用Excel实现客户端界面的内容展现,使用户可以在客户端方便地浏览、查询学生选课情况。图4就是一个浏览界面。
图3 计算机系学生选修各门课程的情况
图4 客户端浏览界面
6 结束语
OLAP多维分析模型非常适合于数据仓库的分析需求,是数据仓库成功与否最重要的技术因素。本文将OLAP技术应用于学生选课分析,并形成了客户端访问界面,使各级各类用户可以方便地浏览、查询学生选课信息,为学校各级教育决策者提供一定的决策支持,随着数据仓库技术的应用,OLAP将更加显示其强大的生命力。
参考文献:
[1]李林花.等.数据仓库多维分析模型的设计[J].计算机工程与应用,2004,40.
[2]王虹.等.基于OLAP与DM一体化的数据建模技术的研究[J].计算机工程与应用,2002,38.
[3]王珊.等.数据仓库技术与联机分析处理[M].北京:科学出版社,1998.
[4]康博创作室.SQL Server 2000数据仓库设计和使用指南[M].北京:清华大学出版社,2001.4.
[5]陈京民.数据仓库原理、设计与应用[M].北京:中国水利水电出版社,2004,3.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。