EnterpriseDB: Implementing databases in an open, agile world
By Dzof Azmi August 4, 2020
- Database developers beginning to drive decision making, choosing open source
- Open source databases have advantages, long-term consequences must be understood
"Developers want to drive decisions in an agile world," says Marc Linster (pic). The EnterpriseDB chief technology officer was discussing the choices faced by decision makers when it comes to picking what database to use.
Although database technologies have been around since the 1960's, how they have been implemented has changed drastically, including the choices made about them.
"One of the key changes is that developers drive more technology decisions today," explains Linster. "Developers are well-informed about the database capabilities they need, and they tend to look for better building blocks and more capabilities, which exist in open source."
This should not come as surprising news from someone who works for a company that supports PostgreSQL, itself an open source database. But the truth is that open source databases are significant, holding an estimated 70 percent of the market, according to research by Gartner. Meanwhile, a 2019 Red Hat report revealed that 84% of APAC enterprises surveyed found open source to be at least "important" to their enterprise infrastructure software strategy.
"In the past, developers had to pick from a corporate catalogue, and they did their best with what was offered. Now, the catalogue is the world of open source."
"Therefore, having to pick from an approved software catalogue when they could be using the best that's available in the world is a potential source of friction for some organisations," he adds.
Another change that has had developers asking for more control and preferring open source is the rise of agile development. "The needs for agile and ‘fail fast’ require open source, so one can try things, reject technology, and build on something better," he points out.
"However, this does not work if businesses make a multi-million dollar database purchase before having the chance to try it out. Once the money is spent, the tech team will have to use that software package, even if it is not the best solution for them. This often slows things down and causes friction."
Taking care of your 3-letter acronyms
Although MySQL and PostgreSQL are the two dominant open source databases in use today, there are literally hundreds to choose from, and a C-suite decision maker needs to understand whether a database technology is a good fit for their problem at hand.
Linster recommends that CTOs consider right at top what tier the relevant applications are sitting at. "Are they trying to address high volume departmental solutions, enterprise solutions, or mission critical solutions? This allows them to understand the exact problem they are trying to tackle."
He observe that many organisations start out using open source software because it’s free. But as they get closer to production, they often find that they need to re-evaluate their strategy.
“While it’s easy to develop on free software, once they’re near production they can’t ensure that they can maintain their RPO, RTO and SLA targets, and successfully manage their database.”
Linster is talking about the performance metrics needed by the databases: RPO (Recovery Point Objective, the amount of data that they can afford to lose), RTO (Recovery Time Objective, how quickly they need to recover a database in case of failure), GRO (Geographic Recovery Objective, which is relevant if there are local disasters), and SLAs (how fast do they need to be to be up and running again).
"These are key questions that too few companies ask themselves at the beginning of the venture because they don't see them as decision drivers," explains Linster.
Useful features are sometimes unfortunately avoided
There are also database-specific features that may be useful, depending on your situation. "Do they require Geographic Information System (GIS) data, such as the geographic proximity to an event? Do they need flexible data types? Do they need full text search?" he asked. "Organisations tend to avoid using the capabilities specific to a database because they don’t want to be locked into one vendor or platform."
Linster said this can be disadvantageous because developers can cut down on how much code they write if they use the features.
Lock-in is another consideration to weigh when deciding where to locate the database. "Are they committed to a certain cloud or data centre platform or do they need to remain flexible? Today, while most databases run on all major clouds and operating systems – their licenses are not necessarily portable," he cautions.
He understandably touts PostgreSQL's portability as an advantage. "You can run it on Azure, Amazon, a data centre on your laptop, or in containers," he explains. "There is no platform or vendor lock-in with PostgreSQL."
Finally, Linster says that companies also need to nurture support for the database technology they intend to adopt.
"When companies switch to open source, they tend to underestimate the efforts that are required to create a community of practitioners," he points out. Specifically, open source thrives on having a vibrant, open community, developers learn on their own where formal training and certification is no longer a necessity.
"Open source moves differently than organisations do, so organisations have to move differently too."
Related Stories :