Ken Webb 2013-04-10T11:07:56Z
There are many types of NoSQL databases. I have been able to get Xholon to interwork with several types. Note that not all the code has been submitted to the SourceForge repository yet.
Type | Product | Xholon Service | Xholon Impl | Xholon Test |
---|---|---|---|---|
Graph Database | Blueprints (Tinker Neo4j OrientDB) | BlueprintsService.java |
|
* |
Graph Database | Neo4j | NoSqlService.java |
|
* |
XML Database | eXist | XmlDatabaseService.java | n.a. | n.a. |
REST | Jersey | RestService.java | Jersey.java | * |
Key/Value Database | BerkeleyDB Java Ed. | BerkeleyDBService.java | n.a. | n.a. |
JCR | Jackrabbit | JcrService.java | n.a. | n.a. |
Graph databases, such as Neo4j, are perhaps the most relevant for Xholon, although they don't have built-in support for hierarchy.
Graph databases, and other NoSQL databases, can sometimes replace SQL databases. But rather than just being a replacement for the database (model) part of an application, the Xholon approach is to store the structure of the entire application in the graph or other database. Taken to an extreme, the entire application including the code can live inside the database. The code, such as in a Ruby on Rails application, is just a collection of nodes in the database. This is somewhat like using stored procedures with Oracle and other relational databases.