【技术实现步骤摘要】
面向大规模时序RDF图数据的查询方法及系统
[0001]本专利技术涉及知识图谱的查询
,具体地,涉及一种面向大规模时序RDF图数据的查询方法及系统。
技术介绍
[0002]图是一种复杂的数据结构,它将数据对象抽象为顶点,将数据对象之间的关系抽象为边。随着Web技术的发展和完善以及大数据时代的到来,图优秀的表达海量数据及其之间关系的能力使得使用图作为数据结构来存储数据成为了一种流行的选择。
[0003]RDF是W3C制定的一种表示Web上的数据的图模型,它是目前应用最为广泛的知识图谱框架之一,与RDF配套的SPARQL是一种专门用于查询使用RDF模型进行存储的数据的查询语言。普通SPARQL语句由若干<主语,谓语,宾语>三元组模式组成,只有符合这些模式的数据才能被加入查询结果集中。
[0004]传统的RDF图只有实体及其之间的关系,但是在现实场景中,实体之间的关系不一定是静态不变的,而是可能会随着时间而改变,在某一时刻存在的关系在另一时刻可能就不存在了。因此,将时序的概念应用于RDF来允许基于时间的图数据查询就成为了一种解决方案。很多实际应用程序都可能会有查询时序数据的需求,例如检索网站的历史信息、查询与时间有关的资源(例如股票、新闻)的数据。
[0005]目前,国内外有很多对时序知识图谱的研究,很多时序图的存储方法也被提了出来,比较具有代表性的两种方案分别是标签化和版本化。标签化指的是给图的边加上时间标签(可以理解为边的属性),表示这条边在哪个时间点或时间段是 ...
【技术保护点】
【技术特征摘要】
1.一种面向大规模时序RDF图数据的查询方法,其特征在于,包括:步骤S1:采用键
‑
值存储方式将五元组格式的时序RDF图数据均匀地加载和存储到多台机器的内存中;步骤S2:在每台机器上创建若干个客户端线程和若干个工作线程;步骤S3:客户端线程接收用户的查询请求,并对用户的查询请求进行解析,将解析后的查询请求发送至相应机器的工作线程;步骤S4:工作线程基于解析后的查询请求执行查询任务得到最终查询结果;步骤S5:工作线程将查询结果返回至客户端线程。2.根据权利要求1所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述时序RDF图数据被持久化存储在若干文本文件中,每个文本文件都由五元组形式的数据行组成,五元组的前三个元素分别是将主语、谓语和宾语转化后得到的ID,五元组的前三个元素表示有向图的一条边,该边由主语对应的顶点指向宾语对应的顶点,谓语则表示边的类型;后两个元素分别表示该边有效期限的开始时间和截止时间的时间戳。3.根据权利要求2所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述步骤S1采用:键是由有向图的顶点ID、谓语ID以及方向组成的三元组;值是由顶点ID、有效期限开始时间和截止时间的两个时间戳组成的三元组列表;一个键
‑
值对是由方向为dir、类型为pid的边以及顶点vid连接的所有顶点的ID及该相邻关系的有效期限。4.根据权利要求1所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述步骤S2采用:客户端线程和工作线程的数量在运行前配置;且由于工作线程的负载较大,工作线程的数量为客户端线程数量的预设倍数以上。5.根据权利要求1所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述用户的查询请求采用:时序扩展的SPARQL查询命令;所述时序扩展的SPARQL查询命令包括:WHERE关键字前面包含一个时间常量或两个时间常量,和/或WHERE关键字后面的每个查询模式包含两个时间量,其中,两个时间量包括常量和/或变量。6.根据权利要求1所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述步骤S3采用:将解析后的查询请求通过TCP或RDMA网络发送至预设机器的工作线程。7.根据权利要求1所述的面向大规模时序RDF图数据的查询方法,其特征在于,所述查询任务包括若干个三元组或五元组查询步;所述步骤S4采用:每执行一个查询步,就会更新一次中间结果,当所有查询步都被执行完毕时就得到了最终结果;当一个查询步是三元组时,匹配...
【专利技术属性】
技术研发人员:陈榕,石林,夏虞斌,陈海波,臧斌宇,
申请(专利权)人:上海交通大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。