ローカルでクエリを実行できるように、DBpediaダンプをローカルコンピューターにダウンロードしようとしています。ダウンロードを見た後、私はいくつかの質問があります:
- 正確には何をダウンロードしますか?
- 結果が速くなるようにダンプをRAMにロードするにはどうすればよいですか?
注:クエリを実行するためにdotNetRDFライブラリを使用しています。
ntファイルはコンピュータにダウンロードする必要のあるNトリプルです。1つのカテゴリに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