买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:南京航空航天大学
摘要:本发明公开了一种基于关系型数据库PostgreSQL的时态RDF存储和查询方法,包括:针对一传统RDF数据,将其转化为时态RDF数据,针对得到的时态RDF数据,将其主语、谓语和宾语分割为前缀、不带前缀的主语、不带前缀的谓语、不带前缀的宾语以及时态信息;构建数据库时态表;将上述数据插入到构建的数据库时态表中;使用SQL语句对数据库时态表中的数据进行查询。本发明创造性地利用关系型数据库PostgreSQL结合时态数据库概念存储时态RDF数据,并利用成熟的SQL语句对时态RDF数据进行管理。本发明减少了时态RDF数据占用的空间,保持了时态RDF的语义一致性,为管理时态知识图谱提供可行方法。
主权项:1.一种基于关系型数据库PostgreSQL的时态RDF存储和查询方法,其特征在于,所述方法包括如下步骤:步骤S1、针对一传统RDF数据,将其转化为时态RDF数据,其中,通过判断三元组中的宾语是资源还是字面量,若为资源时,则将时间戳附加在谓语上,若是字面量时,将时间戳附加在宾语上;步骤S2、针对步骤S1中得到的时态RDF数据,将其主语、谓语和宾语分割为前缀、不带前缀的主语、不带前缀的谓语、不带前缀的宾语以及时态信息,其中,时态信息包括起始时间和终止时间;步骤S3、构建数据库时态表,其包括命名空间表、主语表、谓语表、宾语表和声明表;步骤S4、将步骤S2获取的前缀、不带前缀的主语、不带前缀的谓语、不带前缀的宾语以及时态信息插入步骤S2中构建的数据库时态表中;步骤S5、使用SQL语句对数据库时态表中的数据进行查询;在所述步骤S3中,所述命名空间表,其存储三元组的前缀,并且为所述主语表、谓语表和宾语表提供前缀对应ID;所述主语表,其储存不带前缀的主语以及前缀的对应ID,并且为所述声明表提供主语对应ID;所述谓语表,其存储不带前缀的谓语以及前缀的对应ID,并且当宾语是资源时,存储时间戳的起始时间Ts与终止时间Te,还为所述声明表提供谓语对应ID;所述宾语表,其存储不带前缀的宾语以及前缀的对应ID,并且当宾语是字面量时,存储时间戳的起始时间Ts与终止时间Te,还为声明表提供宾语对应ID;所述声明表,通过存储主语表、谓语表和宾语表所提供的主语、谓语和宾语对应的ID来表示时态RDF三元组;所述命名空间表,其包括主键ID和Prefix列,该命名空间表通过主键ID链接到所述主语表、谓语表和宾语表,并将前缀存储在Prefix列中,其中,该Prefix列允许为空;所述主语表,其包括主键ID、外键NS_ID和Resource列,该主语表通过主键ID列与所述声明表相关联,其中,NS_ID列作为外键来引用主语的前缀在命名空间表中对应的ID,Resource列用于存储不带前缀的主语;所述谓语表,其包括主键ID、外键NS_ID、Property、PTs和PTe列,该谓语表通过主键ID与所述声明表相关联,其中,NS_ID列作为外键来引用谓语的前缀在命名空间表中对应的ID,Property列存储不带前缀的谓语,并且当宾语为资源时,PTs和PTe列分别存储时态信息的开始和结束时间,当宾语是字面量时,PTs和PTe列允许为空;所述宾语表,其包括主键ID、外键NS_ID、Object、OTs和OTe列,该宾语表通过主键ID与声明表相关联,其中,NS_ID列作为外键实现对宾语的前缀在命名空间表中ID的引用,并且当宾语是字面量时,NS_ID列对应于命名空间表中表示空前缀的ID,Object列用于存储不带前缀的宾语,当宾语为资源时,OTs和OTe列允许为空,当宾语为字面量时,OTs和OTe列表示时态信息的开始和结束时间;所述声明表,其包括主键ID、外键Sid、外键Pid和外键Oid列,该声明表使用外键Sid、Pid和Oid来引用主语、谓语和宾语在主语表、谓语表和宾语表中所对应的ID;在所述步骤S4中,基于存储映射方法将前缀、不带前缀的主语、不带前缀的谓语、不带前缀的宾语以及时间信息插入步骤S2中构建的数据库时态表中,该存储映射方法具体包括:步骤S401、将前缀插入命名空间表的Prefix列,其中,当宾语是字面量时,该Prefix列允许为空;步骤S402、将步骤S401中得到的命名空间表中的前缀ID和对应的主语ES分别插主语表的NS_ID和Resource列中,其中,每个记录对应的ID作为主键被声明表引用;步骤S403、将步骤S401中得到的命名空间表中的前缀ID和对应的谓语EP分别插入到谓语表的NS_ID和Property列中,其中,当宾语为资源时,将时间信息Ts和Te插入到谓语表的PTs和PTe列中,并且每个记录对应的ID作为主键被声明表引用;步骤S404、将步骤S401中得到的命名空间表中的前缀ID和对应的宾语EO分别插入到宾语表的NS_ID和Object列中,其中,当宾语为字面量时,将时间信息Ts和Te插入宾语表的OTs和OTe列中,并且每个记录对应的ID作为主键被声明表引用;步骤S405、将步骤S402、步骤S403以及步骤S404中得到的每个时态RDF三元组的主语、谓语和宾语的对应ID插入到声明表的Sid、Pid和Oid列中。
全文数据:
权利要求:
百度查询: 南京航空航天大学 一种基于关系型数据库PostgreSQL的时态RDF存储和查询方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。