我正在尝试将 DBpedia 转储下载到我的本地计算机,以便我可以在本地进行查询。在查看下载后,我有一些问题:
- 我到底要下载什么?
- 如何将转储加载到我的 RAM 中以使结果更快?
注意:我正在使用dotNetRDF库进行查询。
nt 文件是您需要下载到计算机中的 N-Triples,一个类别有这么多 nt 文件的原因是它们是按语言分类的。
下载 nt 文件后,您需要在引用dotNetRDF dll后将以下代码添加到您的 .NET 项目中
TripleStore temp = new TripleStore();
temp.AddFromUri(new Uri(/*path of nt file no.1*/), true);
temp.AddFromUri(new Uri(/*path of nt file no.2*/), true);
//keep adding Uris of all your nt files
现在您已经加载了 nt 文件,请注意英文 dbpedia 转储非常大,您可能需要非常大的 RAM 来加载三重存储。
如果你想做一个查询,只需添加这行代码:
var d = temp.ExecuteQuery("select *
where{#put your query here}");
foreach (SparqlResult item in (SparqlResultSet)d)
{
//Do whatever you want to do with the results !!,
//ex:Console.WriteLine(item.ToString());
}
还有其他类,如 TripleStore,如 DiskDemandTripleStore
, OnDemandTripleStore
, SqlTripleStore
,有关这些“和其他”类的更多信息,WebDemandTripleStore
请参阅文档