[发明专利]一种结合Rete算法的RDF数据分布式并行推理方法有效
申请号: | 201510047202.6 | 申请日: | 2015-01-30 |
公开(公告)号: | CN104615703B | 公开(公告)日: | 2017-12-08 |
发明(设计)人: | 汪璟玢;郑翠春 | 申请(专利权)人: | 福州大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 福州元创专利商标代理有限公司35100 | 代理人: | 蔡学俊 |
地址: | 350108 福建省福州市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 结合 rete 算法 rdf 数据 分布式 并行 推理 方法 | ||
技术领域
本发明涉及语义网技术领域,特别是一种结合Rete算法的RDF数据分布式并行推理方法。
背景技术
语义万维网(Sematic Web)是万维网的扩展与延伸,当前万维网联盟(W3C)指定的本体标准主要包括RDF/RDFS和OWL。随着语义万维网(Sematic Web)的应用,产生了海量的语义信息。由于数据的复杂性和大规模性,如何通过语义信息并行推理高效地发现其中隐藏的信息是一个亟待解决的问题。目前集中式环境中已经无法满足大规模数据的需求;而分布式的环境能够实现大规模数据的推理。目前,在分布式环境下的推理已经有不少工作。如模糊pD*的推理、ALC逻辑的P2P网络推理、OWL2的EL++分布式推理以及分布式推理引擎WebPIE。这些推理的方法不够高效。这些推理的方案大部分结合了MapReduce计算框架,通过RDFS/OWL推理规则对数据进行推理。
随着语义网中数据的急速增长,如何高效地进行大数据的推理是近两年的研究热点,但还处于研究的初始阶段。目前比较成熟的分布式推理引擎为WebPIE,虽然满足大数据的并行推理,但是由于WebPIE针对每一条规则启用一个或者多个MapReduce任务进行推理,而MapReduce Job的启动相对耗时,因此随着RDFS/OWL推理规则的增加,推理的效率受到了限制。集中式中的Rete算法具有并行的高效性,目前还没有结合Rete算法的分布式并行推理方案。
实用在集中式环境下无法满足海量数据的需求,而分布式环境下的推理不够高效,推理的并行化。集中式环境下的Rete算法虽然能够高效地实现数据的推理,但是由于在alpha阶段和beta阶段执行任务时候需要大量的内存,导致它无法直接在集中式中处理大规模的数据推理。
发明内容
本发明的目的在于提供一种结合Rete算法的RDF数据分布式并行推理方法,以满足大规模数据的分布式并行推理的需求,同时保证Rete算法实现分布后推理数据的正确性。
为实现上述目的,本发明的技术方案是:一种结合Rete算法的RDF数据分布式并行推理方法,其特征在于,按照如下步骤实现:
S1:在MapReduce算法框架下结合Rete算法,在所述分布式并行推理方法的Map阶段完成Rete算法中alpha网络的建立,并根据输入的RDF数据和对应的RDFS/OWL规则,以键值形式输出满足对应RDFS/OWL规则前件的实例三元组;
S2:在所述分布式并行推理方法的Reduce阶段完成Rete算法中beta网络的功能,并根据步骤S1中Map阶段的输出结果,完成RDF数据对应的所有RDFS/OWL规则的并行推理。
进一步的,所述步骤S1还包括如下步骤:
S11:将输入的RDF数据中与对应的RDFS/OWL规则中所有前件的模式三元组作为所述Map阶段的输入,并将该模式三元组加载到内存中;
S12:将所述Map阶段输出的键(key)设定为规则名称,值(value)为满足对应RDFS/OWL规则前件的实例三元组;如果一个实例三元组数据满足的前件是多个规则的前件,则采用不同的键(key)冗余的存储该实例三元组数据;
S13:将所述Map阶段的输出的实例三元组作为所述Reduce阶段的输入数据。
进一步的,所述步骤S2还包括如下步骤:
S21:在所述Reduce阶段,SubReduce阶段个数和键(key)个数匹配,以保证分布式的并行性和推理的完整性,每一个键(key)对应一个SubReduce阶段,根据每个实例三元组对应的键(key),将实例三元组进行组合,获取相同键(key)的实例组合列表值,并将组合后的实例组合列表值作为每个键(key)对应的SubReduce阶段的输入;
S22:在每个SubReduce阶段中,根据该SubReduce阶段对应的键(key)将内存中的所述模式三元组与所述实例组合列表完成连接推理,并获取推理结果;
S23:将所述推理结果保存到一推理三元组列表中,当该推理三元组列表中的数量达到预设阈值N后启动I/O输出,一次性将所述推理结果输出,以避免频繁的I/O输出造成系统性能的下降;输出的推理结果以键(key)和值(value)为变量的形式进行保存,其中N为大于或等于1的正整数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510047202.6/2.html,转载请声明来源钻瓜专利网。