保持neo4j更新生产MSSQL

时间:2017-07-14 14:54:14

标签: java sql-server neo4j migration etl

我正在调查使用neo4j来处理我们的java Web应用程序的一些查询的可能性,这些查询只需要很长时间就可以在MSSQL上运行,因为它们需要在大型表上进行如此多的连接,即使已经实现了索引。

然而,我担心完成ETL可能需要的时间最终会影响查询时信息的过时程度。

有人可以提供有关生产策略或工具包/库的建议,可以帮助阅读生产sql-server数据库(如果可能的话,使用增量进行优化)并更新neo4j数据库的运行实例吗?我想必须有某种映射配置,但想法是以自动方式运行,用一个或多个sql-server表或视图内容更新neo4j数据库。

1 个答案:

答案 0 :(得分:0)

  1. 将MS SQL数据库连接到Neo4j数据库的直接方法是使用 apoc.load.jdbc 过程。
  2. 对于初始加载,您可以使用Neo4j ETL(https://neo4j.com/blog/rdbms-neo4j-etl-tool/)。
  3. 然而,如果你想要保持两个数据库同步(并且所涉及的逻辑超出了一些简单的查询),那么就无法进行一些规划和工作。您可能希望每隔一段时间(每月,每天,每小时......)将增量卸载到CSV文件中,并使用 LOAD CSV加载那些(使用CYPHER语法确定需要添加,删除,更改或连接的内容) 即可。
  4. 可悲的是,没有免费的午餐。

    希望这有帮助, 汤姆