We have a Java/JEE based web application that relies heavily on *.properties files. Most of the properties are read only that is rarely modified during run time. Still, there are set of properties -- system configurations -- that can be changed via UI on the production servers.
The framework around properties is a home grown solution based on java.util.Properties class and also takes into account internalization/localization of certain set of properties. We have more than 5000 properties files in our code base.
We are in the process of revamping the application and one of the question that is being debated hotly is:
Whether we should replace the existing file based framework with a NoSql database that supports key-value pairs. For Example, Redis.
So, to decide on this we are looking for some sort of pointers on the following lines:
Will there be any change in performance whilst NoSQL DB vs file system
One advantage that I see with using databases to store this information is that, If I were to set up new instances or move instances around in Cloud, then I won't need to copy the changed files.
However, I am a bit skeptical about adding an additional layer of accessing a DB just for the purpose of storing key-value pairs that in most of the cases are Strings (no large objects etc)
Do NoSQL database solutions typically perform better or worse than straight file access in read-only situations?
Thanks and Regards
Don't play dumb with me! But you can try this tiny ad: