I would like to use the ENRON GraphML dataset, loaded into Neo4j, as a database for my Grails 2.0 application. The use-case for the data is read-only. I have had no trouble loading the dataset and creating a database in a stand-alone application, and now would like to use the Grails plugin to manage access to the database.
Looking at the Neo4J plugin documentation on mapping domain classes, I see that it requires subreference nodes for each type of vertex. My data doesn't have that. I can see several ways of moving forward, and am unsure about which to pursue:
Dump the plugin, create a service, and manage reading the database myself. Pros: I can implement this easily. Cons: potential performance issues, bugs.
Write a program that creates the missing vertexes and edges expected by the plugin, and then load the database into the plugin. Pros: plugin will manage access. Cons: Might take a few iterations to figure out exactly what needs to be added to make it consistent with a plugin-created database.
Create an empty database via the plugin and perform a bunch of insertions by reading the data from a different database. Pros: plugin will manage access. Cons: might take a long time to bootstrap database; need to write code to traverse, serialize database; etc.
What's a good way to go? What am I overlooking?