Should Red Hat buy or build a database?
TL;DR — Yes. With data gravity influencing where workloads go, not having a database/ DBaaS offering will limit Red Hat’s success as more enterprises move to public cloud.
Krishnan posited that not having databases is a hole in Red Hat’s portfolio:
To which Stephen responded why Red Hat shouldn’t buy or a build database.
I felt that Stephen’s post explained why Red Hat couldn’t rather than shouldn’t offer a database. In our twitter conversations that followed, he provided following questions as qualifiers if one were to justify why Red Hat should offer a database solution.
- how they run a DBaaS
- how they outengineer AWS, GOOG, MSFT in that market
- which databases *plural* they offer
- how they don’t impact RHEL/OS with those choices
- how they acquire traditional DB customers
I see above questions more of pointers to how Red Hat can offer a database/ DBaaS. Before I address them, I would like to address why Red Hat should:
Data Gravity is one of the most important factors influencing where workloads go. In a multi-cloud world, the amount of data in a particular cloud environment plays a larger role (among other factors such as TCO, relationships, discounts, etc) in bringing more workloads to that cloud environment. It is no surprise that AWS offers Snowmobile to literally haul data away from your datacenter to theirs.
It is important to note that only a very little percentage of enterprise workloads have been migrated to public clouds so far (conservative estimates place it at around 10%). As long as data resides within enterprise data centers, data gravity doesn’t matter much and Red Hat can get away with ‘included’ databases such as MySQL, PostgreSQL etc. But when they move to cloud, not so much. Here is why.
When a Red Hat customer starts to move their workloads to a public cloud environment, it is most likely that they will replicate their existing environment on the cloud (aka Lift and Shift). So far, Red Hat has got nothing to lose. But once they start re-designing/ re-architecting to leverage cloud-based services or start designing cloud-native applications, they will most likely use cloud-based offerings such as SQL Azure/ AWS RDS or Azure CosmosDB/ AWS DynamoDB for their database needs. They might continue running compute on Red Hat offerings (either RHEL on VMs, or on OpenShift), but data will be out of Red Hat offerings. As more data move to such public cloud database services, fewer reasons for compute to stay on Red Hat offerings.
Missing/ Incomplete piece in Support
Red Hat currently includes databases such as MySQL, PostgreSQL, etc. with RHEL. For such databases, the support provided by Red Hat only includes packaging, installation, and minimal configuration, but no troubleshooting of database itself. It also doesn’t test advanced configurations with some of the supported databases (such as clustering with MongoDB). It is also not clear what type of support does Red Hat provides for databases that are included with RHEL images on AWS/ Azure.
When compared with the kind of support that Red Hat provides for its other portfolio offerings such as RHEL/ RHEV, storage, middleware, it is clear that support for databases is definitely a missing/ incomplete piece in their support offerings.
What Users Want
Multiple user reports/ surveys on cloud adoption patterns (OpenStack User Survey, State of Cloud, Stage of Modern Applications) show the importance and growth of DBaaS services, with MySQL and MongoDB leading in adoption. With more workloads moving to cloud/ cloud-native applications getting developed, this pattern is only expected to continue — it is Red Hat’s best interest to capture this opportunity.
Now to the how part:
- How they run a DBaaS
It is to be noted that Red Hat already supports some type of DBaaS (through Red Hat OpenShift (Online or Dedicated) or Red Hat OpenStack Platform through supported partners), but it relies on its partners to enable these services. Providing a DBaaS offering is no trivial effort — it requires necessary appetite, expertise, and investments to begin with. Given Red Hat’s expertise in open source, it is easier for Red Hat to build its expertise — through hiring and/ or acquisition.
Red Hat’s partnerships with AWS and Azure to enable Red Hat OpenShift Online is in the right direction. Red Hat can focus on enabling DBaaS offerings on public cloud environments to begin with.
2. How they outengineer AWS, GOOG, MSFT in that market
No, Red Hat can not; and it makes it all the more reason why Red Hat should offer such an offering. Since Red Hat cannot outengineer hyper-scalers, it needs to continue enabling more options to stay relevant. As we discussed earlier, as enterprises migrate to the cloud, the more data stays within Red Hat offerings, more relevant it stays.
3. Which databases *plural* they offer
At the very minimum, a relational database and a NoSQL database to being with. Based on current usage patterns on the cloud, MySQL and MongoDB appear to be the top choices. Redis could be the third option.
Please note that it is not the choice of the database that matters, but an appetite to enter this space.
4. How they don’t impact RHEL/OS with those choices
Security, Reliability, and Operational efficiency are cited as the top business drivers for customers to choose Linux on the cloud, with Red Hat customers choosing commercial subscription for support. As applications become more cloud-native, the underlying operating system becomes less relevant. Heavy lifting of support also will shift towards public cloud service provider. If at all, DBaaS offering helps Red Hat to stay more relevant in a cloud-native world.
Of course, not all the workloads will move to the cloud; neither will all enterprises. Even after they move, a vast majority of them will continue VM based deployment patterns. For such customers/ workloads, RHEL/OS will continue to be the operating system of choice. Providing choices of DBaaS would rather enhance the user experience, than impacting RHEL/OS.
5. How they acquire traditional DB customers
RHEL/OS will continue its current market share for SQL/ Oracle users. This pattern will continue as long as VM based cloud migrations cloud continue. In addition to this, offering DBaaS choices allows Red Hat more opportunity to acquire more workloads on its offerings. For truly cloud-native/ serverless workloads in public cloud environments, such DBaaS offerings may only be the ones from Red Hat portfolio to be used.
Red Hat should buy or build a database/ DBaaS offering for the above-mentioned reasons. Your comments are welcome.
Disclosure: Microsoft and Red Hat have been CloudDon customers.