我目前正在計劃一個包含大數據的大項目。將Freebase導入Triplestore
我已經使用的搜索和所有的結果告訴我,這是不可能導入的遊離鹼到任何triplestore沒有像BaseKB或Freebase to RDF
我所看到的第三方工具的使用,轉儲已經可以作爲RDF ,那麼如果我想將轉儲導入到我的4store三重存儲並通過SPARQL訪問數據,那麼問題在哪裏?
我目前正在計劃一個包含大數據的大項目。將Freebase導入Triplestore
我已經使用的搜索和所有的結果告訴我,這是不可能導入的遊離鹼到任何triplestore沒有像BaseKB或Freebase to RDF
我所看到的第三方工具的使用,轉儲已經可以作爲RDF ,那麼如果我想將轉儲導入到我的4store三重存儲並通過SPARQL訪問數據,那麼問題在哪裏?
要導入遊離鹼轉儲大家都在問題:
1)讓您的RDF /龜分析器更新。 (最新猛禽2的版本可以識別,例如在納秒「」:common.topic.notable_for.example
2)轉儲必須被清理之前,可將其導入。我用這個素文字:http://people.apache.org/~andy/Freebase20121223/(fixit來)
3)Turtle規範只允許這些字符的URI:
::= '<' ([^#x00-#x20<>\"{}|^`\] | UCHAR)* '>'
所以這是非常重要的,這條線在線路80添加到fixit來腳本:
$X =~ s/\\>/%3E/g ;
$X =~ s/\\.//g ;
# Add this Line
$X =~ [\x00-\x20\<\>\"\{\}\|\^\`] ;
$obj = "<".$X.">" ;
其結果是,無效的語法如下:
<http://www.wikipedia.org/object?key={invalid_braces}>
變爲
<http://www.wikipedia.org/object?key=invalid_braces>
你可能正從至少兩個搜索結果,如果不是三,不同的數據集:
#1中的格式是需要轉換的格式。早期的RDF轉儲(#2)在語法上是無效的,所以不會導入到大多數工具中。隨着時間的推移,RDF轉儲一直在改進。我不確定在沒有預處理的情況下是否會導入它仍然是真的,但是,無論如何,如果您預處理它以刪除冗餘,則將其標準化爲最適合您的格式應用程序等
您是否嘗試導入當前的轉儲?你的結果是什麼?
感謝您的快速回答。今天我訂購了一臺根服務器,安裝了4store,DL Freebase Dump,併爲每個文件分割了10.000.000個三元組。 現在我在導入時出現錯誤:「URI file:/// root/freebase/xaa:8 raptor error - syntax error」。 Freebase RDF的turtle語法是否有問題? – smith64fx
第一行導致「語法錯誤」:ns:american_football.football_historical_roster_position.number ns:type.property.expected_type ns:type.int。 – smith64fx
我修正了它......更新Raptor2後,它現在可以在這個很好的修復的幫助下運行:http://people.apache.org/~andy/Freebase20121223/ – smith64fx
freebase turtle dump的問題是這樣的,它們不符合w3c turtle規範。
1)根據http://www.w3.org/TR/turtle/#sec-grammar, 字符'。'只能出現在三重結尾, 然而,freebase轉儲有很多'。'。在三聯結束前。 我在某處讀到「/」在uri之外不允許,所以 他們選擇使用'。'。
最新raptor2庫可以解決這個(「」),而不是舊的
2)我的思維方式發出‘空白點’也無效 用於例如line 141567 ns:m.01000m1 ns:common.topic.notable_for。
1)更新Raptor2 – smith64fx
您是否已將freebase數據導入三重存儲?如果是,完成該過程花費了多少時間,以及您使用的機器配置是多少。我也計劃導入數據。所以請讓我知道細節。 謝謝 – vinod