загрузка и настройка дампа dbpedia - PullRequest
3 голосов
/ 12 февраля 2012

Я пытаюсь загрузить дамп DBpedia на свой локальный компьютер, чтобы я мог выполнять запросы локально. После просмотра Загрузки У меня есть несколько вопросов:

  • Что именно я скачиваю?
  • Как загрузить дамп в оперативную память, чтобы результаты были быстрее?

ПРИМЕЧАНИЕ. Я использую библиотеку dotNetRDF для выполнения запросов.

1 Ответ

3 голосов
/ 13 февраля 2012

nt-файлы - это N-тройки, которые вам нужно загрузить на свой компьютер. Причина, по которой так много nt-файлов для одной категории состоит в том, что они классифицированы по языку.

после загрузки файлов nt, вам нужно добавить следующий код в ваш проект .NET после ссылки на dotNetRDF dlls

        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 очень большой, вам, вероятно, понадобится очень большой объем ОЗУ для загрузки тройного хранилища.

если вы хотите сделать запрос, просто добавьте эту строку кода:

        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, см. Документацию для получения дополнительной информации об этих и других классах

.
...