王秀慧,刘立云,张凤英
(山西大同大学教育科学与技术学院,山西大同 037009)
基于OAI-PMH的元数据动态更新模型的设计
王秀慧,刘立云,张凤英
(山西大同大学教育科学与技术学院,山西大同 037009)
针对OAI-PMH中服务提供方在收割数据提供方元数据时的时间滞后问题和资源分配不合理的问题,提出了一种可动态更新的元数据同步模型。根据数据提供方元数据的更新周期,结合用户对元数据的访问量,来动态地调整服务提供方收割时间,以保证在合理利用系统资源的前期下,有效地实现数据提供方和服务提供方元数据的同时更新。
OAI;元数据;服务提供方;数据提供方;动态更新
OAI-PMH(Open Archives Initiative Protocol for Metadata Harvesting,简称OAI)发展至今已有10多年的历史,旨在以相对简单的、独立于应用程序外的元数据收割协议,来实现异构分布元数据资源之间便捷的互操作[1]。OAI的工作原理比较简单。协议中定义了两个角色:数据提供方(Data Provider,简称DP)和服务提供方(Service Provider,简称SP)。DP响应来自SP的请求,以OAI所要求的XML格式向SP提供元数据。SP利用收割器向一个或多个DP构建的系统收割元数据,经过整合映射之后存储在当地数据库中,并基于元数据为用户提供搜索、信息定制等增值服务[2]。
通常情况下,SP通过定期向DP发送收割请求以实现系统元数据的更新,然而由于各个DP的更新周期各异,因此定期收割的方法会导致SP提供给用户的信息可能已经失效,不够新颖、及时,而且服务提供方没有一个统一的标准来确定到底给各个DP投入多少系统资源,使得系统资源的分配极不合理。
为了解决该问题,Xiaoming Liu[3]等在2003年提出扩展OAI协议的命令动词,为其增加一个“push-Metadata”动词,以便将更新的元数据直接推送给SP。然而这种方法要求DP决定信息推送的内容和时间,SP需要实时监听DP变化命令,因此增加了DP和SP实现的复杂度,与OAI协议所提倡的简单、易于实现的元数据互操作特点相背离。牛振东、丘俗标等在2004年提出在OAI协议中采用推/拉模型[4]。该模型采用注册服务器作为信息反馈的中介,无形增加了实现的难度和代价,且不能保证注册服务器及时反馈变化信息,因此该方法实现的可行性不大。
针对上述方法存在的弊端,本文提出了一个元数据动态更新模型,以DP更新周期为主,以用户访问变化量为辅,动态地调整收割时间,以实现数据提供方和服务提供方元数据的同时更新并确保系统资源的合理分配。
SP向各个DP发送命令动词“Identify”以获取其基本信息,返回结果中包含元数据的更新周期,SP以此为基础确定收割时间,使得更新频繁的DP有较密的收割次数,较少更新的仓储有较稀疏的收割次数,有效实现了DP和SP的同时更新[5]。然而,如果只按更新周期收割元数据,假如某DP更新频率很快,但是几乎没有用户访问量(表示数据重要度很低),则投入再多的资源也是浪费,反之亦然。因此除了按更新周期来收割元数据之外,也应结合用户对仓储的访问变化量,动态地调整收割时间,给用户需求较高的DP分配较多的系统资源和较密集的收割频率。反之,给用户需求较低的DP分配比较少的系统资源,并增加其收割区间,这样不仅实现了DP和SP的同时更新,而且合理地分配了系统资源,极大地满足了用户需求。
为了动态地调整收割时间,需做如下定义。假设△t表示固定的观测周期,{t1,t2,…,tn}表示所观察的时间区间,且有tj+1=tj+△t,DQT(di;tj)表示DPdi在时间tj内被访问的次数,U(di)表示di的更新周期。
首先定义元数据访问率E,表示DPdi在时间tj内被请求的次数与M个DP{d1,d2,…,dm}被访问次数的比值。
其次定义元数据访问变化量W,表示用户对DPdi在tj-1的访问量到tj的访问量的变化情况。若W(di;tj)>1,表示访问量增加;W(di;tj)=1表示访问量不变;W(di;tj)<1表示访问量减少。
且j≥2
经上述定义,本文以DP更新周期U为基础,以用户访问变化W为辅,得到调整后收割时间区间H的计算公式:
以新的收割区间H不断更新内容,对于用户访问量增加的DP减小其收割区间,对于用户访问量减少的DP适当增加其收割区间。然而如果用户对某一DP的访问量不断增加,会使得H取值越来越小,造成过于密集的收割,这对于更新比较平缓的DP来说,无疑造成了系统资源的浪费。反之,因为访问量的不断减少,造成过于稀疏的元数据收割,这对于更新比较频繁的DP,又导致收割不足。
为避免出现这两种情况,须依据DP的更新特性再次调整收割时间。为此,假定Umax和Umin分别表示所观察的M个DP中最大更新周期和最小更新周期,定义D(di)表示di更新周期密集程度。如果DP更新比较频繁,则D(di)较大,反之则较小。
L(di)表示di更新周期密集程度。如果DP更新比较缓慢,则L(di)较大,反之则较小。
令D(di)对应调整收割时间H,L(di)对应DP更新周期U,得到一个更加合理的收割区间计算公式C(di;tj)。
C(di;tj)=D(di)×H(di;tj)+L(di)×U(di)
最后定义调幅AR,以便于观察收割区间的变化幅度。至此,完整的动态更新模型建立完毕。
设有5个数据提供方di,i的取值从1到5,更新周期U(di)依次为5,20,35,50,65个单位时间,{t1,t2,t3}为观察的三个区间,记录了用户在每个观察区间对SP的请求次数DQT(di;tj),其中ti表示初始观察区间,收割区间依照DP方元数据的更新周期制定,如表1所示。
表1 初始状态
(1)用户对DP的访问量增加且DP属于更新密集型
这种情况对应到表1,即d2从t1到t2的变化情况,DP访问变化量W为:
访问量大大增加,是原来的1.546倍,因此得到初次调整后收割区间为:
H(d2;t2)=U(d2)+U(d2)×(1-W(d2;t2)=9.073,
Umax和Umin的取值分别为65和5,由此得到
根据上述计算,得到更加合理的收割周期。
(2)用户对DP的访问量增加且DP属于更新稀疏型。这种情况对应到表1,即d4从t1到t2的变化情况,依次得到
W(d4;t2)≈1.399,
H(d4;t2)=30.04,
C(d4;t2)=45.01,
AR(d4;t2)≈-9.98%。
(3)用户对DP的访问量减少且DP属于更新密集型。对应到表1,即d2从t2到t3的变化情况,依次得到:
W(d2;t3)≈0.647,
H(d2;t3)=18.873,
C(d2;t3)=19.16,
AR(d2;t3)≈47.85%。
(4)用户对DP的访问量减少且DP属于更新稀疏型。即d4从t2到t3的变化情况,得到
W(d4;t3)≈0.715,
H(d4;t3)=59.27,
C(d4;t3)=52.32,
AR(d4;t3)≈16.24%。
针对四种情况,将收割区间调整后得到如表2所示的结果。
表2 收割区间调整表
对比表1和表2可以看到:
(1)当用户对DP的访问量增加时,SP通过缩短收割区间来增加对DP元数据的收割次数,以此来提高信息搜索的全面、准确、有效、及时。
对于更新周期比较密集的DP来说,当访问量增加时,收割周期呈大幅度下降,收割变得更加密集,从而更能有效的满足用户需求;而对于更新比较缓慢的DP来说,即使用户访问量大大增加,收割周期也只呈小幅度减少,即防止了流量暴增造成的过重的系统负担,又较好的实现了元数据同时更新。
(2)当用户对DP的访问量减少时,SP把收割区间适度调大,将系统资源重新分配,在满足用户需求的前提下,有效地降低系统多余的负担。
对于更新周期相对比较密集的DP来说,当访问量减少时候,收割区间呈大幅度增加,这表示用户对该DP信息需求降低,因此只需控制收割区间在用户可接受的范围内,以便于把系统资源分配给用户需求较高的DP;而对于更新周期比较缓慢的DP来说,当用户访问量减少时,收割区间只呈小幅度增加,以避免收割不足影响到信息的时效性。
(3)此外,从表2可以看到,当用户访问量增加后又减为原来访问量时,收割区间也基本调整到原先的状态。
由此可见,依据2中的动态更新模型调整SP元数据收割时间,能够在系统资源合理分配的前提下,有效实现DP和SP元数据的同时更新。
在对OAI工作原理认真剖析的基础上,通过分析用户与SP之间的数据交互变化规律,提出了一个元数据动态更新模型。以DP更新周期为主,以用户对元数据访问量的变化为辅,动态地调整SP元数据收割时间。实验分析表明,该模型性能优良,在合理利用系统资源的前提下把DP方信息的更新快速反映到相关的SP,有效确保了DP和SP元数据的同步更新,使得用户在任何时候都能够搜索到最新信息,从而大大提高了信息的时效性和使用价值。
[1]张佩毅,丰艳,陈一民.基于OAI协议的数字资源互操作平台[J].计算机应用与软件,2007,24(10):46-47.
[2]齐华伟,王军.元数据收割协议OAI-PMH[J].情报科学,2005,23(3):414-425.
[3]Xiaoming Liu,Kurt Maly,Mohammad Zubair,et al.Repository synchronization in the OAI framework[R].Houston:Proceedings of the ACM/IEEE Joint Conference on Digital Libraries,2003.
[4]牛振东,丘俗标,朱先忠,等.基于OAI-PMH的服务提供者的设计与实现[J].北京理工大学学报,2004,24(5):411-415.
[5]王宇芳,黄镝,李晓玲,等.OAI-PMH协议及应用新趋势[J].现代情报,2006(5):81-83.
〔编辑 高海〕
The Design of Metadata Dynamic Update Model based on OAI-PMH
WANG Xiu-hui,LIU Li-yun,ZHANG Feny-ying
(School of Education Science and Technology,Shanxi Datong University,Datong Shanxi,037009)
According to the problems of time delay and irrational resources allocation while metadata of Data Provider is being harvested by Service Provider in OAI-PMH,a metadata synchronization model which can be updated dynamically is designed.The harvest time of Service Provider is dynamically adjusted by metadata update period combined with the quantity of users'access.By this way,the system resources can be properly used and most importantly,the metadata consistency can be kept between Data Provider and Service Provider.
OAI;metadata;service provider;data provider;dynamic update
TP399
A
1674-0874(2011)02-0008-03
2010-10-26
山西大同大学青年科研基金资助项目[2010Q13]
王秀慧(1981-),女,河北行唐人,硕士,讲师,研究方向:人工智能和数据库技术。