我有一个标准的IIS Web应用程序,它将其数据存储在标准SQL Server或Oracle DB中。 我现在有兴趣以RDF格式存储数据,以完整语义网。
是否建议直接以RDF格式存储数据? CRUDQ操作将在数据上完成。表现明智这是一个很好的举措吗?
如果不是(就像我假设的那样),我想我会维护标准SQL数据库并将数据导出/导出到RDF?我怎样才能做到这一点?那里有好的转换器吗?
答案 0 :(得分:6)
如果你真的想坚持使用我不推荐的关系数据库,你可以使用D2RQ这样的东西,或者你可以寻找支持R2RML的东西。或者您可以尝试SDB。
但是,如果您想使用语义技术,那么使用实际的RDF数据库要好得多。您将获得更好的性能,并且您将获得更好的开发体验。有很多选项,Mulgara,Jena,Sesame,Stardog,OWLIM,AllegroGraph,BigData如果您拥有Oracle许可证,Virtuoso和Oracle会提供一些RDF支持,但根据我的经验,它不如专用RDF数据库那样高效。
很多SemWeb工具链都是用Java编写的,但是既然你提到了IIS,也许你处于MS世界,在这种情况下,dotNetRDF是个不错的选择。
但总的来说,如果您要使用该技术,请使用专用的RDF / SemWeb工具。不要尝试将RDF鞋拔成非语义的东西,也不要自己编写。无需重新发明轮子,有很多优秀的SemWeb软件可以让你的项目继续发展。
答案 1 :(得分:2)
我认为关键是你将在(?)数据上使用/实现什么接口。
还有几种方法,我自己会使用SWI-Prolog来模拟RDF存储,可能使用SPARQL,同时通过ODBC访问原始数据。
然后我有机会避免静态映射(转换可能是一种风险,我认为),至少在数据出现一些“稳定”语义之前。
SWI-Prolog也有一点作为报告工具和生成性Web表示。
在Prolog中写the W3C rules to map'自动'与三元组的关系似乎是一个有趣的任务,我会尝试...