基于数据仓库的文献资料采办系统设计研究*

2014-01-01 02:54
图书馆学刊 2014年9期
关键词:资料库数据仓库名称

王 睿 曾 斌

(1.海军工程大学图书馆;2.海军工程大学管理工程系,湖北 武汉 430033)

1 引言

数据仓库能够对现有大量的分布、自制甚至异构的数据信息进行集成和存储,以便能够为单位领导提供辅助决策支持。其中前端工具帮助用户高效地使用数据仓库的各种功能,决策工具在后台进行组织化查询、在线分析处理(OLAP)和数据挖掘[1]。组织化查询通过面向主题的数据库视图和SQL查询语句的优化生成,能够帮助用户摆脱SQL语言和数据库结构的复杂操作。通过OLAP工具,用户可以以适合的方式观察分布的关联数据。这些工具按照业务主题或维度组织数据以便用户可以沿不同层次和维度漫游检索数据[2]。对于组织化查询或OLAP都难以处理的关联数据,则需要采用数据挖掘工具,它们可以在数据仓库中提炼出隐藏潜在的有用模式。

由于预算有限,图书馆需要仔细选择订阅采办的图书资料。因此迫切需要一个能够利用现有图书管理系统的决策支持系统对采办经费实施有效管理[3,4],同时能够满足学校教员、学生及其他用户(读者)的需要。

例如当读者寻找某本参考书或期刊论文时,可能会出现以下两种情况:

·图书馆具有该资料:如果它是一本期刊,则意味着图书馆订购了该期刊或与某在线服务商签订了合同,并在服务目录上包含该期刊。

·图书馆没有该资料:在这种情况下,有可能需要纳入后期购买计划或从其他图书馆租借。如果同种图书或期刊被多次租借,则租借费用可能会超过购买费用。

从以上例子可以看出,对图书资料的利用模式进行分析识别,可以帮助图书馆领导决策何时或是否购买某类图书、订购某类期刊或进行租借。除此之外,资料利用模式的识别还具有许多用途,例如它还可以揭示使用某种图书资源比较频繁的专业、系别或人员,从而有针对性地进行推荐服务。而这种模式分析识别只有在建立数据仓库及决策支持工具之上才能成功实现,这也是笔者的研究目的。

2 系统框架设计

数据仓库是本系统的核心部件。图1描述了数据仓库的体系结构:从大学图书馆现有的图书管理信息系统中采集数据,与其他教务数据集成并存储在数据仓库中。

图1 数据仓库系统的体系结构

为了实现数据集成,需要建立数据仓库和信息源的概念模型,为此必须清楚地给出数据仓库和信息源中各个对象的相关性描述[5]。在这里信息集成可以按两种方式实现:虚拟化和实体化。虚拟化集成仅实现用户和信息源的接口,而实体化集成需要把集成信息存储在数据仓库中。笔者采用的是第二种,即采用数据仓库来进行信息集成。而数据仓库中对不同信息源进行集成又分为两种方法:源驱动集成和客户驱动集成[2]。源驱动集成在有新的数据源需要纳入集成范围时触发;客户驱动集成则在客户提交新的查询要求时激活。

当前原型系统中考虑的数据源包括以下几种:

日常事务库、教职员工数据库、学生信息库、馆间交流数据库、在线学术资料库(包含摘要、引用及全文检索等)、纸质图书文献数据库。

日常事务库来源于图书馆操作管理信息系统,主要记录了图书馆文档(图书和期刊等所有信息)的采办和借阅等日常事务。

大学与图书文献提供商都签订有采办协议,这些信息都存储于在线学术资料库和纸质图书文献数据库中,他们提供各项在线服务,例如各种期刊中论文的搜索和阅读等。当有读者使用他们的文献服务时,提供商将在自己的数据库中保存记录及相应的服务费用。

在线学术资料库记录了期刊的月使用情况,但不包括使用资料库的读者姓名。读者使用学术资料库的方式有多种情况。如果仅查看资料库中某论文的引用情况,这种使用方式标记为“查看”;如果读者选择打印或下载整篇论文,则标记为“交易”;如果仅是获取论文摘要,这种使用称之为“摘要”。对学术资料库一般采用全年订购。

纸质图书文献数据库提供了一个可检索的记录库,它可以通过传真或邮件传递。它的使用方式只包括“交易”这一种,每个月发送一次使用报告,其中具体数据项包括期刊名称、论文名称、作者、读者姓名以及费用(包括版面费或快递费),该资料库总共包括大约1500种期刊。随着在线文献的逐步普及,纸质文献仅为大学内有特定需求的老教授提供。

教职员工数据库和学生信息库的来源为大学教务管理信息系统,它包含专业系、学生及大学内部教员职工的基本信息。

从其他协作单位图书馆租借的图书资料信息都存储在馆间交流数据库中,它的记录项包括借阅该文献的读者姓名、出借文献的图书馆名称、文献名称、租借和归还日期及相关费用。

以上数据源的记录包含上百条属性,系统采用了客户驱动的集成方式。通过与学校领导的交流,分析了他们对决策信息的需求,对系统必需的记录属性进行了选择。系统采用关系模型来描述数据源和数据仓库。在当前的原型系统设计中底层支撑数据源的属性如下。

·日常事务库(读者姓名、SN号、期刊名称、作者姓名、ISSN号、ISBN号、BIB号、交易号、借阅日期、出版社名称、费用)

·教职员工数据库(教员姓名、SN号、所属学院、所属系、状态)

·学生信息库(学生姓名、SN号、学院名称、主修专业系、状态)

·馆间交流数据库(读者姓名、期刊名称、ISSN号、图书馆名称、交易号、借阅日期、费用)

·在线学术资料库(期刊名称、ISSN号、查看、交易、摘要)

·纸质图书文献库(期刊名称、论文名称、作者姓名、读者姓名、交易号、费用)

以上几个简写属性的描述如下:

·SN号:教员或学员的证件号

·ISSN:国际标准序列号

·ISBN:国际标准文献号

·BIB号:文献识别码

当前原型系统设计中,考虑期刊文献是当前主要借阅来源,且为了减小数据仓库的大小,暂时没有包含图书数据。

3 数据仓库的多维模型

从广义上讲,数据仓库是指一个单一的集成的数据库,其中包含了大量的历史数据。为了方便地访问如此之多的数据,现代数据仓库没有采用传统的关系数据库模型,而是通过多维描述方式来进行信息处理[6]。不像“实体-关系”模型,多维模型是非对称的。在多维模型中,数据被分为两类:事实(facts)和维度(dimensions)。事实为正在分析的数据,维度为事实的属性。这种描述数据的方式也被称为星形方案。事实一般以表格形式列在星形方案的中心,通过连接线的形式与周围的维度表关联。

在当前的数据仓库原型系统中,事实表的主要属性为期刊的“使用”和“费用”,期刊使用包括两个属性:交易和查看。交易属性记录纸质期刊的借阅和在线期刊的下载。而期刊的在线阅读被标记为查看。因为当前在线文献资料库和纸质文献资料库只包含期刊的月使用情况,所以事实表中的时间粒度为月。

图2 数据仓库的星形连接方案

图2展示了数据仓库的星形连接方案,其中包含了一个事实表和4个维度表。某些维度还具有层次关系,例如:文献或文档:出版社、名称;读者:所属学院、所属系;时间:年、月。

系统使用Oracle 9.0作为数据仓库支撑平台,为了实现方便,把星形连接方案映射为关系数据库方案。星形方案中的事实表和维度表在Oracle中作为关系创建,同时保留了多维模型中所有的一致性和参照性约束。下一节将继续讨论源数据库到数据仓库的装载问题。

4 数据一致性检查

如何保证数据的一致性可以说是建立数据仓库的最重要问题。当数据从面向应用的操作数据库传输到数据仓库时,可能会出现大量的不一致和冗余,因此数据仓库需要能够保证数据的一致性协调性检查和纠正。

图3 数据仓库属性和元数据的关联关系

在系统中利用了数据仓库的清洁(clean)操作来检查检查噪音数据和不完整数据。图3展示了数据仓库和数据源属性中存在的部分相关性[7]。在本系统中发现这些相关中存在不少需要解决的问题,如属性值的缺失;数据域的不一致;记录的重复;标识符的不唯一。

例如在从源记录中采集数据时,发现某些属性,包括费用、状态和所属学院存在缺失对应数据值的现象。由于这些属性对于决策查询语句的产生非常关键,必须把缺失的数据值补充完善。通过仔细检查发现,由于历史原因,大学院系先后出现了105个不同的名称,这与教职员工数据库和学生信息库中发现的210个系名相冲突。为此我们根据这105个系名对现有数据库中的210个系名进行了分簇化处理,还专门开发了转换工具自动检测并修改不正确的院系名称。

同时在分析教职员工数据库和学生信息库中的7234条记录时,发现有105个人重复出现,这是由于大学允许研究生可以跨专业系工作的原因造成,为此也开发了专门工具保证这些学生在数据仓库中只能存在1条记录。

5 决策支持工具

当前原型系统中设计的数据分析工具主要包括组织化查询、OLAP和分簇处理。下面以使用频率的查询为例进行说明。

①查询某一时间内(1个月、1年中某几个连续的月份或1年)某一期刊的使用情况或费用。

例如:查询2013年7、8、9三个月“通信学报”的使用和费用情况。

②查询某一时间内(1个月、1年中某几个连续的月份或1年)内某一出版社出版的期刊使用或费用情况。

③查询某一时间内(1个月、1年中某几个连续的月份或1年)内由某一文献提供商提供,且由某一出版社出版的期刊杂志的使用和费用情况。

④查询某一时间内(1个月、1年中某几个连续的月份或1年)内查阅数量最少(或最大)的所有期刊。

⑤根据期刊名(或其他属性)对数据仓库分簇。

分簇是指对异构的密集数据进行分组处理,从而形成一定数量的同构数据簇。在分簇时,每条记录根据它们的相似性组合。在原型系统中,采用了基于模式识别的知识提炼方法来对数据库中各个属性值分簇。在这里模式是指属性值的条件,例如:读者姓名=“张三”,或期刊名称=“计算机学报”。

规则是指两个模式A和B的推导关系,表示为A®B,它表示如果A为真,则B成立。例如:读者姓名=“张三”®期刊名称=“计算机学报”。

该算法能够按照规则,把具有相同结论的属性值(规则前提)进行有效分组。例如上例中,如果属性“读者姓名”被选中,曾经以同一费用借阅过相同期刊的所有读者都能够被分簇在一起。

6 结语

笔者主要研究了基于数据仓库的文献资料采办系统的设计与实现,该系统的主要目的是帮助图书馆管理人员更好地制定某些期刊杂志的订购采办策略。

按照软件工程的开发原则,一个复杂的数据仓库系统是无法在一个周期内完整实现的,它需要不断地深化研究和完善。下一步工作主要集中在原型系统的可扩展性研究方面。当在数据仓库中装载新的源数据时还会面临不少问题,例如需要设计开发某种评判准则,当加入新数据时,可由它辅助提示何时用新数据替换现有数据,何时需要把新老数据整合为一个数据,新数据何时需要插入到现有数据后。为了解决该问题,可能需要设计开发新的查询方法甚至辅助决策工具。

[1]Manu Bansal and Mandeep Kaur.Analysis and Comparison of Data Mining Tools Using Case Study of Library Management System[J].International Journal of Information and Electronics Engineering,2013(5):466-469.

[2]Anjana Gosain,Sushama Nagpal,Sangeeta Sabharwal.Validating dimension hierarchy metrics for the understandability of multidimensional models for data warehouse[J].IET Software,2013(2):93-103.

[3]彭骏,等.基于“二次选择”算法的高校图书馆图书采购决策系统构建[J].情报理论与实践,2009(6):74-77.

[4]孙宝,等.基于借阅统计的采购量建模研究[J].情报科学,2011(1):102-107.

[5]曹静.基于数据仓库的高校图书馆决策支持系统研究[J].农业图书情报学刊,2010(6):52-55.

[6]朱东妹,潘杏仙,付勇.高校图书馆多维数据仓库模型的设计与实现[J].情报探索,2010(2):99-101.

[7]张肖回.基于数据仓库技术的图书馆业务数据可视化监控平台[J].现代情报,2013(4):150-153.

猜你喜欢
资料库数据仓库名称
基于内容与协同过滤的GitHub学习资料库推荐
基于数据仓库的数据倾斜解决方案研究
国家社科基金重大项目“‘古今字’资料库建设与相关专题研究”成果鉴定会顺利召开
施工企业技术资料库的建立与完善
基于数据仓库的住房城乡建设信息系统整合研究
实现科学教材中资料库的教育价值
探析电力系统调度中数据仓库技术的应用
沪港通一周成交概况
沪港通一周成交概况
沪港通一周成交概况