Mysql

如何執行從 RDBMS 到 Neo4j 的 ETL

  • October 12, 2015

我有一個基於 mySQL 的成熟的 50 多個表 Web 應用程序。為了進行一些高級數據探勘,我想使用 Neo4j 和 cypher 的優點。但是,我很難將數據從 RDBMS 遷移到 Neo4j。我不想手工做,因為這通常是不可維護的。

我使用支持 Neo4j JDBC 的 pentaho,但是我很難把提取的數據載入到 Neo4j,因為 GUI 顯然是為 RDBMS 設計的,並且沒有關於如何做到這一點的資料。有沒有人遇到過類似的問題並找到了解決方案?

Neo4J 提供的 JDBC 驅動程序用於 Cypher 查詢(僅限選擇)。沒有插入、更新或刪除。您將不得不採用其他一些方法,例如 .. 將 rdbms 內容導出到 csv 並將 csv 導入到 Neo4J。

也許為時已晚,但我遇到了這個問題,我可以解決它。

首先,您需要添加Table Input從 MySQL 獲取記錄的工具,然後您可以execute SQL scriptScripting工具中添加。創建你的transformationfrom Table inputto Execute SQL Script。然後Get fields復選標記:

  • 為每一行執行?
  • 作為單個語句執行

然後你可以像這樣添加你的密碼查詢:

CREATE(NodeName:NodeLabel{field1:?,field2:?,field3:?,...})

引用自:https://dba.stackexchange.com/questions/42016