[发明专利]一种基于SPARQL端点联合的动态连接排序方法有效
| 申请号: | 202110051652.8 | 申请日: | 2021-01-13 |
| 公开(公告)号: | CN112732746B | 公开(公告)日: | 2023-05-12 |
| 发明(设计)人: | 刘杰;张磊;冀俊宇;张凯;周建设 | 申请(专利权)人: | 首都师范大学 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242 |
| 代理公司: | 北京易捷胜知识产权代理有限公司 11613 | 代理人: | 齐胜杰 |
| 地址: | 100048 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 sparql 端点 联合 动态 连接 排序 方法 | ||
本发明涉及一种基于SPARQL端点联合的动态连接排序方法,方法包括:根据SPARQL语句确定所有子查询语句;评估每个子查询语句的代价;选择代价最小的子查询语句;基于选择的子查询语句,在未选择的子查询语句中确定下一个选择的子查询语句;重复执行,直至所有子查询语句均被选择;按选择顺序排列并连接所有子查询语句,得到最终查询语句。本发明的方案,评估每个子查询语句的代价;选择代价最小的子查询语句;重复执行基于选择的子查询语句,在未选择的子查询语句中确定下一个选择的子查询语句;直至所有子查询语句均被选择;按选择顺序排列并连接所有子查询语句,得到最终查询语句,提高了连接排序的优化速率,改善了联合查询的性能。
技术领域
本发明涉及数据库技术领域,尤其涉及一种基于SPARQL端点联合的动态连接排序方法。
背景技术
关联数据技术极大地促进了单个存储库中数据的释放;然而,对这些数据在单个SPARQL(全称为SPARQL Protocol and RDF Query Language,是为RDF开发的一种查询语言和数据获取协议)端点的搜索仍在进行中,即使在链接的数据空间中它也很难真正的确认数据从各自的“竖井”中解脱。为了能够在多个端点搜索,许多联合查询系统已经开发。尽管很难断言这些查询系统的性能接近生产水平,研究团体在不断尝试改进这种性能。
联合查询本身必须探索多个端点,在遍历这些端点过程中,从一个端点得到的结果必须与从下一个端点得到的结果连接。为了有效地执行多个搜索空间上的搜索,选择最佳的连接顺序是关键。
连接排序优化多年来一直是热门的研究课题,然而,在这些研究中,常见的方法是静态连接优化的方法。考虑在SPARQL查询性能上连接排序的重要性,但这种连接排序不能在查询开始有效地进行优化。
发明内容
(一)要解决的技术问题
为了解决现有技术的上述问题,本发明提供一种基于SPARQL端点联合的动态连接排序方法。
(二)技术方案
为了达到上述目的,本发明采用的主要技术方案包括:
一种基于SPARQL端点联合的动态连接排序方法,所述方法包括:
S101,获取SPARQL语句;
S102,根据所述SPARQL语句确定所有子查询语句;
S103,评估每个子查询语句的代价;
S104,选择代价最小的子查询语句;
S105,基于选择的子查询语句,在未选择的子查询语句中确定下一个选择的子查询语句;
S106,重复执行S105,直至所有子查询语句均被选择;
S107,按选择顺序排列并连接所有子查询语句,得到最终查询语句。
可选地,所述S105具体包括:
S105-1,将未选择的子查询语句形成查询集合;
S105-2,若查询集合中元素数量为1,则将所述查询集合中的子查询语句作为下一个选择的子查询语句;
S105-3,若查询集合中元素数量大于1,则基于选择的子查询语句,确定未选择的子查询语句的代价,将代价最小的未选择的子查询作为下一个选择的子查询语句。
可选地,所述S105-3具体包括:
S105-3-1,确定整数k;
S105-3-2,确定因子Z=min{k,N},其中,min{}为取小函数,N为查询集合中元素数量;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于首都师范大学,未经首都师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110051652.8/2.html,转载请声明来源钻瓜专利网。





