我们正试图通过添加一个新的操作符来扩展jena ARQ。然而,现在我们不想从一开始就这样做,即从查询分析到查询执行的所有步骤。我们正在考虑手动重写执行计划,然后让ARQ执行重写的计划。我在网上做了一些搜索,但是,我找不到手动编辑执行计划的任何信息。我想知道是否有方法将计划写入文件并手动编辑文件,然后让ARQ从磁盘读取文件并执行它。这甚至有可能吗?任何人都可以给我一个关于如何开始这个问题的提示吗?Jena ARQ查询执行扩展
0
A
回答
1
一个起点是用SSE.parseOp
来阅读和编写代数,并用QueryExecUtils
执行。
OpExecutor
是执行SPARQL代数的机制,并且如果添加新的Op
类型,那就是添加执行的位置。
+0
非常感谢。这有很大帮助。 – sgao
相关问题
- 1. 从apache JENA ARQ查询得到WHERE查询
- 2. 如何使用ARQ jena查询多个表?
- 3. 使用Jena/ARQ等待sparql查询到D2R - 堆空间
- 4. 如何执行查询扩展
- 5. Jena ARQ查询本地N3数据存储不会返回任何结果。 ARQ命令行工作
- 6. 空白节点的ARQ查询
- 7. 无法扩展Node_Literal Jena类
- 8. Jena ARQ更新或插入使用Fuseki?
- 9. TDB Jena查询
- 10. 将可选子句添加到使用Jena的SPARQL查询中ARQ
- 11. 耶拿/ ARQ:查询处理卡住
- 12. files.find查询扩展
- 13. 查询扩展lucene
- 14. 通过psql在postgresql中执行postgres扩展查询
- 15. 扩展PDO执行()来对页面上的查询计数
- 16. EntityDatasource在查询扩展器之前或之后执行“order by”
- 17. 使用Apache-Jena的方法和Apachce-arq(在java中编写sprarql查询)查询rdf图形有什么区别?
- 18. 如何在jena sparql中执行删除查询?
- 19. SPARQL查询在Virtuoso服务上使用Jena的执行时间
- 20. 如何使用jena执行Sparql删除查询?
- 21. 从Jena对DBpedia执行SPARQL查询时发生“超时/查询挂起”
- 22. 在运行时扩展NHibernate查询
- 23. 在SELECT查询上进行扩展
- 24. Chrome扩展执行脚本
- 25. php线程执行扩展
- 26. 扩展文件执行
- 27. WCF扩展执行顺序
- 28. 从Firefox扩展执行JS
- 29. 扩展(不执行)Clojure中
- 30. SQL SELECT查询(扩展)
这对StackOverflow来说相当模糊。请使它更具体,例如运营商是什么?你有什么尝试? – AndyS
如果运营商是一个改进执行的运营商,那么在OpExt中有一个扩展点。如果操作符是不能写入标准SPARQL的东西,那么您也可以将它添加到那里。但是,只需正确添加运算符,然后修改OpExecutor可能会更容易。这样,您可以编写SPARQL代数并使用SSE函数读取它,并执行查看QueryExecUtils。这些是内部类,你应该检查代码。 https://jena.apache.org/documentation/query/extension.html – AndyS
非常感谢您的建议,AndyS!是的,我们要添加的操作符不能写入std SPARQL中。据我所知,查询引擎会为给定的代数表达式生成一个执行计划并执行它。因此,通过添加新的操作符并修改OpExecutor,我们是否需要触摸Plan类? – sgao