繁体   English   中英

如何优化sparql CONSTRUCT查询

[英]How to optimize sparql CONSTRUCT queries

rdf模式必然存在问题

sparql DESCRIBE查询以获取有关链接对象的数据

以下查询在不到一秒钟的时间内执行。

DESCRIBE ?book
where
{
 ?book a schema:Book ;

}

然而,describe查询没有提供作者详细信息。 它仅返回属于Book本身的属性。

因此,我将上述查询替换为下面的查询。

CONSTRUCT 
{
?book a schema:Book ;
schema:bookName ?bookName ;
schema:bookId ?bookId ;
schema:authoredBy ?author .
?author a schema:Person ;
schema:personName ?personName .

} 
where 
{
 ?book a schema:Book ;
}

但是,上面的sparql查询需要4秒钟才能执行。

 Is there way to optimize the sparql CONSTRUCT 
 OR
 should we be using SELECT always instead of CONSTRUCT

您的CONSTRUCT查询包含一些未绑定的变量,因此不会为您提供所需的信息。 尝试:

CONSTRUCT WHERE
{
 ?book a schema:Book ;
    schema:bookName ?bookName ;
    schema:bookId ?bookId ;
    schema:authoredBy ?author .
    ?author a schema:Person ;
    schema:personName ?personName .
}

如果您要获得?author的三元组,则系统不是以标准方式运行。

至于速度,这取决于您使用的系统。

您还可以尝试描述两个相关的事物:

DESCRIBE ?book ?author {
   ?book a schema:Book ;
        schema:authoredBy ?author .
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM