raw*_* az -1 rdf etl semantic-web sparql r2rml
我需要知道RDB2RDF工具之间的区别。谁能告诉我RDB2RDF工具的优缺点是什么?特别适用于以下几种:Virtuoso,Ultrawrap,Ontop,Morph,Xsparql,D2RQ等。
将关系数据转换为RDF的W3C标准化方法有两种:
在下面的调查中,我仅考虑R2RML实现。
这里列出了许多R2RML实现。我不考虑以下工具:
XSPARQL
语法示例
java -jar cli-0.5-jar-with-dependencies.jar -h
java -server -jar -Dfile.encoding=utf-8 cli-0.5-jar-with-dependencies.jar --mysql --dbName=mydb --dbServer=127.0.0.1 --dbUser=root --r2rml=r2rml.ttl > result.ttl
Run Code Online (Sandbox Code Playgroud)
备注
cli-0.5-jar-with-dependencies.jar— 命令行jar。结论
使用中间翻译到XQuery中,非常慢。
在上面
Ontop是一个流行的Protégé插件,但也可以作为一组命令行实用程序使用。
语法示例
ontop materialize --url "jdbc:mysql://localhost:3306/mydb" --mapping "../r2rml.ttl" --username root --password "65536" --driver-class com.mysql.jdbc.Driver --disable-reasoning --format turtle --output result.ttl
Run Code Online (Sandbox Code Playgroud)
备注
SET GLOBAL SQL_MODE-ANSI_QUOTES;结论
Ontop是为处理本体而设计的,并生成许多本体垃圾,例如... rdf:type owl:namedIndividual。
Ontop尝试从中解析和重写SQL查询rr:sqlQuery,但他不了解许多SQL构造,并且诚实地建议您在关系数据库中创建适当的SQL视图。
R2RML支持是部分的。Ontop R2RML手册。真快。
RDB2RDF :: R2RML
我还无法安装此Perl模块:CPAN上缺少许多依赖项。
D2RQ
D2RQ是一种全栈解决方案,但是可以从D2RQ发行版中提取独立工具。
R2RML仅在预览版中受支持。
D2RQ提供了自己的映射语言(顺便说一下,还有Ontop)。
结论
就像我记得的那样,D2RQ将您的SQL查询从rr:sqlQuery许多“原子”查询中分离出来,并一一提取数据库记录,这确实很慢。
结论
我个人的选择是Ontop。
也可以看看: