更全的杂志信息网

时态RDF数据的不一致性修复和预处理

更新时间:2009-03-28

资源描述框架 RDF(resource description framework)是由万维网协会W3C提出的一个语义框架[1],被广泛应用在描述语义网[2]中的各类海量数据,可以用三元组(主语、谓语、宾语)的形式来描述语义网上的任何数据。

随着计算机技术和信息技术的深入发展,语义网中的时态RDF数据也在快速的累积中,RDF数据的涉及到各个领域。时态信息在信息系统中扮演着日益重要的角色,时态RDF数据的一致性检测和恢复也有助于提高时态RDF数据库系统的可靠性和高效性[3],特别是对电子商务、数据挖掘、决策支持系统等信息系统有着越来越重要的意义和保障[4-6]

国内外学者提出了多种类型的时态数据库模型,其中主要是基于关系模型的时态关系数据库以及相应的查询语言[10]。除了关系模型,Chawathe首次提出了管理历史的半结构化数据[11],他扩展了交换对象模型,使它可以表示更新,借助“增量(deltas)”来跟踪它们。Claudio Gutierrez[12]首次提出了对于时态RDF数据模型的建立,添加时间标签来实现数据的时态性,如(s,p,o):[T],其中 T 就是时态信息。后续的时态RDF模型的研究都是在此时态RDF数据模型的基础上进行更多的语义和时间信息的表达上的扩展[13,14],还有进行双时态扩展,同时支持有效时间和事务时间。还有更多的时态和语义的逻辑分析与推理,基本都停留在理论上的分析。

时态数据的一致性研究中文献[7,8]是基于关系数据库的多版本,文献[7]需要追溯过去的版本中的所有的不一致性数据,操作复杂耗时。因为支持多时态多版本XML,恢复数据库的一致性要通过纠正过去的所有错误和不一致性。文献[8]对于时态RDF数据提出了新的框架,确定一个子类的一阶一致性约束,利用调度理论有效的映射到约束图来解决问题。这个方法优于普通的近似启发式算法,但是是对一个子类做出的约束,并不能更好的包含所有时态RDF图,应该一步推广一致性约束。这篇文献是针对于查询中出现不确定性的结果进一步做一致性检测和恢复,存储的数据还有不一致性和不正确性。文献[9]提出了时态XML的一致性要求,并提出了环路检测来检测和修复不一致性,算法思路比较严谨。但是考虑数据不一致性不全面,分类太简单,现实生活中的数据一定会更复杂。因为RDF的特殊性,并不适用于时态RDF数据的一致性分析。

本文是针对添加有效时间标签来扩展的时态RDF数据模型,根据有效时间的现实意义分析时态RDF数据存在的不一致性,并对每一类的不一致性提出了修复的方法,针对执行变化操作时产生的不一致性,进行了预处理的研究,以保护时态RDF数据的一致性,并通过实验验证了可行性。

1 时态RDF数据的不一致性修复

尽管现在从语义网上提取信息的技术有了很大的进步,但是产生的RDF知识库仍然存在大量的噪音和与事实不一致的问题,需要添加一些额外的一致性约束。本节就是根据扩展的有效时间的现实意义,分析时态RDF数据存在的不一致性,根据不同情况进行了分类,并对存在的所有类型的不一致性提出修复算法。

坑塘是指自然形成或地面开挖储存水体的蓄水工程,其容积小于10万m3,配套设施有小泵站、小水渠和引排水堰闸,具有数量多、单项工程规模小、投资小的特点。因其遍布在广阔的农村,并与农民生活息息相关,是公益性或准公益性的小型农田水利设施。目前坑塘建设对促进农村经济发展与社会稳定,保障国家粮食安全、农民群众饮水安全,建设新农村及和谐社会具有十分重要的现实意义,也是农田水利工程建设中务必重视的问题。

1.1 有效时间的设定

本文研究的时态RDF模型是用时间标签来标记RDF数据三元组,且表示有效时间。以下就是时态RDF模型的基本定理。

定义1一个时态RDF数据的组成分为两部分,时间标签和 RDF 三元组,用符号表示(s,p,o):[t].(s,p,o):[t1,t2]表示{(s,p,o):[t]|t1≤t≤t2}。

其中SPO代表RDF三元组中的主体、谓词和客体。t是一个自然数,用来代表时间,表示在t时刻s的p属性值为o是有效的。

定义 2 时间区间[start,end]中,start+1≤end,单位时间设为1;

为了表示时间上的连续,即使使用秒数作为单位时间在现实中时间也是不连续的,为了下文的使用方便和自然,将单位时间设为1,t和t+1两个时刻就表示是时间上的连续。

式中:PSTC——标准测试条件下(入射强度为1 kW/m2,外界温度为298.15 K)的最大测试功率;

1.2 三元组重复的不一致性修复

少年时代,全家迁居芜湖,居在爸爸单位分的坐落于吉和街的一所小房子里,两层木阁楼建筑,前面一溜儿门面房。吃完夜饭,我们喜欢去江边洗碗,拎着篾篮,大大小小的碗碟扎在篮子里。青弋江穿城而过,至西岸尽头,汇入长江。清澈的青弋江水贴着长江南岸低低流淌,水流清澈,与翡翠没有两样。黄昏,大人、孩子一齐在江里戏水,其中一个皮肤白皙的孕妇腆着大肚子,每日准时来游泳。她丈夫坐在岸上,雕塑一样一动不动,她的双腿在江水里伸伸缩缩,白得耀眼。

对于T1和T2间断,可以解释为在T1和T2时间段内s的p属性值为o,但是在T1和T2间隔的时间内这个信息失效了,所以不存在不一致性。

修复重复三元组不一致性,用R代表(s,p,o)[start,end])是一条时态RDF数据记录,Ri表示第i条记录,Ri+1就是下一条记录。首先在时态RDF数据库中的记录中匹配(s,p,o)三元组,找到三元组完全一样的时态RDF数据记录,通过比较两个时间区间的起始时间点和结束时间点,计算出修改时间区间,对一条记录的两个时间点进行修改,再删除另外一条记录。

算法1 修复三元组重复的不一致性

FixSameRDF(){

(1)Group by SPO;

(2)Foreach R have same SPO

(4)If T have superposition;

(3)gathe of T[start,end]

1.4 统计学分析 采用SPSS21.0软件进行统计分析,正态分布计量资料的组间比较采用独立样本t检验;非正态分布计量资料的组间比较采用Mann-Whitney U test;P<0.05为差异有统计学意义。

(5)//时间完全重合,就删除记录

(6)Then{

(7)if R1.T incloded R2.T delete R2

(8)else{//修改时间点,使时间连续

(9)R.end=start+1;

(10)or R.start=end-1;}}}//T变连续

(5)then {R2.start =R2.end -1 or R1.end=R2.start-1}

1.3 生命区间的不一致性修复

定义3(节点的生命区间lifespan)节点的生命区间是这个节点的所有入边和出边的有效时间的并集的最大集合。在只有(s,p,o)[start,end]一条数据的情况下,lf[start,end]就是节点s和节点o的生命区间。

计算节点的生命区间要包含节点的所有出边和入边的有效时间。通过遍历并计算所有边的有效时间的并集的最大集合,也就是找到最早的开始点和最晚的结束点。

本研究采用多种类型的测序数据,首次完成了单叶省藤和黄藤染色体水平基因组的组装,2种棕榈藤的基因组作为重要的参考基因组,将有助于促进其他藤种的从头基因组测序组装和重测序研究,同时通过与不同物种进行比较研究,为物种进化研究提供证据。借助两种棕榈藤高质量基因组数据,使木质素生物合成通路关键基因的鉴定更加便捷,这些候选基因对棕榈藤的生长发育非常重要。本研究为进一步对棕榈藤及相关物种基因组的研究奠定了基础。

算法2 计算节点的生命区间

可以在企业对外提供网络服务器上进行部署,进行聚合的网卡必须是同一厂商的产品,通过厂商提供的驱动工具进行捆绑。

输入:节点的URI(唯一性)

输出:节点的生命区间lf[start,end]

1128 放射性 125I 粒子植入治疗胸腺肿瘤胸膜复发的短期临床疗效 朱衍菲,王常禄,朱绫琳,吉永烁,朱君秋,赵 洪,张 宇

(1)Initialize lf[start,end]lf.atart=null,lf.end=null;

(2)for each(s,p,o)[start,end]{

(3)if(URI==s||URI==o){

(4)if(lf.start==null)lf[start,end];

(5)//lf取范围大的时间点

(6)Else{lf.start=MIN(lf.start,start);

(7)lf.end=MAX(lf.end,end);}}

(8)Return lf;}

记录的有效时间T超过S和O的生命区间就是存在生命区间的不一致性。

只有s和o有效存在,s的p属性值为o的信息才会有意义,否则就是与事实不一致。

对于生命区间的不一致性修复,需要修复所有不一致性出入边的有效时间,首先在记录中匹配s,找到节点所有相关记录,再通过比较两个时间区间的起始时间点和结束时间点,计算出保持一致性的有效时间区间,对边的记录的两个时间点进行修改,或直接删除这条出边信息的记录。

微课依托教学目标而存在,设计中所体现的内容较为形象,并且设计流程简单、精准,有利于突出教学重点。微课讲解时间短,能够为学生提供更多的自主学习空间,能够将更多的时间留给学生进行自主探究,学生的学习意识也能够得到有效激发,学生的学习能力也能够在这一过程中得到培养。微课能够应用于不同的情境中,对于小学生来说更为适宜,为学生创建更为灵活的学习环境,从而促使学生在潜移默化中掌握数学知识,只要学生的自主学习意识不断提高,就能在任何时间及地点中进行学习。除此之外,微课还有另一重要优势,就是能够反复利用,学生在面对不懂的知识点时可以不断通过微课进行知识点的深挖及研究,直到明确掌握知识点。

算法3 修复生命区间的的不一致性

FixLifespan(){

(3)group by R.O gathe of T[start,end]

(2)lf=lifespan(URI);

(1)For each node(URI)n do

(4)foreach T

(5)if(lf and T have superposition)

中职生是一个特殊群体,与其他学生相比,中职生素质稍差,大部分学生理论学习热情不高,缺乏钻研精神,学习动机、目标不明确,学习习惯不佳,效率低下,成绩差,厌学、自卑、叛逆几乎成了中职生的普遍特征。如果不能在课堂上调动学生学习积极性,其极易表现出一系列课堂问题行为。我们针对中职生课堂问题行为进行调查。调查对象是兰州大学护士学校学生,主要采取分层抽样方式抽取样本。本次调查共发放300份问卷,回收有效问卷288份,回收率为96%。

(6)//缩小记录的时间区间,包含于节点的lf

(7)then{R.start=lf,start||R.end=lf.end}

(8)if(lf and T have no superposition)

(9)//没有重合就删除记录

(10)then deled R;}

主体、属性、客体都是相同的,即RDF三元组是一样的,表示为(s,p,o)[T1]和(s,p,o)[T2],其中T1和T2只要有重合的部分就是存在三元组重复不一致性。

1.4 发散性属性的不一致性修复

主体和属性相同,不同或相同的客体,表示为(s,p,o1)[T1]和(s,p,o2)[T2],其中 T1 和 T2 有效时间有重叠就存在发散性属性不一致。例如一个人的体重属性在同一时刻的体重值就是唯一的。

发散性属性的不一致性修复,需要对具有发散性p属性的记录进行分类,按照s分为不同的记录子集,重复的有效时间就缩小有效时间区间。需要修复所有节点的p属性不一致性出边。

算法4 修复发散性属性的不一致性

CheckDivergent(p){

Lifespan(URI){

(1)collection of R.p=p,{R.s}is grouped by different R.s

(2)foreach{R.s}gathe of T[start,end]

为了减少由于蒸汽经过暖风器时可能形成汽液两相流对设备的冲击和系统运行不稳定,减少厂用汽量,当有合适的热水作为热源时,建议暖风器的加热介质尽量从热水端取水,当压力不满足要求时,增设管道增压泵。热水加热暖风器系统图如图4所示。

这部小说把那一段历史作为表现内容,把路线的形成过程作为描写主线,就深入到抗日战争的骨子里去了。小说的题目是《共赴国难》,关键在“共赴”二字上。写了策略上的交流、商讨、演变,就使原来各自为政、互不联系的分散状态扭成一股绳,真正变成了一种合力,使“共赴”二字得到了有力的表现。

(3)if(T1 and T2 have superposition)

(4)//缩小时间区间,使得有效时间连续

魔刀和大幻剑在旁没有出手,因为刀手和剑士狂悍攻击使他们成了多余的人。仅一会功夫灰衣人剩两人还在支撑,这还是刀手的钢刀只往他们不要命的地方招呼。刀手不愿过早结束他们的性命。“卟!卟!”和“咔!咔!”快刀剔肉刮骨的刺耳声让人毛骨悚然。两个灰衣人没有喊叫,就像全然没有感知身上的鲜血在飞洒中散发出的浓烈血腥,他们的骨肉也与他们没有任何关系。只是他们的动作渐渐变得迟钝而缓慢。

(6)if(T1 included T2)

(7)//完全重合就删除记录

(8)then deled R2;}

商业银行创新的金融产品需要进行市场推广,得到客户的青睐,从而提升金融产品的知名度。但是目前商业银行对金融产品的推广经验不足,很多金融产品的规模不大[2],效益不高,而且知名度在短时间内也无法提升。

1.5 收敛性属性的不一致性修复

主体不同或相同,但是属性和客体相同,表示为(s1,p,o)[T1]和(s2,p,o)[T2],其中 T1 和 T2 有效时间有重叠就是存在收敛性属性不一致。例如手术室O1在同一时刻只能有一个病人在做手术。

收敛性属性的不一致性修复,将包含p属性的记录按照O分为不同的记录子集,重复的有效时间就缩小有效时间区间。

算法5 修复收敛性属性的不一致性

CheckDivergent(p){

(9)collection of R.p=p,{R.o}is grouped by different R.o

(10)foreach{R.o}gathe of T[start,end]

(11)if(T1 and T2 have superposition)

(12)//缩小时间区间,使得有效时间连续

(13)then{R2.start=R2.end-1 or R1.end=R2.start-1}

(14)if(T1 included T2)

(15)//完全重合就删除记录

(16)then deled R2;}

2 变化操作的不一致性预处理

对于时态RDF数据的添加、修改和删除都可能会造成上文中提出的不一致性问题,因此需要对插入操作、删除操作和更新操作的时态RDF数据首先进行检测与分析,是否会造成4种类型的不一致性,如果存在不一致性问题就要通过修改新的时态RDF数据来进行修复,使得操作后的数据库中的时态RDF始终保持一致性。

2.1 插入操作

插入一条新的时态 RDF 数据 (s,p,o)[start,end],考虑存在的不一致性类型,对不存在的s、p、o,在操作执行后还要建立新的URI,节点o和节点p的生命区间也要计算添加。

第一步:当s和o同时已经在时态数据库中存在,需要对两个节点的生命区间的交集作为生命区间lf进行生命区间的不一致性检测和修复;只有一个节点存在,对这个节点的生命区间进行生命区间的不一致性检测,执行操作,设置另一节点的生命区间为最终的有效时间;两个节点都不存在,执行操作,创建两个节点的URI,并设置两个节点的生命区间为[start,end]。

  

图1 生命区间和插入数据的有效时间关系

如图1所示,实现表示生命区间,虚线是插入数据的有效时间[start,end]。情况 1:在[start,lf.start-1]和[lf,end+1,end]的两段时间,节点不存在,存在生命区间的不一致性,修改插入数据的有效时间为[lf.start,lf.end];2:[start,end]与 lf有间隔或连续,不一致性的时间为[start,end],不执行插入操作;3:生命区间一致性;4:[lf.end+1,end]时间内,存在不一致性,修改插入数据的有效时间为相交的时间[start,lf.end]。

第二步,当p和s存在且p是发散性属性,需要检测修复s的p发散性属性不一致性,如果插入操作执行,但是o不存在,o的生命区间为修改后的数据的有效时间。

  

图2 发散性属性出边的有效时间关系

如图2实线为s的p属性的有效时间,虚线是要插入数据的有效时间。情况1:在[start,t2]和[t3,end]有两个p属性值,存在发散性属性的不一致性,但[t2+1,t3+1]有间隔,将插入的数据的有效时间修改为[t2+1,t3+1];2:p 属性一致性;3:在[start,end]内s有两个p属性值,存在不一致性,不执行插入操作。

第三步,当p和o存在且p是发散性属性,需要对o进行p属性的收敛性属性不一致性检测和修复,如果插入操作执行,s不存在,s的生命区间为修改后数据的有效时间。

找到p属性值是o的所有记录的有效时间,与图2的情况相同,情况1:存在收敛性属性不一致性,将插入的数据的有效时间修改为[t2+1,t3+1];2:p 属性一致性;3:[start,end]内都存在 p 属性的不一致性,不执行插入操作。

第四步,当spo都存在时,进行三元组重复的不一致性检测与修复。

  

图3 (s,p,o)所有的有效时间关系

如图3 所示,实线是(s,p,o)的所有有效时间,虚线是插入的有效时间。情况1:时间的重叠存在三元组重复的不一致性,修改插入数据有效时间为[t1,t4],并删除记录(s,p,o)[t1,t2]和(s,p,o)[t3,t4];2:不存在三元组重复的不一致性;3:不一致性时间区间为[start,end],不执行插入操作;4:[start,end]包含[t7,t8],只需删除记录(s,p,o)[t7,t8]。

分情况按照上述的步骤进行所有类型的不一致性检测和修复,如果执行插入操作,就将spo中不存在的创建URI,并对节点添加生命区间。

2.2 删除操作

删除一条时态 RDF 数据(s,p,o)[start,end],当spo中的一个或多个不存在时,就不执行删除操作。

  

图4 相同三元组的有效时间的关系

如图4 所示,实线是(s,p,o)的所有有效时间,虚线是要删除数据的有效时间。情况1:[start,end]包含[t1,t2],或者相等,直接删除(s,p,o)[t1,t2]记录;2:(s,p,o)在[t1,start-1]的时间内有效,修改记录(s,p,o)有效时间为[t1,start-1];3:(s,p,o)在[start,end]的时间内无效,删除操作不用执行;4:(s,p,o)在[t3,start-1]和[end+1,t4]时间内是有效的,修改记录(s,p,o)有效时间为[t3,start-1],再插入一条记录(s,p,o)[end+1,t4]。

(s,p,o)的有效时间的缩小并不会造成任何的不一致性,要对相应的记录做修改,而不是直接匹配一模一样的数据记录进行删除。

2.3 更新操作

更新操作可以分为两部分,首先是删除原有的数据,再插入新的数据。

更 新(s,p,o)[start,end]为(s’,p’,o’)[start’,end’]。首先找到(s,p,o)[start,end]所对应的记录。情况与图4 一样,情况 1:[start,end]包含[t1,t2],或者相等,最后要删除的记录就是(s,p,o)[t1,t2];2:修改记录(s,p,o)[t1,t2]为[t1,start-1];3:不执行更新操作;4:修改记录(s,p,o)[t3,t4]为[t3,start-1],再插入一条记录(s,p,o)[end+1,t4]。

找到相应的记录后,插入(s’,p’,o’)[start’,end’],对这条新时态RDF数据也要进行4种类型的不一致性的分析,如果不执行插入操作,说明存在不一致性,不执行更新操作,在之前找到相应记录的分析作废,也就不用修改记录了。

3 实验结果

本节是对上文中提出的时态RDF数据的不一致修复和变化操作的不一致性预处理进行了实验验证。在LUBM(Lehigh University Benchmark)标准数据集的基础上随机生成有效时间添加时间标签,在对不同数量的数据集上分别进行了实验,并进行对比和说明,实验环境如表1所示。

 

表1 实验环境

  

实验硬件环境 Intel酷睿i3-2310CPU,内存4GB操作系统 windows764位开发软件 xampp编程 php、JavaScript,yii框架数据库 phpmyadmin

首先检测500条时态RDF数据的不一致性,首次计算节点的生命区间。左边就是存在不一致性数据,右边是修改后的一致性数据。

  

图5 时态RDF数据存在的不一致性

下图是逐渐增加数据且修改后产生的不一致性的折线图:

  

图6 不同数量时态RDF数据存在的不一致

每增加1000条时态RDF数据,产生的每一种不一致性是在逐渐增加的。生命区间的不一致性产生的数量最多是因为节点的生命区间是由500条时态数据产生,后续的有效时间随机产生,超过生命区间可能性很高。

对于变化操作的预处理实验采用5000条一致性的时态RDF数据的数据集。

图7是插入的500条数据中存在的不一致性分布情况,白色的柱状图表示可以修复的不一致性,插入修改后数据;黑色的柱状图是无法修复的不一致性,只能放弃执行插入。

  

图7 插入500条数据存在的不一致性

图8是删除300条数据造成不一致性的修复情况,有213条数据不能直接删除,有176条数据不一致性修复后删除,有37条数据找不到对应的记录,不执行删除操作。

  

图8 删除300条数据不一致性修复情况

图9是更新150条数据存在不一致性的情况,没有对应删除的数据有26条,不更新,有125条更新后的数据存在不一致性,白色的柱状图表示有90条数据修复后更新,35条数据不执行插入操作。

  

图9 更新操作的不一致性情况

4 结束语

针对支持有效时间的时态RDF数据进行了在有效时间上的不一致性研究和分析,分别是三元组重复的不一致性、生命区间的不一致性、发散性和收敛性属性的不一致性,并对4种类型的不一致进行了修复,对于更新的时态RDF数据,针对每种变化操作,即插入、删除和更新,分析了每种操作的不一致性预处理方法。

未来工作:1.时态RDF数据会时常更新,修复不一致性消耗太大,修性算法的效率还有待提高。2.对于支持有效时间的时态RDF数据之间的推理、蕴含等内置函数和数据间关系和结构都没有讨论和研究。3.对有效时间的确定与验证没有进行讨论,对于不确定时间的处理也需要另行研究。

参考文献

[1]SWICK R R.Resource description framework(RDF)model and syntax specification W3C recommendation [M].[S.l.]:W3C Recommendation World Wide Web Consortium,2009.

[2]BERNERS-LEE T,HENDLER J,LASSILA O.The sem an tic web[J].Scientific American,2001,284(5):34—43.

[3]HURTADO,VAISMAN A.Reasoning with temporal constraints in RDF[J].In PPSWR Workshop,2006,LNCS(4187):164—178.

[4]汤庸.时态数据库导论[M].北京:北京大学出版社,2004.

[5]陈秀万,吴欢,李小娟,等.基于事件的土地利用时空数据模型研究[J].中国图象图形学报,2003,8(8):957—963.

[6]辜炜东,汤庸,王路帮,等.事务数据库中的时态信息挖掘[J][J].计算机工程与应用,2004,40(18):174—177.

[7]BOHLEN M H,JENSEN C S,SNODGRASS R T.Evaluating and enhancing the completeness of TSQL2[R].TR 95-5.Computer Science Department,University of Arizona.

[8]DYLLA M,SOZIO M,THEOBALD M.Resolving temporal conflicts in inconsistent RDF knowledge bases[R].Scientific American,2011,356(12):53—64.

[9]RIZZOLO F,VAISMAN A A.Temporal XML:modeling,indexing,and query processing [J].VLDB Journal,2008,17(5):1179—1212.

[10]TANSEL A,CLIFFORD J,GADIA EDS S.Temporal databases:theory,design and implementation,benjamin [R].Cummings,1993,34(22):53—62.

[11]CHAWATHE S,ABITEBOUL S,WIDOM J.Managing historical semistructured data[J].Theory and Practice of Object Systems,1999,5(3):143-162.

[12]HURTADO L C,GUTIERREZ C,VAISMAN A.Temporal RDF[J].ACM Trans on Computational Logic,2014,354(17):15—25.

[13]PUGLIESE A,UDREA O,SUBRAHMANIAN V S.Scaling RDF with time [C]//Proc of the 17th international conference on World Wide Web.2008:605—614.

[14]UDREA O,RECUPERO D R,SUBRAHMANIAN V S.Annotated RDF[J].ACM Trans on Computational Logic,2010,49(3):33-35.

 
张燕超
《计算技术与自动化》2018年第04期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号