我在 Jena/Fuseki 商店中有一个小图表,我使用 rdflib/SPARQLWrapper 通过 CONSTRUCT 进行查询,以构建一个包含我需要的所有信息的较小图表。
结果图是一个 RDFLib 图,总共有 56 个三元组。查看 Jena 记录构建图形的查询不会超过几毫秒。
现在当我在这个图上执行更多查询时,第一次查询很慢。例如这个简单的选择:
SELECT DISTINCT ?o
WHERE {
?f threems:predicate ?o .
}
耗时超过 1 秒。随后的类似查询只占其中的一小部分……我尝试了 rdflib.objects()
方法,性能相同。
一秒钟并不多,但考虑到我需要在请求的范围内多次使用这个小图,我很乐意将其降低。
我不确定如何优化这一点,因为我认为查询不相关,如果它与一些预加载或解析有关,则不清楚这里的瓶颈是什么。也许有人有想法/建议?