简体   繁体   中英

Neo4j: Initial and Delta data load from SQL Database

Currently, evaluating Neo4j for some data analytic. Where data from different database will be pushed to Neo4j Database periodically. These can have "Addition, modification as well as delete".

As the model how data store in GraphDB and and in Origin SQL DB by virtue differs, we are thinking/trying to find - how to handle the add, modify and delete scenarios?

  1. Are there any standard Rules/Ways?

  2. Are there any tolls for sync? (Other than the CSV or similar imports)

Thanks in advance

There are not ready-to-use solution in your case. You should build it by yourself.

#1 - Manual imports

You can prepare data and manually execute import (using standard tools). Then, when new data appears - manually prepare new data and import to existing database.

Import tool and Cypher csv can be used here.

#2 - Unmanaged extension

You can develop unmanaged extension that will be capable to persist data in Neo4j from your database. In this case some sort of sync should be implemented on client and server side.

More information can be found here .

#3 - neo4j-csv-firehose

There is extension developed by @sarmbruster - neo4j-csv-firehose .

neo4j-csv-firehose enables Neo4j's LOAD CSV Cypher command to load other from other datasources as well. It provides a Neo4j unmanaged extension doing on-the-fly conversion of the other datasource to csv - and can therefore act as input for LOAD CSV. Alternatively it can be run as standalone server.

Check README for more information.

#4 - neo4j-shell-tools

This is another project developed by @jexp - neo4j-shell-tools .

neo4j-shell-tools adds a number of commands to neo4j-shell which easily allow import and export data into running Neo4j database.

Check README for more information.

#5 - Liquigraph

Another interesting tool is - Liquigraph .

Database migrations management tool, based on how Liquibase works.

You can write migration for Neo4j database in XML using this tool.


Also, you check other existing neo4j tools - maybe something works for you.

Not really sure what you're asking for.

Usually you have a import script that imports into the graph model.

This can be cypher or java code and be driven by csv, json, or whatever your datasource is (provided as parameter).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM