Are Hyperconverged Infrastructures Suitable for Databases
Ashminder U.
Technology-Driven Growth Leader | 24 Years of Experience in Go-to-Market Strategy, Sales Leadership, and Customer Success | Innovator in Digital Transformation and Creative Storytelling
Having specialised in databases for many years and now working with hyper-converged (HCI) technology, I decided to explore the benefits of bringing the two together using HCI as a platform to host databases. Traditionally HCI platforms were used for VDI and later expanded out to virtual server (VSI). More recently, with advances in technology, many businesses are using HCI for multiple workloads including enterprise applications and big data.
The Database Challenges
Over the last 10 years, there has been an increased requirement for higher performing, more resilient and scalable databases. This is due to the demands that businesses place on their applications and underlying databases to drive more value from data.
Data processing became a major issue as disk based storage arrays could no longer keep up with the demand of today’s applications. Some of those challenges are:
- Data sits too far away from the server processors and has to traverse network fabrics which adds latency and complexity
- Hard drives have reached their IOPs and latency limit and traditional disk arrays are no longer a viable option for tier1 applications. The costs of over-provisioning HDDs to get more IOPs and better latency is no longer a solution as flash storage as become an attractive alternative
- Complexity of scaling database performance and infrastructure in line with business expectations can require large upfront purchases which may never get fully utilised
With the point 2, all-flash arrays have become a popular and obvious choice now for database environments. They provide a huge performance boast when compared to traditional hard drives. However, they still have the problems of controller bottlenecks and not being able to access the full latency potential of SSDs when traversing complex network fabrics.
Virtualising Databases
Virtualisation has now become the norm with many businesses being as much as 90-95% virtualised - VMware is the clear leader. Virtualisation is great technology, allowing IT administrators to get more out of bare metal servers by introducing intelligent resource management. This allowed them to run more workloads than would be physically possible - ultimately reducing the cost of a physical infrastructure. I started my career as an Oracle specialist and would never have considered virtualising databases back in the days due to the performance hit from the hypervisor and resource over-provisioning. It is important to note that there is also a licensing tax with running Oracle on a virtualised platform. If you are using vmware or hyper-v then Oracle wants you to license every single core in the virtualised cluster, even if you only use a few of them. That has been a major barrier to virtualising Oracle but SQL Server doesn’t really have this problem.
Virtualising databases has major benefits in terms of resiliency, being able to easily move them between hosts to either rebalance load, in the event of failures or during maintenance windows. If you could bring the data much closer to the CPUs then the latency tax of the hypervisor can be dramatically reduced because there would be no network to travel through. However, the challenge here is having shared storage on a SAN fabric between the multiple hosts in a virtualised cluster.
Databases on Hyper-converged (HCI)?
In a nutshell, HCI tightly integrates compute and storage into nodes with a software defined layer to manage it as a single pool and a hypervisor on top. The general benefits of HCI are well documented so I am not going into those in any great detail, only in reference to database. Some of the benefits realised by running databases on HCI can be:
- Performance improvements by bringing the storage (data) closer to the compute and removing the SAN fabric - data only has to travel over the internal bus
- Easy and predictable scale. Many databases grow linearly with the number of users/transactions, this requires a platform which can also scale in the same manner. This is a challenge I faced regularly when working in the online gambling market. These applications require a platform where adding another node gives x more users/transactions at predictable performance. HCI provides that and is one of its major benefits, simply add a node and you have more compute, memory and storage which can be consumed quickly
- Less downtime. A truly software defined HCI platform allows IT administrators to carry out non-disruptive software updates, add additional nodes quickly, carry out maintenance, self-heal and build in a high level of resiliency in the event of failures
- Reduce cost by consolidating physical infrastructure, leading to a much lower operational cost
As more businesses get comfortable virtualising databases, it makes sense for them to be considering HCI as part of their next infrastructure refresh or greenfield site. There are still some licensing challenges with Oracle but this can be de-risked by having ring-fenced nodes just for those databases. I believe that HCI coupled with virtualisation is making it less relevant to have silo specialist infrastructures, enabling businesses to reduce complexity by running multiple workloads on a single platform - including databases.
Principal Pursuit Architect,General Manager at HCL Technologies
7 年Very interesting and informative!!! Thanks for sharing
Nice post Ash!