That was 8 years ago and I’ve kept the conversation in the back of my mind whilst watching the rise of the Open Source database.
It’s a great place to be for a flexible and agile organisation who is comfortable with managing multiple tools to get the job done. On the face of it, Open Source provides much better value than a licence and support model, so why persist with the vendors? This is a conversation we have all the time with regard to new projects, or removing cost and complexity from existing environments and the answer isn’t always so clear cut.
This isn’t a right or wrong guide, only some observations that may help you in your decision making process:
Open Source Databases
1. Protect your investment
For new projects, look to see if you can use spare capacity on your existing environments, even if that means a restructure of your current architecture. Oracle or Microsoft enterprise editions may be an expensive option too, but they cost nothing if you have already paid for them.
If you are a Microsoft shop, with everything running on Windows and with all of your staff Microsoft trained, it is unlikely to make sense putting your new database on MariaDB to save on licence costs.
2. What do you need it for?
You can then have the Relational Database Management System (RDBMS) vs. NoSQL debate – for those of you unaware of NoSQL, if you are interested in rows and columns of structured / ordered data you want RDBMS. If you want to keep a bucketful of unstructured data (photos, cctv, documents etc.) then NoSQL may be for you.
Look into the projected workload and what you will be interfacing with and choose the most appropriate database for the job.
3. How long do you need it for?
How long you need it will have a big impact on what to use. If you have the skills internally and it’s a short term project, then there is no need to spend on licences. Just get started with your chosen database. If you have no skills, then ask if it is worth training your team up or if you can partner with a 3rd party.
If this is a strategic platform then consider things like long term support from the community, integration with your enterprise architecture and ability to take advantage of new releases.
4. How are you planning to support it?
This is a key decision for you, looking across the history of technology, there are any number of superior technologies that just didn’t make it. Think VHS vs. Betamax for instance. Just because a platform looks great and seems to do what you want it to, it doesn’t mean that it will stay around long enough for you to get a return on investment. Take a look at what 3rd parties are providing services for it and also what the adoption rate is; are there case studies with organisations that have a similar risk appetite to you.
5. Where are you planning to deploy it?
This isn’t so much tied to Open Source as databases in general but when considering cloud deployments, make sure that you are getting the service level you require. Amazon Web Services is a fantastic resource but by default if it goes down it’s your problem. Also many cloud providers will support the infrastructure surrounding the database and perform basic administration functions. They tend not to provide the expert DBA services such as performance tuning or application optimisation that you would get from a specialist.
Businesses of all size embrace Open Source and the benefits it can bring. If you feel it’s an option for you, it will typically cost you nothing but time and resource so why not try it first!