1

mysql に 60000 項目のデータセットがあり、それを neo4j に挿入しようとしています。挿入は行われていますが、時間がかかります (3 秒あたり約 10 ~ 15 回)。高速化する方法はありますか?また、重複インデックスがインデックス化されないように、neo4j で一意のキーなどを指定する方法はありますか? 私はneo4jが初めてです。

PHP Everymanドライバーでneo4j 1.8を使用しています。

4

2 に答える 2

1

ETL から Neo4j への変換について、Max De Marzi からの素晴らしいプレゼンテーションがあります。

参照: http://www.slideshare.net/maxdemarzi/etl-into-neo4j

使用する言語、jruby を介して埋め込まれた Java からの多くのオプション、および ruby​​、php、python を介してリモートで使用するオプションによって異なります。

適切なサイズのトランザクション (例: 1 トランザクションあたり 10,000 アイテム) でリクエストをバッチ処理する必要があります。

バッチ インポーターを使用するか、Neo4j サーバーのBATCH REST APIを使用して、CSV ファイルをデータベース ファイルに直接インポートすることができます。

于 2012-12-03T16:49:37.603 に答える
1

前述のように、推奨されるオプションはバッチ インポーターです。

PHP クライアントを使用する必要がある場合は、REST バッチ API を使用する例をここに示します: http://phpfiddle.org/main/code/mu3-sgk

システムに最適な行/バッチをテストできます。私のラップトップの場合は 750、テストサーバーの場合は 1250 です。発生する json_decode は CPU に負担がかかります。

于 2013-01-15T16:26:10.380 に答える