基于区块链的知识图谱多人协同构建方法与系统

未命名 08-22 阅读:109 评论:0


1.本发明涉及区块链技术领域,尤其涉及一种基于区块链的知识图谱多人协同构建方法与系统。


背景技术:

[0002]“知识图谱”这一概念在2012年被google正式提出。2013年之后,随着智能信息服务和应用的不断发展,知识图谱、大数据和深度学习一并成为推动互联网和人工智能发展的核心动力。在生产过程中,知识图谱的构建问题往往需要多个部门、多重角色间的协同处理。传统协同方式单一,协同用户之间存在信息沟通壁垒,易导致用户之间数据信息交互不畅,影响多用户协同构建知识图谱的效率。如果将数据直接存储到区块链上,会对区块链网络的存储性能带来极大挑战;同时,又因区块链交互性能较差,会对多人协同之间信息交流产生较大影响。现有技术设计了相应的链上链下协同存储方案和属性加密方案来解决上述问题,但由于它们普遍采用单一区块链进行数据管理,区块链的吞吐量性能难以满足知识图谱多人协同场景的并发处理需求;此外,现有技术在利用现有方式存储知识数据时,极易出现重复数据和冲突数据,加大了区块链存储压力,影响了系统的协同能力。
[0003]
同时,多用户间协同的并发事物难以监控,容易导致用户间的数据冲突、数据冗余的情况,导致协同进程进展缓慢,并且系统管理机制不够完善,没有统一的校验版本,无法合理约束各协同用户的工作进度以及工作责任。据此,如何提出一种系统及方法,能够有效的打通各协同用户间的数据私有壁垒、保证各协作用户协同事务的高效运作,已经成为迫切需要解决的问题。
[0004]
针对上述问题,huajunchen基于区块链提出了openkg链的概念,利用ontid和openkg令牌机制解决了传统知识图谱众包平台中用户间信任问题和数据价值溯源问题。timotej knez提出使用区块链记录多人协同创作过程中每次创作后的知识图谱的更新数据信息,利用区块链防篡改和可追溯的性质,可以保证多人协同创作时数据的安全性和共享性。然而,在上述研究中,未能实现有效的管理并发数据,易造成链上链下数据不一致,用户信息不对等,数据冗余的问题。


技术实现要素:

[0005]
本发明针对上述的现有技术中存在的链上链下数据不一致,多人协同版本冲突,数据冗余的技术问题,提出一种基于区块链的知识图谱多人协同构建方法与系统。
[0006]
第一方面,本技术实施例提供了一种基于区块链的知识图谱多人协同构建方法,包括:
[0007]
初始数据上传步骤:协同任务发布方创建以供图谱设计师参照的知识图谱本体数据,将知识图谱的本体数据存储至ipfs,根据返回的哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录,并上传至区块链发布链;
[0008]
任务发布步骤:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的
知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据;
[0009]
数据设计步骤:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据;
[0010]
协同数据上传步骤:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上传到区块链协同链;若不是,放弃上传。
[0011]
更新数据融合上传步骤:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;
[0012]
数据发布步骤:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的完整知识图谱数据上传到区块链发布链。
[0013]
第二方面,本技术实施例提供了一种基于区块链的知识图谱多人协同构建系统,用于实现上述第一方面所述的知识图谱多人协同构建方法,其特征在于,包括:
[0014]
环境部署单元:部署区块链多链网络环境和ipfs环境,调用多链划分规则划分区块链网络,并构建ipfs;其中,划分区块链发布链为主链,划分区块链设计链、区块链协同链为支链;
[0015]
初始数据上传单元:协同任务发布方创建以供图谱设计师参照的知识图谱本体数据,将知识图谱的本体数据存储至ipfs,根据返回的哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录,并上传至区块链发布链;
[0016]
任务发布单元:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据;
[0017]
数据设计单元:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,根据本体数据的架构结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据;
[0018]
协同数据上传单元:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上
传到区块链协同链;若不是,放弃上传;
[0019]
更新数据融合上传单元:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;
[0020]
数据发布单元:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的完整知识图谱数据上传到区块链发布链。
[0021]
与现有技术相比,本发明的优点和积极效果在于:
[0022]
1、针对于现有基于区块链的知识图谱多人协同构建系统及方法面临的时间顺序执行限制性高,因系统消息延迟造成的用户消息不能及时同步的问题,本发明采用时钟周期划分的方式。合理分析知识图谱构建流程,将整个多人协同构建周期划分为本体上传周期、本体设计周期以及本体融合周期,有效降低了区块链对顺序执行的需求。
[0023]
2、针对现有技术面临的区块链网络低并发而造成的多人协同构建数据不一致性问题,考虑到现有知识图谱多人协同构建单链存储方式的固有局限,本发明设计了多链存储结构,依据用户使用周期以及知识图谱数据类型使用方式将系统数据发分到不同的子链进行维护,使得各子链所需处理的知识图谱数据趋于一致,从而充分利用各节点的计算资源,提高区块链网络的并发处理能力。
[0024]
3、针对现有技术在管理用户提交的知识图谱数据存在冗余和冲突性的问题,本发明提出了一种语义融合算法,在现有知识图谱cypher的基础上,通过提取、对比节点属性关系,减少了数据冗余,提高了存储效率。
附图说明
[0025]
图1为本发明提供的一种基于区块链的知识图谱多人协同构建方法的步骤示意图;
[0026]
图2为本发明提供的基于图1中步骤s3的流程示意图;
[0027]
图3为本发明提供的基于图1中步骤s6的流程示意图;
[0028]
图4为本发明提供的基于图3中步骤s62的流程示意图;
[0029]
图5为本发明提供的基于图1中步骤s7的流程示意图;
[0030]
图6为本发明提供的一种基于区块链的知识图谱多人协同构建系统的一实施例流程示意图;
[0031]
图7为本发明提供的一种基于区块链的知识图谱多人协同构建方法的一实施例流程示意图;
[0032]
图8为本发明提供的语义融合算法的流程示意图;
[0033]
图9为本发明提供的协同任务发布方操作流程图;
[0034]
图10为本发明提供的图谱设计师操作流程图;
[0035]
图11为本发明提供的基于区块链的知识图谱多人协同构建的时序图;
[0036]
图12为本发明提供的基于区块链的知识图谱多人协同构建的模型示意图;
[0037]
图13为本发明提供的一种基于区块链的知识图谱多人协同构建系统架构图。
具体实施方式
[0038]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0039]
显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
[0040]
在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
[0041]
除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
[0042]
下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
[0043]
实施例一:
[0044]
图1为本发明提供的一种基于区块链的知识图谱多人协同构建方法的步骤示意图。如图1所示,本实施例揭示了一种基于区块链的知识图谱多人协同构建方法(以下简称“方法”)的具体实施方式。
[0045]
为解决知识图谱多人协同构建时的“数据孤岛”和信息同步延迟的问题,本实施例提供一种基于区块链的知识图谱多人协同构建方法,利用区块链多链协同工作原理,将用户操作与系统验证巧妙分割,用户系统校验有了统一标准。在时钟周期的配合下,可以实现完全高并发操作,并通过语义融合算法,保留新增数据、筛选重复数据、删除冲突数据,在保
证系统正常运行的情况下,实现了更新数据的增量更新,减少了区块链上的数据存储压力。
[0046]
具体而言,本实施例所揭示的方法主要包括以下步骤:
[0047]
环境部署步骤s1:部署区块链多链网络环境和ipfs环境,调用多链划分规则划分区块链网络,并构建ipfs;其中,划分区块链发布链为主链,划分区块链设计链、区块链协同链为支链。
[0048]
具体的,部署区块链多链网络环境和星际文件系统(即ipfs)环境,调用多链划分规则将区块链网络划分为多条子链,将子链与智能化子系统的对应关系写入配置文件并存储到网关和服务器本地,随后将云服务器作为节点构建ipfs私有网络;
[0049]
其中,上述ipfs是一种全新的超媒体文本传输协议,基于分布式存储技术,可提供较大的数据存储能力,本方法的大型文件数据全部利用ipfs进行存储。其中,所述多链划分规则包括以下内容:
[0050]
划分发布链为主链,作为知识图谱稳定版本存在的区块链,对应软件开发的正式版本。发布链上的本体数据由管理员进行发布,并长期处于稳定状态,不允许协同用户提交。
[0051]
上述实施例中,发布链作为系统主链,负责用户注册、本体数据管理、本体权限管理的主要功能。
[0052]
其中,所述用户注册包括引入用户管理机制,管理员赋予用户本体管理权限的功能。
[0053]
所述本体数据管理包括管理本体数据,实现本体数据动态更新与查询,链下sdk(接收/响应用户请求,非文本数据ipfs存储,与子链交互,监听主链联动事件、处理并反馈)的功能。
[0054]
所述本体权限管理包括管理本体数据权限,设置哪些用户可以协同管理本体数据的功能。
[0055]
上述实施例中,划分设计链为支链,作为知识图谱设计版本存在的支链,包含知识图谱最新的更新数据。设计链接收每t时间收集协同链上各协作用户的更新数据,并作为下一t时间开始时,协作用户的初始数据和一致性检查数据。作为知识图谱更新的主分支,一般不允许协作用户直接提交更新数据。设计链上的数据基本完善后,调用智能合约启用语义融合算法,并由管理员校验公布到发布链上。
[0056]
上述实施例中,设计链作为系统子链,负责更新数据管理、更新数据融合的主要功能。
[0057]
具体地,所述更新数据管理包括管理更新数据,实现更新数据动态更新与查询,联动发布链合约(发起设计链联动请求、记录子链联动日志、反馈它链联动请求)的功能。
[0058]
具体地,所述更新数据融合包括设计融合机制,按周期拉取cypher协同链中的数据并进行更新数据融合操作的功能。
[0059]
其中,语义融合算法用于在图谱更新周期t结束后,区块链会利用智能合约调用语义融合算法,融合本周期内图谱设计师所提交的更新数据,并将融合后的本周期内的更新数据上传设计链。
[0060]
上述实施例中,划分协同链为支链,作为协同用户主要发布更新数据的支链,接收协同用户上传的知识图谱协同更新数据。
[0061]
上述实施例中,协同链作为系统子链,包括更新数据管理的功能。
[0062]
具体地,所述更新数据管理包括管理更新数据,实现更新数据动态更新与查询、联动设计链合约(发起设计链联动请求、记录子链联动日志、反馈它链联动请求)、链下sdk(接收/响应用户请求,非文本数据ipfs存储,与子链交互,监听主链联动事件、处理并反馈)的功能。
[0063]
在一些实施例中,协同用户通过终端向知识图谱多人协同构建系统的后台服务器发起数据访问请求,考量知识图谱构建的整个生命周期,将各个用户参与协同的方式作为参考,对知识图谱多人协同构建系统整个生命周期进行划分,参与协同构建的相关用户可以在所属生命周期运行阶段参与知识图谱的协同构建任务。
[0064]
初始数据上传步骤s2:协同任务发布方创建以供图谱设计师参照的知识图谱本体数据,将知识图谱的本体数据存储至ipfs,根据返回的哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录,并上传至区块链发布链;
[0065]
具体地,创建知识图谱的本体数据并存储至ipfs,返回对应的哈希存储地址,根据所述哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录并上传至区块链发布链;
[0066]
其中,如图2所示,初始数据上传步骤s2包括:
[0067]
图谱本体数据创建步骤s21:在本体上传周期,协同任务发布方创建知识图谱的本体数据,并进行一致性检查,一致性检查通过后将所述知识图谱的本体数据存储至ipfs,获取返回的哈希存储地址;
[0068]
图谱本体数据步骤s22:通过hash算法计算知识图谱的本体数据的哈希值,根据所述本体数据的哈希存储地址与哈希值生成知识图谱总结记录,并通过汇总链码上传至区块链发布链;
[0069]
标准数据获取步骤s23:从区块链发布链获取需要协同的知识图谱总结记录,获取知识图谱对应的哈希存储地址及知识图谱的本体数据的哈希值,并创建任务信息,根据所述哈希地址与所述任务信息及知识图谱的本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链作为标准数据。
[0070]
任务发布步骤s3:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据。
[0071]
数据设计步骤s4:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,根据本体数据的架构结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据。
[0072]
具体地,从区块链设计链获取最新的知识图谱协同任务信息,并获取对应的哈希存储地址,根据所述哈希存储地址从ipfs中获取最新的知识图谱本体数据应用到本地进行设计形成个人更新数据。
[0073]
其中,数据设计步骤s4具体包括:在图谱更新周期,图谱设计师从区块链设计链获
取最新的知识图谱总结记录,判断所述知识图谱总结记录中的哈希值与本地保存的哈希值是否一致;若是,则在本地进行知识图谱数据的设计与更新;若否,则通过知识图谱总结记录从区块链设计链中获取对应的哈希存储地址,根据所述哈希存储地址从ipfs中获取最新的知识图谱本体数据至本地知识图谱数据库,在本地进行知识图谱数据的设计与更新。
[0074]
协同数据上传步骤s5:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上传到区块链协同链;若不是,放弃上传;
[0075]
具体地,通过本体推理机检查标准数据与个人更新数据的一致性,通过个人更新数据及对应的哈希值生成知识图谱本体设计信息,根据所述知识图谱本体设计信息生成知识图谱设计记录并上传到区块链协同链;
[0076]
更新数据融合上传步骤s6:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;
[0077]
具体地,通过语义融合算法将本周期内所有的知识图谱本体设计信息融合成cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录并上传至区块链设计链;
[0078]
其中,如图3所示,步骤s6包括:
[0079]
哈希值验证步骤s61:图谱更新周期结束后,通过知识设计下载链码获取本周期内所有的知识图谱设计记录,验证哈希值是否被篡改;
[0080]
语义融合步骤s62:若未被篡改,利用语义融合算法将本周期内区块链协同链中所有涉及的cypher更新语句融合成cypher语句融合信息,并计算哈希值;
[0081]
融合数据上传步骤s63:根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。
[0082]
进一步的,如图4所示,所述语义融合步骤s62包括:
[0083]
第一差值计算步骤s621:将本周期内所有涉及的cypher更新语句进行初始化,计算初始化后的cypher更新语句的交集,并计算初始化后的cypher更新语句与所述交集的差值为第一差值;
[0084]
数据筛选步骤s622:筛选出所述第一差值中存在的冲突数据与不一致数据;
[0085]
融合数据获得步骤s623:计算所述第一差值与所述冲突数据、不一致数据之间的差值作为第二差值,将所述第二差值与所述初始化后的cypher更新语句的交集合并,形成cypher语句融合信息;
[0086]
融合数据返回步骤s624:若所述cypher语句融合信息不为空,则返回所述cypher语句融合信息,若所述cypher语句融合信息为空,则返回错误信息提示。
[0087]
其中,融合数据上传步骤s63中根据所述cypher语句融合信息的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。
[0088]
数据发布步骤s7:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的
完整知识图谱数据上传到区块链发布链;
[0089]
具体地,从区块链设计链获取所述数据融合记录,并采用本体推理机进行一致性校验,将校验通过的数据上传到区块链发布链。
[0090]
其中,如图5所示,步骤s7包括:
[0091]
融合数据验证步骤s71:通过融合记录下载链码从区块链设计链获取数据融合记录,验证哈希值是否被篡改;
[0092]
融合数据发布步骤s72:若未被篡改,协同任务发布方采用语义融合算法,将cypher语句融合信息应用到本地cypher数据库进行同步,获得更新的知识图谱数据,并上传至区块链发布链。
[0093]
以下,请参照图6、图7,具体说明本方法的应用流程如下:
[0094]
需要说明的是,本实施例出现的角色及中文标准解释如表1所示:
[0095]
表1
[0096][0097]
本实施例出现的符号名称及中文标准解释如表2所示:
[0098]
表2
[0099][0100]
如图6所示,系统由s1用户模块、s2-s4数据处理模块、s5区块链多链存储模块、s6信息通信模块、s7周期控制模块、s8大型文件星际文件系统(即ipfs)存储模块组成。本方法具体实现步骤如图7所示,各步骤详细内容为:
[0101]
s1:新用户注册,全局配置。由ca模块执行,当系统中有新的协同任务发布方或本体设计者加入时,系统会自动为其生成公私密钥对。
[0102]
s2:知识图谱数据初始化。属于本体上传周期。协同任务发布方创建了minit并存储到ipfs当中,获取返回的ipfs_addr。根据minit计算hm,系统将hm、ipfs_addr发送给mai_cupload并结合其他相关信息生成mai_record上传到bc发布链。
[0103]
具体地,所述周期划分包括本体上传周期、图谱更新周期、语义融合周期。
[0104]
所述本体上传周期是由知识图谱协同任务发布方公布知识图谱本体数据,利用hash加密算法生成图谱摘要文件,并将摘要信息上传区块链主链发布链保存。
[0105]
所述图谱更新周期是指知识图谱本体设计者上传本次更新的本体数据,利用语义融合算法,将本次更新的本体数据与知识图谱本体数据融合,生成融合信息和ipfs存储地址信息,并将信息上传区块链支链协同链保存。
[0106]
所述语义融合周期是指在每个图谱更新周期结束后,部署在区块链中的智能合约自动使用语义融合算法,对本次图谱更新周期内上传的数据进行融合,生成知识图谱融合信息和ipfs存储地址信息,并将信息上传区块链支链设计链保存。
[0107]
具体地,所述步骤s2中,协同任务发布方操作流程如图9所示,包括以下步骤:
[0108]
a)协同任务发布方创建了minit并存储到ipfs当中,获取返回的ipfs_addr。根据minit计算hm,系统将hm、ipfs_addr发送给mai_cupload并结合其他相关信息生成mai_record上传到bc发布链;
[0109]
需要补充说明的是,minit表示知识图谱本体数据,当系统中没有知识图谱数据时,协同任务发布方需要上知识图谱本体数据,此数据在系统中只会保留一份,后续修改内容只是保留更改步骤信息,不会对知识图谱本体数据进行直接修改。
[0110]
b)判断当前周期是否处于本体上传或本体更新阶段,若是则转入步骤c),否则进入步骤d);
[0111]
c)协同任务发布方利用智能合约获取区块链设计链上的最新的更新数据;
[0112]
需要补充的是,区块链设计链上的数据是由图谱更新周期结束之后,智能合约利用语义融合算法从区块链协同链上自动融合生成的数据。
[0113]
d)等待进入本体上传和本体更新阶段;
[0114]
e)校验新获取数据中的hash与本地保存的hash是否一致,若是则循环转入步骤b),否则进入步骤f);
[0115]
具体地,所述e)步骤中新获取数据指的是c)步骤中协同任务发布方利用智能合约获取区块链设计链上的最新的更新数据。
[0116]
需要补充说明的是,这一步的主要步骤是验证数据是否进行过修改,如果数据经过修改,协同任务发布方需要将区块链协同链上的数据应用到本地知识图谱数据库,使本地数据与链上数据达到同步状态,如果未经修改,则不需要同步操作。
[0117]
f)使用语义融合方法更新本地知识图谱数据,并更新本地保存的hash;
[0118]
具体地,所述步骤f)中,更新本地知识图谱数据需要将e)步骤中新获取数据应用到本地已有知识图谱数据之上。
[0119]
g)上传本地知识图谱数据到ipfs,并将返回的地址信息及其他信息上传bc发布链;
[0120]
需要补充说明的是,步骤g)与步骤a)类似,协同任务发布方需要上传知识图谱本体数据,取代知识图谱本体数据作为当前最新公开版本,但不会删除步骤a)中的知识图谱本体数据。
[0121]
h)判断知识图谱设计是否完成,若是程序完成并退出,否则转入步骤b)。
[0122]
具体地,所述步骤s2中,知识图谱本体数据是包含知识图谱完整三元组信息的构建语句,用户可以直接拉取此数据,在本地知识图谱数据库构建完整的知识图谱。
[0123]
具体地,ipfs是一种分布式的文件存储系统,以文件形式存储数据,通过文件内容生成唯一的哈希值来标识文件;ipfs用于存储知识图谱本体数据,从而减轻区块链网络的存储、带宽压力。
[0124]
s3:图谱更新周期开始前,协同任务发布方将本周期内需要协同设计的标准数据上传到设计链。
[0125]
具体地,所述s3步骤中,标准数据是指知识图谱完整三元组信息的构建语句。
[0126]
s4:知识图谱数据获取与设计。属于图谱更新周期。图谱设计师获取最新的知识图谱数据进行设计。图谱设计师从bc设计链获取最新的mai_record,验证md是否是唯一的。如
果验证通过,图谱设计师根据ipfs_addr从ipfs中获取mnew,并对mnew进行设计。
[0127]
具体地,所述步骤s4中,图谱设计师操作流程图如图10所示,包括以下步骤:
[0128]
a)判断是否处于图谱更新周期,若是转入步骤c),否则转入步骤b);
[0129]
b)等待进入图谱更新周期;
[0130]
c)图谱设计师从bc设计链获取最新的mai_record,并验证hash;
[0131]
需要补充的是,图谱更新周期是按顺序执行的,图谱设计师在进行本体数据更新设计之前,需要验证自己本地数据是否是当前图谱更新周期的最新数据。
[0132]
d)判断新获取数据中的hash与本地保存的hash是否一致,若是转入步骤f),否则转入步骤e);
[0133]
e)图谱设计师利用mai_record获取ipfs_addr,并从ipfs中获取最新数据信息应用到本地,形成hash保存到本地;
[0134]
需要补充的是,mai_record是存在于区块链上的数据,图谱设计师需要利用智能合约查询最新的mai_record数据并解析出ipfs_addr数据信息。
[0135]
f)图谱设计师在自己本地进行知识图谱数据的设计与更新;
[0136]
需要补充的是,图谱设计师在自己本地进行知识图谱数据的设计与更新时,是完全离线操作,不会影响到系统中现有数据,更不对其现有数据进行更改。
[0137]
g)图谱设计师利用语义融合算法获取mdi并计算hmdi;
[0138]
h)判断图谱设计师是否需要上传本地数据到系统,若是转入步骤r),否则转入步骤j);
[0139]
r)系统将hmdi发送到mdi_cupload,并结合其他相关信息生成mdirecord上传到bc协同链;
[0140]
j)判断是否需要继续进行知识图谱数据的设计,若是转入步骤a),否则程序完成并退出。
[0141]
s5:在此次图谱更新周期结束前,图谱设计师可以利用语义融合算法获取mdi并计算hmdi,系统将hmdi发送到mdi_cupload,并结合其他相关信息生成mdirecord上传到bc协同链。
[0142]
具体地,所述s5步骤中,图谱设计师不需要上传知识图谱完整三元组信息,只需将本阶段自身更新数据上传到系统当中。
[0143]
s6:知识图谱本体更新数据融合。属于语义融合周期。在每个图谱更新周期结束之后,bc自动使用mdi_cdownload获取本周期内所有的mdirecord,验证哈希值是否被篡改。如果未经篡改,利用语义融合算法将所有的mdi融合为mfdi并计算hmfdi。将hmfdi结合其他相关信息生成mfdi_record。最后系统调用mfdi_cupload将mfdi_record上传到bc设计链。
[0144]
具体地,所述s6步骤中提到的语义融合算法流程示意图如图8所示,具体包括以下几个步骤:
[0145]
step1:接受多个用户传入的知识图谱cypher本体更新数据:kg0、kg1;
[0146]
step2:将用户传入本体更新数据kg0、kg1初始化,统一语句格式并精简查询语句形成k0、k1;
[0147]
step3:计算用户初始化后的本体更新数据k0、k1的交集k
*
,若k
*
!=null则将k
*
集合划分保存;
[0148]
step4:计算用户初始化后的本体更新数据k0、k1与集合k
*
的差值g0、g1作为知识数据冲突校验的传入参数;
[0149]
step5:筛选出g0、g1中存在的冲突数据和不一致数据s
*

[0150]
step6:将g0、g1与不一致数据s
*
求取差值,将得到的差值与k
*
合并,形成融合数据δ
*

[0151]
step7;若δ
*
不为空,则将返回k
*
、δ
*
。若δ
*
为空则返回错误信息提示。
[0152]
具体地,上述知识图谱cypher是一种声明式图查询语言,cypher借鉴了sql的结构,允许对图进行表达性和高效的查询、更新和管理,可以轻松表达高度复杂的数据库查询。
[0153]
s7-s8:知识图谱数据发布。属于本体上传周期。协同任务发布方利用mfdi_cdownload从bc设计链获取mfdi_record,验证其哈希值确保未被篡改。协同任务发布方采用语义融合算法将mfdi应用到本地cypher数据库进行同步,然后将mudate上传到ipfs。
[0154]
需要补充说明的是,考虑到系统的可用性,所描述的步骤s7和步骤s8可以合为一个步骤来执行。
[0155]
需要补充说明的是,所述参与用户和服务器必须满足部署hyperledgerfabric区块链和ipfs运行环境所必需的内存和硬盘空间,否则将无法正常运行区块链多链网络和/或ipfs网络。
[0156]
以下,参照图11、图12,结合实施例进一步详细说明本发明提出的基于区块链的知识图谱多人协同构建方法。
[0157]
其中,数据网关和服务器内部已经部署区块链运行环境,并执行多链划分方法构造一条主链和两条子链;多链网络的相关配置信息已保存到网关和服务器内部;服务器内已部署、运行ipfs私有网络,可以存储密文数据并根据ipfs存储地址获取密文数据内容;密钥生成机构已进行初始化操作。本技术实施例包括以下步骤:
[0158]
s1:全局配置。由ca模块执行,当系统中协同任务发布方usera和本体设计者userb、userc加入时,系统会自动为其生成公私密钥对;
[0159]
s2:usera对知识图谱数据初始化。在本体上传周期usera创建了知识图谱本体数据α_1,一致性检查通过以后将本体数据α_1存储到ipfs当中,获取返回的ipfs_addr。根据hash算法计算hm,系统将hm、ipfs_addr发送给mai_cupload并结合其他相关信息生成mai_record上传到bc发布链,形成公开版本数据v0.1;
[0160]
s3:进入图谱更新周期时,将发布链上公开版本数据v0.1拉取到设计链作为本设计周期内的初始版本数据;
[0161]
s4:usera在本地将本体数据α_1修改为a_1;
[0162]
s5:usera查询设计链上最新数据的hash与本地hash进行比对,并利用本体推理机进行一致性检查。
[0163]
s6:如果hash不相同且一致性检查通过,将本体数据a_1存储到ipfs当中,获取返回的ipfs_addr,并计算hmdi,系统将hmdi发送到mdi_cupload,并结合其他相关信息生成mdirecord上传到bc协同链;
[0164]
需要补充说明的是,usera上传的mdirecord信息中只包含本次更新数据。
[0165]
具体地,本次更新数据是指对原有知识图谱的修改数据,并不包含完整的知识图
谱数据。
[0166]
s7:本设计周期结束以后,智能合约调用语义融合算法融合本周期内上传到设计链的本体数据信息,经协同任务发布方usera验证通过后上传到bc发布链,形成公开版本数据v0.2;
[0167]
s8:进入图谱更新周期时,将发布链上公开版本数据v0.2拉取到设计链作为本设计周期内的初始版本数据;
[0168]
s9:图谱设计师userb、userc从bc设计链获取公开版本数据v0.2,并根据ipfs_addr从ipfs中获取知识图谱数据;
[0169]
s10:userb、userc在本地进行知识图谱数据设计,形成本体数据b_1和本体数据c_1;
[0170]
s11:userb、userc查询设计链上最新数据的hash与本地hash进行比对,并利用本体推理机进行一致性检查。
[0171]
s12:如果hash不相同且一致性检查通过,将本体数据c_1存储到ipfs当中,获取返回的ipfs_addr,并计算hmdi,系统将hddi发送到mdi_cupload,并结合其他相关信息生成mdirecord上传到bc协同链;
[0172]
s13:如果一致性检查未通过,userb在本地进行知识图谱数据修改,形成本体数据b_2;
[0173]
s14:userb查询设计链上最新数据的hash与本地hash进行比对,并利用语义融合算法进行一致性检查。
[0174]
s15:如果hash不相同且一致性检查通过,将本体数据b_2存储到ipfs当中,获取返回的ipfs_addr,并计算hmdi,系统将hmdi发送到mdi_cupload,并结合其他相关信息生成mdirecord上传到bc协同链;
[0175]
s16:本设计周期结束以后,智能合约调用语义融合算法融合本周期内上传到设计链的本体数据信息,经协同任务发布方usera验证通过后上传到bc发布链,形成公开版本数据v1.1。
[0176]
实施例二:
[0177]
结合实施例一所揭示的一种基于区块链的知识图谱多人协同构建方法,本实施例揭示了一种基于区块链的知识图谱多人协同构建系统(以下简称“系统”)的具体实施示例。
[0178]
参照图13所示,所述系统包括:
[0179]
环境部署单元1:部署区块链多链网络环境和ipfs环境,调用多链划分规则划分区块链网络,并构建ipfs;其中,划分区块链发布链为主链,划分区块链设计链、区块链协同链为支链;
[0180]
初始数据上传单元2:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据;
[0181]
具体的,所述初始数据上传单元2包括:
[0182]
图谱本体数据创建模块21:在本体上传周期,协同任务发布方创建知识图谱的本
体数据,并进行一致性检查,一致性检查通过后将所述知识图谱的本体数据存储至ipfs,获取返回的哈希存储地址;
[0183]
图谱本体数据上传模块22:通过hash算法计算知识图谱的本体数据的哈希值,根据所述本体数据的哈希存储地址与哈希值生成知识图谱总结记录,并通过汇总链码上传至区块链发布链;
[0184]
标准数据获取模块:从区块链发布链获取需要协同的知识图谱总结记录,获取知识图谱对应的哈希存储地址及知识图谱的本体数据的哈希值,并创建任务信息,根据所述哈希地址与所述任务信息及知识图谱的本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链作为标准数据。
[0185]
任务发布单元3:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据。;
[0186]
数据设计单元4:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,根据本体数据的架构结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据;
[0187]
具体的,所述数据设计单元4包括:在图谱更新周期,图谱设计师从区块链设计链获取最新的知识图谱总结记录,判断所述知识图谱总结记录中的哈希值与本地保存的哈希值是否一致;若是,则在本地进行知识图谱数据的设计与更新;若否,则通过知识图谱总结记录从区块链设计链中获取对应的哈希存储地址,根据所述哈希存储地址从ipfs中获取最新的知识图谱本体数据至本地知识图谱数据库,在本地进行知识图谱数据的设计与更新。
[0188]
协同数据上传单元5:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上传到区块链协同链;若不是,放弃上传;
[0189]
更新数据融合上传单元6:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;
[0190]
具体的,所述更新数据融合上传单元6包括:
[0191]
哈希值验证模块61:图谱更新周期结束后,通过知识设计下载链码获取本周期内所有的知识图谱设计记录,验证哈希值是否被篡改;
[0192]
语义融合模块62:若未被篡改,利用语义融合算法将本周期内区块链协同链中所有涉及的cypher更新语句融合成cypher语句融合信息,并计算哈希值;
[0193]
融合数据上传模块63:根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。
[0194]
进一步的,所述语义融合模块62包括:
[0195]
第一差值计算模块621:将本周期内所有的知识图谱本体设计信息进行初始化,计算初始化后的知识图谱本体设计信息的交集,并计算初始化后的知识图谱本体设计信息与所述交集的差值为第一差值;
[0196]
数据筛选模块622:筛选出所述第一差值中存在的冲突数据与不一致数据;
[0197]
融合数据获得模块623:计算所述第一差值与所述冲突数据、不一致数据之间的差值作为第二差值,将所述第二差值与所述初始化后的知识图谱本体设计信息的交集合并,形成cypher语句融合信息;
[0198]
融合数据返回模块624:若所述cypher语句融合信息不为空,则返回所述cypher语句融合信息,若所述cypher语句融合信息为空,则返回错误信息提示。
[0199]
融合数据上传模块,63,根据所述cypher语句融合信息的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。
[0200]
数据发布单元7:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的完整知识图谱数据上传到区块链发布链。
[0201]
具体的,所述数据发布单元7包括:
[0202]
融合数据验证模块71:通过融合记录下载链码从区块链设计链获取数据融合记录,验证哈希值是否被篡改;
[0203]
融合数据发布模块72:若未被篡改,协同任务发布方采用语义融合算法,将cypher语句融合信息应用到本地cypher数据库进行同步,获得更新的知识图谱数据,并上传至区块链发布链。
[0204]
本实施例所揭示的一种基于区块链的知识图谱多人协同构建系统与实施例一所揭示的一种基于区块链的知识图谱多人协同构建方法中其余相同部分的技术方案,请参照实施例一所述,在此不再赘述。
[0205]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0206]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。

技术特征:
1.一种基于区块链的知识图谱多人协同构建方法,其特征在于,包括:初始数据上传步骤:协同任务发布方创建以供图谱设计师参照的知识图谱本体数据,将知识图谱的本体数据存储至ipfs,根据返回的哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录,并上传至区块链发布链;任务发布步骤:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据;数据设计步骤:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,根据本体数据的架构结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据;协同数据上传步骤:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上传到区块链协同链;若不是,放弃上传。更新数据融合上传步骤:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;数据发布步骤:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的完整知识图谱数据上传到区块链发布链。2.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,所述初始数据上传步骤包括:图谱本体数据创建步骤:在本体上传周期,协同任务发布方创建知识图谱的本体数据,并使用本体推理机进行一致性检查,一致性检查通过后将所述知识图谱的本体数据存储至ipfs,获取返回的哈希存储地址;图谱本体数据上传步骤:通过hash算法计算知识图谱的本体数据的哈希值,根据所述本体数据的哈希存储地址与哈希值生成知识图谱总结记录,并通过汇总链码上传至区块链发布链;标准数据获取步骤:从区块链发布链获取需要协同的知识图谱总结记录,获取知识图谱对应的哈希存储地址及知识图谱的本体数据的哈希值,并创建任务信息,根据所述哈希地址与所述任务信息及知识图谱的本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链作为标准数据。3.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,所述任务发布步骤包括:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识
图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据。4.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,所述数据设计步骤包括:在图谱更新周期,图谱设计师从区块链设计链获取最新的知识图谱协同任务信息,判断所述知识图谱协同任务信息中的知识图谱的本体数据哈希值与本地保存的哈希值是否一致;若是,则在本地进行知识图谱数据的设计与更新;若否,则通过知识图谱协同任务信息中获取知识图谱对应的哈希存储地址,根据所述哈希存储地址从ipfs中获取最新的知识图谱本体数据至本地知识图谱数据库,在本地进行知识图谱数据的设计与更新形成个人更新数据。5.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,所述更新数据融合上传步骤包括:哈希值验证步骤:图谱更新周期结束后,通过知识设计下载链码获取本周期内所有的知识图谱设计记录,验证哈希值是否被篡改;语义融合步骤:若未被篡改,利用语义融合算法将本周期内区块链协同链中所有涉及的cypher更新语句融合成cypher语句融合信息,并计算哈希值;融合数据上传步骤:根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。6.根据权利要求5所述的知识图谱多人协同构建方法,其特征在于,所述语义融合步骤包括:第一差值计算步骤:将本周期内所有涉及的cypher更新语句进行初始化,计算初始化后的cypher更新语句的交集,并计算初始化后的cypher更新语句与所述交集的差值为第一差值;数据筛选步骤:筛选出所述第一差值中存在的冲突数据与不一致数据;融合数据获得步骤:计算所述第一差值与所述冲突数据、不一致数据之间的差值作为第二差值,将所述第二差值与所述初始化后的cypher更新语句的交集合并,形成cypher语句融合信息;融合数据返回步骤:若所述cypher语句融合信息不为空,则返回所述cypher语句融合信息,若所述cypher语句融合信息为空,则返回错误信息提示。7.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,所述数据发布步骤包括:融合数据验证步骤:通过融合记录下载链码从区块链设计链获取数据融合记录,验证哈希值是否被篡改;融合数据发布步骤:若未被篡改,协同任务发布方采用语义融合算法,将cypher语句融合信息应用到本地cypher数据库进行同步,获得更新的知识图谱数据,并上传至区块链发布链。8.根据权利要求1所述的知识图谱多人协同构建方法,其特征在于,还包括:环境部署步骤:部署区块链多链网络环境和ipfs环境,调用多链划分规则划分区块链网络,并构建ipfs;其中,划分区块链发布链为主链,划分区块链设计链、区块链协同链为支链。
9.一种基于区块链的知识图谱多人协同构建系统,用于实现上述权利要求1-7中任一项所述的知识图谱多人协同构建方法,其特征在于,包括:环境部署单元:部署区块链多链网络环境和ipfs环境,调用多链划分规则划分区块链网络,并构建ipfs;其中,划分区块链发布链为主链,划分区块链设计链、区块链协同链为支链;初始数据上传单元:创建知识图谱的本体数据并存储至ipfs,返回对应的哈希存储地址,根据所述哈希存储地址与所述知识图谱的本体数据的哈希值生成知识图谱总结记录并上传至区块链发布链;任务发布单元:协同任务发布方创建知识图谱协同任务信息,并选择需要协同的知识图谱版本,从区块链发布链中获取其对应的知识图谱总结记录,通过知识图谱总结记录获取知识图谱对应的哈希存储地址及知识图谱本体数据的哈希值,根据所述哈希地址与所述任务信息及知识图谱本体数据的哈希值生成知识图谱协同任务信息上传至区块链设计链,用作图谱更新周期时的多人协同初始数据和一致性检查的标准数据;数据设计单元:图谱设计师从区块链设计链获取知识图谱协同任务信息,根据知识图谱协同任务信息中的哈希存储地址从ipfs中获取知识图谱本体数据,根据本体数据的架构结合本地数据库中的知识图谱三元组数据进行知识图谱设计,并将知识图谱设计时的cypher语句形成个人更新数据;协同数据上传单元:多名图谱设计师向区块链协同链上传数据前,只需要利用本体推理机检查知识图谱协同任务信息中的标准数据与本地数据库中的个人更新数据是否一致,若是,将本地数据库中的个人更新数据及对应的哈希值生成知识图谱设计记录并上传到区块链协同链;若不是,放弃上传;更新数据融合上传单元:图谱更新周期结束时,智能合约自动收集本周期内上传到区块链协同链的知识图谱设计记录,并调用语义融合算法将本周期内所有涉及的cypher更新语句合并为cypher语句融合信息,根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,并上传至区块链设计链;数据发布单元:协同任务发布方从区块链设计链获取所述数据融合记录,应用到本地数据库形成完整知识图谱数据,并采用本体推理机进行一致性校验,将校验通过的完整知识图谱数据上传到区块链发布链。10.根据权利要求9所述的知识图谱多人协同构建系统,其特征在于,所述初始数据上传单元包括:图谱本体数据创建模块:在本体上传周期,协同任务发布方创建知识图谱的本体数据,并进行一致性检查,一致性检查通过后将所述知识图谱的本体数据存储至ipfs,获取返回的哈希存储地址;图谱本体数据上传模块:通过hash算法计算知识图谱的本体数据的哈希值,根据所述本体数据的哈希存储地址与哈希值生成知识图谱总结记录,并通过汇总链码上传至区块链发布链;标准数据获取模块:从区块链发布链获取需要协同的知识图谱总结记录,获取知识图谱对应的哈希存储地址及知识图谱的本体数据的哈希值,并创建任务信息,根据所述哈希地址与所述任务信息及知识图谱的本体数据的哈希值生成知识图谱协同任务信息上传至
区块链设计链作为标准数据。11.根据权利要求9所述的知识图谱多人协同构建系统,其特征在于,所述更新数据融合上传单元包括:哈希值验证模块:图谱更新周期结束后,通过知识设计下载链码获取本周期内所有的知识图谱设计记录,验证哈希值是否被篡改;语义融合模块:若未被篡改,利用语义融合算法将本周期内区块链协同链中所有涉及的cypher更新语句融合成cypher语句融合信息,并计算哈希值;融合数据上传模块:根据所述cypher语句融合信息及对应的哈希值生成数据融合记录,通过调用合并上传链码将数据融合记录上传到区块链设计链。

技术总结
本发明公开了一种基于区块链的知识图谱多人协同构建方法与系统,上述方法包括:创建知识图谱的本体数据并存储至IPFS,生成知识图谱总结记录并上传至区块链发布链;从IPFS中获取知识图谱本体数据进行设计;通过语义融合算法将本周期内所有的Cypher更新语句融合成知识图谱本体数据融合设计信息,生成数据融合记录上传至区块链设计链;从区块链设计链获取数据融合记录,并进行一致性校验,将校验通过的数据上传到区块链发布链。数据上传到区块链发布链。数据上传到区块链发布链。


技术研发人员:王金龙 谢镇玺 李朋骏 熊晓芸 张媛媛
受保护的技术使用者:青岛理工大学
技术研发日:2023.04.04
技术公布日:2023/8/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐