我一直在Java Servlet Web應用程序(Maven Web應用程序原型項目)的上下文中使用neo4j。我有一個單獨的MySQL服務器運行它存儲用戶信息。Web應用程序 - 每用戶Neo4j數據庫
應用程序需要爲每個需要存儲的用戶(最好在數據庫中,而不是服務器上的文件夾)提供單獨的圖形數據庫。
我用下面的代碼來創建數據庫:
GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase("Neo4j/db");
這存儲在服務器主機上的本地目錄數據庫。通過爲每個用戶製作一個本地圖形數據庫來「污染」主機是不可取的(例如,它會消耗用於數據存儲的主機內存,這自然是數據庫的責任)。另外,我寧願如果我不需要配置和運行單獨的neo4j服務器。
有沒有辦法將neo4j數據庫保存在內存中,序列化它以便將數據存儲在關係數據庫中,並在服務器需要使用圖形數據庫時將其反序列化?
您試圖通過1)引入關係數據庫來避免多圖數據庫的開銷; 2)在不使用時將整個neo4j數據庫轉儲到關係數據庫;和3)每次需要時恢復用戶特定的數據庫?這沒有意義。我相信你*可以*做任何你想要的序列化(意味着答案是'是'),但我只是不知道在真實世界中可能會如何擴展...... –