I have been trying to compare the features of the SQL Server Express, Oracle XE and DB2 Express-C, but find it difficult to compile all the differences into one place. Especially the current differences as this is a constantly shifting battle field. Anyone have this information on hand or know of someone who tracks this? To the best of my knowledge:
- DB2 Express-C (10.5)
- cores: 2
- mem: 16G (4G before 10.5)
- size: 15 terabytes of user data per database
- Oracle Express Edition (11g)
- cores: 1
- mem: 1G
- size: 11G
- SQL Server Express (2012)
- cores: lesser of 1 socket or 4 cores
- mem: 1G
- size: 10G
Other than these obvious measures, what am I missing? I know I could go with open source as well, and MySQL and PostgreSQL are both certainly viable solutions, but for the sake of argument, lets limit it to just these 3 options. In my view, DB2 is the clear cut winner.
Another article on this subject can be found here.
I think you are missing couple important parameters. If you believe the project will advance , you have to keep in mind that one day you will need to switch to non-express version. And at that point license cost becomes very important; switching to another RDMS may require serious refactoring (and usually it does). For startup project I’d not pay too much attention to hardware configuration supported in express version, I’m pretty sure even the lowest will work fine. More important thing in my opinion is DBA’s skills; in practice, not so many database professionals are equally good in all RDMS. So ask your DBA which server she/he would prefer before making a decision.
In my view, DB2 is the clear cut winner.
What about PostgreSQL:
- cores: unlimited
- mem: unlimited
- size: unlimited
- license: PostgreSQL (BSD style)
imho, PostgreSQL beats all Express/cripled databases.