Stuff to research: JDO on Cassandra, GIT on Windows, Restlet, VMForce
Just had evening of just trying out stuff and not finishing anything on my Windows machine.
I wanted to try out a persistence API for Cassandra. There's a JPA implementation for Cassandra: Kundera, as well as JDO implementation, on top (or using) datanucleus: datanucleus-cassandra.
Just to clarify why I would want such a thing: nosql solutions such as Cassandra are, in essence distributed key-value stores. I know, from following a few classes on databases and distributed databases when attending the university that's a whole lot more complicated to implement then it may seem.
Nevertheless, to do anything useful with that you need a layer on top of the key-value store. Basically all SQL databases like Oracle or MySQL have SQL layer around there key-value store. But the nice thing about stuff like Cassandra you can put something more convenient on top.
I wanted to try out both, starting with the JDO version, as that seemed more like a natural fit, and I once started ORM with JDO 1.0 many years ago.
I'd need a git client on Windows, and apparently there's already a Tortoise Git client, based on the truly great TortoiseSVN, on of the tools I really miss on my Mac. The client version of git first had to be installed, but that was quite easy as well, just download and install msysgit.
The tortoisegit client looks very well, and seems easy to use. At least I got the code of datanucleus-cassandra in a breeze. Well now it's kind of late, I'll try out later.
Other stuff I want to try out: creating a Rest service using Restlet on Google AppEngine. Just to find out how that works. But later.
Finally I saw a demo on VMForce. Looks very promising, as I like Spring for development and that's what you'd use. Nothing is released however, now there's just articles and a demo.
Database upgrade during deployment
I want to create an installation package of a Java application. Part of the installation involves upgrading a SQL database (Oracle) - by running a few SQL scripts. Creating the SQL scripts to do the update by itself isn't the problem, however I need to find a way to easily run those script.
Of course Oracle has something like SQLPlus, but that would mean SQLPlus has to be installed on the machine from where the package is installed. Another problem with SQLPlus is that it's not so userfriendly.
Using JDBC and some programming I can easily create something that would check what current version of my application is installed, and then run the needed SQL scripts to upgrade the database. However, even easy things take some time and I'd think there are already some existing solutions.
I was about to ask a question on stackoverflow, but before I finished typing my question stackoverflow already came up with a similar question: Update a backend database on software update with Java. I'll have to try out on of the suggested solutions, Liquibase, dbmigrate and maybe Autopatch.
subscribe via RSS