SQL データベースを持つ .net プロジェクトを開発しました。SQL DB ファイルを neo4j データベースに直接インポートできる方法はありますか?
3 に答える
Chris Skardon の言うとおりです。カテゴリを少し整理した方がよいかもしれません。Neo4j はリレーショナル データベース上のグラフ レイヤーではなく、競合/補完的な種類のデータベースです。Neo4j でリレーショナル スキーマを模倣することは可能ですが、おそらくあまり有用ではありません。
SQL データベースから Neo4j にデータを転送したいが、実際のインポートを自分でコーディングしたくない場合は、以下のヒントとツールを参照してください。(リストが Java 中心であることをお詫びしますが、まだ .NET から Neo4j を操作したことはありません。ここにいる他の誰かが助けてくれると確信しています。)
- SQL を CSV にエクスポートし、Michael Hunger の Batch CSV Importerを使用して Neo4j にインポートし、 Max De Marzi のガイダンスを受けます
- SQL をスプレッドシートにエクスポートし、指示に従ってNeo4j にインポートします
- Neo4j JDBC ドライバーでPentaho Kettleのような ETL ツールを使用する
- Spring Dataなどのオブジェクト マッピング用のフレームワーク (おそらく Linq に似ている) を使用します。オブジェクト グラフ マッピングと呼ばれるものにはSpring Data Neo4jがあり、クロス ストア パーシスタンスと呼ばれるデータベース バックエンドの異なるファミリにドメイン オブジェクトを分割することもできます。
ただし、Neo4j と対話するために、できるだけ多くの独自のコードを作成することをお勧めします。おそらく他の誰かがもっとうまくやったでしょう (少なくとも私はそれを見つける傾向があります) が、自分で書くことでデータベースと API の理解が大幅に深まり、運転の仕方を本当に知っていれば、走行距離が大幅に伸びます。
ここでの jjaderberg の回答に加えて、Talend Open Studio for Big Data を使用して SQL サーバーにクエリを実行し、結果を最初に .csv またはスプレッドシートにエクスポートせずに直接 Neo4j グラフにインポートできます。Talendを
Neo4jで
使用する方法に関するチュートリアルは次のとおりです: http://neo4j.com/blog/fun-with-music-neo4j-and-talend/ 代わりにデータ ソース、タスク [tNeo4jOutput] をデータの宛先として、タスク [tNeo4jOutputRelationship] をグラフの関係に使用します。