dbpedia を neo4j にインポートする必要があります。ここから dbpedia をダウンロードします : http://wiki.dbpedia.org/Downloads37
1 に答える
私は現在同じことをしています。これの最大の問題は索引付けであることがわかったので、最善の解決策は、次のように md5 ハッシュを使用してステートメントをトリプル ファイルに抽出する Java プログラムを作成することです。オブジェクト \n.
別のファイルにノード (別名、ステートメントのサブジェクトとオブジェクト) を格納する必要があります: nodeHash \t nodeValue
この手順のコードは、私の github からダウンロードできます: https://github.com/eschleining/DbPediaImport.git
mvn パッケージでコンパイルすると、gzip された dbpedia ファイルを引数として受け取る jar ファイルがターゲットに作成されます。bz2 ファイルしかない場合は、次のように変換できます。
for i in *.bz2 ; do bzcat "$i" | gzip > "${i%.bz2}.gz"; done &
今実行します:
java -jar ConcurrentDataTableWriter-0.0.1-SNAPSHOT.jar yourdbpediaFolder/*.gz
次に、Linux の sort ユーティリティを使用して、新しく作成したファイルを手動でソートします。
gunzip -c nodes.gz | sort -k2 -u | gzip > nodes_unique.gz
そしてトリプルファイル:
gunzip -c triples.gz | sort -k1,3,2 -u | gzip > triples_unique.gz
これで、リポジトリのバッチ インサータを maven3 (mvn パッケージ) でコンパイルし、nodes_unique.gz および triples_unique.gz ファイルと同じディレクトリで実行して、「DbpediaNe04J」という名前の Neo4J データベース ディレクトリを作成できます (代わりに「0」というタイプミスに注意してください)。 oの)。
トリプル内の主語/目的語のペアごとに 1 回だけインデックスを検索するため、これが最速の方法であることがわかりました。
データ型ノードをプロパティなどとして自由に追加してください。現在、各トリプルを 2 つのノード間の関係として実装しています。