dotNetRDF与普通SQL

时间:2013-11-12 19:13:53

标签: c# sql rdf sparql dotnetrdf

我正在开发协同过滤推荐系统。我之前在并行线程环境中构建了这样一个系统,使用SPARQL查询RDF。由于SPARQL和RDF图的并行特性,这很有效。但是,我现在正在使用标准台式PC,并且想知道在大部分串行环境中使用SPARQL是否仍然存在。我看过dotNetRDF,因为我正在使用C#,我想知道它是否比简单的SQL更有效,特别是现在dotNetRDF似乎正在远离SQL后端。

那么就几个线程的性能而言,SQL还是dotNetRDF?表格或图表?

2 个答案:

答案 0 :(得分:2)

这两件事情并不具有可比性,dotNetRDF是一个编程API,除了我们主要推荐用于测试和开发的纯内存解决方案之外,还为各种storage backends提供支持(免责声明我是首席开发人员)

不同的后端具有各种各样的性能特征,因此如果您的问题在RDF中可以表达,那么可能会有适当的后端。

SQL是一种查询语言,实际上你应该将SQL与SPARQL进行比较,最终你选择的是数据模型的样子。如果它是常规的那么你可能想要使用RDBMS和SQL,如果它是不规则的和/或图形,那么你可能想要使用三重存储和SPARQL。这两者有不同的优点和缺点,正如你自己的答案所暗示的那样。

答案 1 :(得分:1)

这似乎很好地回答了它。 Triple Stores vs Relational Databases

基本上,RDF更灵活,但价格昂贵。由于我只是使用非常适合表格的数据进行协同过滤,我认为我不需要额外的费用,就像我喜欢图表一样。

相关问题