薛影
(郑州大学第三附属医院, 河南 郑州 450000)
书目数据库是信息社会的基本工具。研究人员、学生、专业人士和其他人使用书目数据库来查找与其工作或兴趣相关的文献。对图书管理员来说,书目数据库提供了存储出版物的书目数据、图书位置和图书馆运作所需的其他事实的方法。各种政策制订者也使用书目数据库来监测科学的发展。随着信息技术的不断发展,信息网络无处不在。网络可以是同构网络,也可以是异构网络。同构网络包括单一对象类型和单一边缘类型,如朋友网络、作者网络和电影网络;异构网络由多个节点和边缘类型组成,例如,作者-论文网络是一个异构网络,它有两种类型的节点(作者和论文)和三种类型的边(作者和论文之间的著作关系,作者和作者之间的合著关系以及同一位作者的论文之间的关系)。网络也可以是具有多个节点属性和边属性的多维网络。以图书馆书目数据为例,在许多领域,书目数据库是存储了出版物名称、作者和年份等信息的集合。分析书目数据的方法有很多种(统计学[1]、数据挖掘[2]、图论[3]、OLAP分析[4]等),以实现文献计量学的不同目标(关系研究、排名、社区挖掘等)。在这些不同类型的分析中,OLAP分析(在线分析处理)为数据导航提供了灵活性,可以从不同的角度和不同的粒度级别对数据进行汇总。
传统的OLAP在结构化数据方面做得很好[5],但是在处理网络数据方面面临挑战,基于此,提出了基于图结构的OLAP,即Graph OLAP,将OLAP技术引入到复杂网络分析中,创建了一个多维和多层视图的多维数据集图形。然而遗憾的是,对象之间的交互作用仍然是的隐藏,并且维度变化缓慢的问题并未得到考虑。例如,作者Y. Sun在东北大学发表了一篇论文,然后他在伊利诺伊大学发表了另一篇论文,有两本关于Y. Sun的出版物,每所大学一份。但是在作者网络中,如果用户为了查看机构网络而进行OLAP操作,例如上卷,则这两篇论文都将同时计入两所大学,这是一个错误的答案。在这种情况下,网络数据是不可汇总的,如果不访问原始数据,则不能仅从较低级别的网络中计算出较高级别的网络。因此,OLAP必须适应通过同时考虑数据对象和对象之间的交互来提供网络数据。为了在网络的OLAP分析中考虑关联数据,分析根据书目数据构建的各种网络,本研究利用图论的性质,提出了图书馆书目网络的概念图模型,它的内容来自多个书目数据库,因此可以构建多个不同的网络,如共同作者、作者机构等,概念模型易于映射以支持各种用例。
为了同时考虑节点和边,使OLAP适应多维网络,提出了多维数据集图形。每个节点或边由OLAP多维数据集加权,它允许用户通过查看图表,快速分析已汇总为多维数据集的信息,同时支持Graph OLAP操作(例如信息和拓扑操作[6]),解决了维度变化缓慢的问题。本研究在真实的数据集上进行了评估,并提供示例来说明如何使用提出的方法来分析数据。
分析图书馆书目数据存在不同类型的设计。第一个是基于实体关系图的模型;第二个是基于数据仓库使用的经典多维模型。这些模型使用关系数据库来存储书目数据,因此,它们处理边缘的能力很差,进行复杂的查询并不容易,因为必须添加多个连接操作来响应用户的查询。此外,传统的OLAP分析不能在图上完成。
Graph OLAP的概念最早是由J.Han的团队提出的。Chen等人[7]提出了信息网络上OLAP的基本定义,并介绍了Graph OLAP的框架,他们提供了一个立方体图形,其中每个单元格都存储一个网络而不是一个数值。使用两种OLAP操作定义了两种OLAP维度(信息维度和拓扑维度)。第一个操作是信息OLAP,例如,在作者-论文网络中,地点和时间是两个信息属性,它们被用作信息维度;第二个操作是拓扑OLAP,作者网络可以通过将同一机构的所有作者合并为一个节点,并在机构层级构建一个新的图来进行概括。Chen等人并没有提及如何设计异构网络的模型。因此,Yin等人通过定义实体维度以支持异构网络的两个维度来解决此问题[8]。有两种新的实体维操作:旋转和拉伸,它们能够挖掘不同节点之间的边缘。Wang等人[9]分析和评估了国家图书馆发布的关联数据集,在现有质量评估指标体系的基础上构建针对关联书目数据的质量评估框架和指标,通过人工调研、自动统计和分析方法对关联数据集的RDF词汇、URI有效性等7个指标进行统计和分析。Cheng等人[10]以高校图书馆馆藏借阅数据为例,从书刊借阅和续借两个方面,利用OLAP技术对高校图书馆馆藏借阅数据的数据仓库组织进行了分析。
根据Chen的框架,只有节点是由属性描述的。然而,在现实中,边缘也与属性相关。例如,共同作者网络以作者为节点,协作关系为边。这些关系可以用时间或合著的论文来描述。为了解决这个问题,文献[11]提出了同时处理节点属性和边缘属性的模型,他们定义了一个新的包含节点和边缘属性的多维网络。将节点属性定义为图多维数据集中的维数,将边缘属性定义为多维数据集中的维度。文献[12]提出了一种新的具有超多维的概念模型,图数据聚合是在节点和边缘属性上执行的,聚合图是一个多重图,其中两个节点之间可以有多条边,它使用户可以看到不同的视图。
基于以上研究,为了扩展OLAP在图书馆书目数据中的应用,文中构造了基于多维数据集的图形,根据用户的需求将每个节点或每个边与一个立方体耦合,此模型支持OLAP操作进行分析。
OLAP系统的关键特性之一是数据的多维性,它支持通过维度和度量浏览数据。维度是为数据提供索引的值列表,维度和度量通常以多维数据立方体的形式表示,其中轴对应于维度及其值,维度值的交叉部分对应于度量值。简单地说,维度是表和图表中通常作为独立变量处理的数据,而度量是表中列出或描述的特征。
另一个关键功能是在线操作,比如上卷、向下钻取、切块、切片和旋转。分析人员可以使用它们来选择适当的维度值,并查看表和图中所选的度量。OLAP的其他关键特性是内置的和可编程的分析能力,以及不同的表示和报告选项。OLAP在大型数据集上运行,并且其结果主要由现有数据库中的汇总信息组成。
分三步演示了架构的所有组件,如图1所示。
图1 系统架构
1.2.1 预处理
访问图书馆书目数据库,将数据提取到XML文件中,之后使用ETL流程[13]将数据提取并加载到图形数据库中。为了构建一个异构多维网络G=(V,E、AV、AE),其中V是多个节点的集合,E是多个边缘类型的集合,AV和AE分别是节点和边缘的属性集合,引入一个概念图模型,如图2所示。
图2 概念图模型
概念图模型包含四种类型的节点(作者、论文、地点、关键词)以及这些节点之间的边,每个节点和边由属性描述。
1.2.2 导航
OLAP管理用户的需求和交互,以及在分析过程中使用多维数据集图形的输入和输出。OLAP使用元数据来管理度量、维数、节点和边缘等之间的关系,它可以帮助用户指定第一个图以开始OLAP分析,然后,允许用户使用OLAP操作从不同的视图中查看图形和多维数据集。
通过多维数据集构造图形涉及两个阶段,计算聚合图形;在节点及边上构建多维数据集。
(c) 具有度量列表的边集
路径集如图3(a)所示,论文44是从路径1和路径3获得的,因为它是由两位作者编写的。计算聚合图形是将用户的参数作为输入。如前所述,度量是论文数量,维数是年份、地点和关键词。为了获得第一张图,生成了一组路径,如作者-撰写-论文-出版-地址;下一步是计算一组节点,得到一个包含作者及其路径的列表,如图3(b)所示;然后,将一起撰写论文的任何两位作者添加到边列表中,如图3(c)所示,利用交点运算符计算边缘上的论文数量。例如,J.Han出版了论文33、论文47、论文44,Y.Sun出版了论文44、论文10、论文47,他们之间的一组论文是由{论文33, 论文47, 论文44,…}∩{论文44, 论文10, 论文47,…} = {论文44, 论文47,…}计算的;由于需要共同作者网络的边数据集,因此可以通过从边缘中选择一组节点来构建共同作者网络的输出图,如图3(d)所示。
多维数据集上的操作(例如上卷、下钻和切片等)支持扩展不同的多维视图,并允许交互式查询和解析。如前所述,Graph OLAP中引入了两种不同类型的操作。第一个是信息OLAP,它使用信息属性,这个操作不会改变网络的结构。例如,地点和时间是两个信息属性,它们具有相应的层次结构;第二种是拓扑OLAP,它意味着一种新的网络结构,如果进行拓扑上卷操作,则网络被一些合并节点泛化。例如,在作者网络中,与节点属性作者关联的层次结构(机构、国别等),可用于将来自同一机构的作者合并到一个通用节点中。在多维数据集图形中,可以执行信息OLAP和拓扑OLAP。
当同一机构的所有作者合并为一个节点时,任何两个机构同时发表论文都会产生边缘。如果同一作者在同一时间内拥有多个机构,则该作者将被计入其所有机构。在上卷之后,在更通用的网络中,必须计算新的多维数据集。在示例中,共同作者网络涉及边缘多维数据集,而机构网络既需要节点上的数据集,也需要边缘上的数据集。在计算一组节点之前,需要过滤路径,而不是生成一组路径, 因为数据集的所有节点都收集在V′中,但某些节点可能不在共同作者网络中(因为某些论文仅由一位作者撰写)。当前一个网络需要边缘上的多维数据集时,调用路径过滤步骤,然后计算一组新的节点。
传统的切片操作从给定的多维数据集中选择一个特定的维度[14-15],并提供一个新的子多维数据集。在上下文中,切片操作应该适应于图。切片操作选择图的一部分并提供一个新的子图。例如,如果整个合作网络太大,则用户可以关注更小的子图,以便更清晰地分析信息。
(1) 从三个图书馆书目数据库中获取数据。首先,使用中国知网数据库、万方数据库和维普数据库,获取关键字、机构和研究领域。在这三个来源中,只保留了三个研究领域(数据挖掘、数据库和信息检索)。最后,构建了一个包含4727篇论文和8238位作者的数据集。
(2) ETL(Extract-Transform-Load)过程用于将数据填充到模型中。数据清理后,通过图形模型将数据加载到统一结构中。
(3) 使用一种称为图形数据库的新型NoSQL数据库,即Neo4j1,改进概念图模型。因为Neo4j1是一个开源软件,支持图形模型的属性。
(4) 在Java中开发OLAP接口分析,并在具有Intel core i5 2.4 GHz和8gb Ram的MacOS X version 10.9.5上进行了测试。对于图形可视化,使用GraphStream2库,因为该数据库是一个用于建模和分析图形动态的库,并且是一个开源库。
首先使用共同作者网络示例,3个领域的共同作者网络,如图4所示。
图4 拥有超过10篇论文的共同作者
该网络的每条边都有一个多维数据集。为了减少图形的数量,对边进行了过滤,以便只保留论文数量超过10篇的边。
例如,对于Yue Hua和Xiang Zhai之间的边界,这些作者一共发表了10篇论文,认为这些论文是二维的立方体,有两种可视化方式,第一种方法是关注时间,以年为单位统计论文数量;第二种方法是关注地点,以地点为单位统计论文数量。
如果使用拓扑OLAP操作将共同作者网络上卷到机构网络,如图5所示。
图5 机构网络
图5中数字1表示某信息技术集团有限公司一个合作项目;数字2表示的是同一所大学的几位作者的论文数量;数字3表示总论文数量。
此外,用户可以进行切片操作,以只考虑子图。在共同作者网络中有几个作者群体。假设用户只需要考虑兴趣组,通过切片操作,用户可以选择子共同作者网络,从而在子图上执行上卷操作。实验证明,基于Graph OLAP的概念图模型可以有效地分析图书馆的书目数据,从而为管理人员提供其所需信息。
为了增强图书馆书目数据网络的决策支持,提出了一个概念图模型,以将OLAP与网络数据相结合。为了同时对节点、边和多维信息进行分析,构建了多维数据集图形,用多维数据集图形执行异类图而不是一组图的多维视图。根据用户的需求(度量、维数等)为节点或边提供多维数据集图形。同时,将OLAP操作应用于多维数据集图形,还解决了OLAP分析中维度变化缓慢的问题。此外,本文给出了一个使用来自三个书目数据库的真实数据集实现,实验证明,提出方法可以有效地应用于图书馆书目数据库的分析,因为该方法可以快速交互浏览多维数据,还可以用于高效的报告、质量控制和数据完整性检查。