2013-07-20 16 views
8

Obecnie planuję duży projekt zawierający duże ilości danych.Import Freebase do Triplestore

ja już używany poszukiwania i wszystkie wyniki mówią mi, że to nie jest możliwe, aby importować wolnej zasady w dowolnym triplestore bez używania 3rd party narzędzi jak BaseKB lub Freebase to RDF

Jak widzę, zrzut jest już dostępny jako RDF , więc gdzie jest problem, jeśli chcę zaimportować zrzut do mojego triplestore 4store i uzyskać dostęp do danych przez SPARQL?

+0

Czy importujesz dane wolnej bazy do potrójnego sklepu? Jeśli tak, ile czasu zajęło ukończenie procesu i jaka jest używana konfiguracja urządzenia. Planuję również import danych. Więc proszę daj mi znać szczegóły. Dzięki – vinod

Odpowiedz

3

dla wszystkich mających problemy importujących wolnej zasady przegubowe:

1) Utrzymywać RDF/Turtle Parser aktualizowana. (Najnowsza wersja raptora 2 może rozpoznać ".", Np. Ns: common.topic.notable_for.example

2) Zrzut musi zostać wyczyszczony, zanim będzie można go zaimportować.Użyłem tego skrypcie: http://people.apache.org/~andy/Freebase20121223/ (fixit)

3) specyfikacja Turtle pozwala tylko te znaki dla URI:

::= '<' ([^#x00-#x20<>\"{}|^`\] | UCHAR)* '>' 

więc jest to bardzo ważne, aby dodać tę linię do skryptu FixIT w wierszu 80:

$X =~ s/\\>/%3E/g ; 
$X =~ s/\\.//g ; 

# Add this Line 
$X =~ [\x00-\x20\<\>\"\{\}\|\^\`] ; 

$obj = "<".$X.">" ; 

w rezultacie nieprawidłową składnię tak:

<http://www.wikipedia.org/object?key={invalid_braces}> 

staje się

<http://www.wikipedia.org/object?key=invalid_braces> 
2

Prawdopodobnie uzyskanie wyników wyszukiwania z co najmniej dwóch, jeśli nie trzy, różne zestawy danych:

  1. stary format quad wywrotki
  2. wczesny RDF wysypisk
  3. (być może) aktualny RDF dump

Format w # 1 jest tym, co wymaga konwersji. Wczesne zrzuty RDF (nr 2) były niepoprawne pod względem syntaktycznym, więc nie byłyby importowane do większości narzędzi. Zrzut RDF poprawiał się z czasem. Nie jestem pewien, czy nadal jest prawdą, że nie będzie on w ogóle importowany bez wstępnego przetwarzania, ale, niezależnie, będzie on bardziej przydatny, jeśli przetworzysz go w celu usunięcia nadmiarowości, znormalizujesz do formatu, który najlepiej pasuje do twojego aplikacja, itp.

Czy próbowałeś zaimportować bieżący zrzut? Jakie były twoje wyniki?

+0

Dziękujemy za szybką odpowiedź. Dzisiaj zamówiłem serwer główny, zainstalowałem 4store, DL Freebase Dump i podzieliłem go na 10.000.000 trójek na każdy plik. Teraz pojawia się błąd podczas importowania: "Plik URI: /// root/freebase/xaa: 8 błąd raptora - błąd składni". Czy jest jakiś problem ze składnią żółwia popularnego RDF Freebase? – smith64fx

+0

Pierwsza linia powoduje "błąd składni": ns: american_football.football_historical_roster_position.number: type.property.expected_type ns: type.int. – smith64fx

+1

Naprawiłem ... Po aktualizacji Raptor2, działa on teraz dzięki tej fajnej poprawce: http://people.apache.org/~andy/Freebase20121223/ – smith64fx

1

Problem z freebase turtle dump jest taki, że nie są one ZGODNE ze specyfikacją żółwia w3c.

1) zgodnie z http://www.w3.org/TR/turtle/#sec-grammar, znak "." może pojawić się tylko na końcu potrójnego, jednak zrzutu freebase ma dużo "." przed końcem potrójnego. Czytałem gdzieś, że "/" jest niedozwolone również poza uri, więc zamiast tego zdecydowali się użyć "."

najnowsza biblioteka raptor2 można obejść ten problem („”), ale nie starsze

2) Myślę, że sposób emitować «pusty węzeł» nie jest również ważne dla np linia 141567 ns: m.01000m1 ns: common.topic.notable_for.

+0

1) Update Raptor2 – smith64fx