您能否分享任何链接/示例源代码,以使用 Oracle 数据库表数据中的 Neo4j 生成图形。
我的用例是 oracle 模式表名称,因为节点和列是属性。并且还需要在树结构中生成图。
您能否分享任何链接/示例源代码,以使用 Oracle 数据库表数据中的 Neo4j 生成图形。
我的用例是 oracle 模式表名称,因为节点和列是属性。并且还需要在树结构中生成图。
确保在使用 tx.success()、tx.finish() 创建节点后提交事务。
如果您仍然看不到节点,请发布您的代码和/或任何异常。
使用 JDBC 提取您的 oracle 数据库数据。然后使用 Java API 构建相应的节点:
GraphDatabaseService db;
try(Transaction tx = db.beginTx()){
Node datanode = db.createNode(Labels.TABLENAME);
datanode.setProperty("column name", "column value"); //do this for each column.
tx.success();
}
还记得扩展您的交易。我倾向于在每笔交易中使用大约 1500 次创建,这对我来说效果很好,但您可能需要稍微尝试一下。
只需执行 SELECT * FROM table LIMIT 1000 OFFSET X*1000 ,其中 X 是您之前运行查询的次数的值。然后将这 1000 条记录保存在集合或其他东西的某个位置,以便您可以使用它们构建节点。重复此操作,直到您处理完数据库中的每条记录。
不确定“并且还需要在树结构中生成图”是什么意思,如果您的意思是要将外键转换为关系,请记住只索引键而不是将 FK 添加为属性,而是创建与原始节点的关系。您可以通过索引查找找到它。或者您可以使用 HashMap 创建自己的小型内存索引。但是由于您已经在内存中存储了 1000 条 sql 记录,而且您正在构建事务......您需要根据 JVM 设置对内存小心一点。
您需要自己编写此 ETL 过程。按照下面的