This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
I am working on a client server based application - that needs to accumulate data over time ~ 100 MB per month. Do not foresee any cleanup of the data - it will just accumulate, and only the latest data will be used more frequently, older data would be required only occasionally. I am not able to decide which database should be good for such an application? Traditional MySQL? Or the Java based ones like HSQL / H2 / Derby?
I checked out many discussions on the related topics that discarded H2 and Derby as not up to the mark - leaving me with MySQL and HSQL. For these, I found a lot of contradictory points - some say that MySQL is sturdy and has a lot more capacity while others promise HSQL is a lot more fast and sleek - easy to package and deploy, etc. Some crib about HSQL hogging RAM.
Basically I am confused if my requirement of 100 MB per month classifies as huge data or small? How bad is the HSQL Ram usage? Is there a way to neatly package MySQL with an application? Or make HSQL digest more data? Is there any other criteria to decide? Or any other alternative?