Database Scalability for Relational Databases with In-Memory Computing
Database scalability is the ability to scale out or scale up a database to allow it to hold increasing amounts of data without sacrificing performance. Scaling out often involves sharding the database across multiple database servers in a distributed cluster while scaling up involves increasing the computing power and resources of the database server.
Many relational databases (RDBMS) such as Oracle 12c, MySQL, Postgres or Microsoft SQL Server were designed to run on a single server. As the size of a relational database grows, organizations may run into performance issues with their infrastructure and database technology due to database scalability challenges. When they begin to experience issues, organizations typically first scale up the database server. If their database continues to grow and performance degrades on the largest servers they can acquire, the next step they may consider is to move to a higher performance database technology, often at a much higher cost.
Many organizations decide against changing to very expensive, high performance RDBMS solutions. They instead explore distributed database solutions to address their database scalability challenges. For relational databases, the typical approach is to shard the database and distribute it across multiple servers in a cluster. Organizations often try to shard their database across multiple servers using code created in-house, which can be difficult and expensive to maintain.
In-Memory Computing for Database Scalability
As an alternative to manual sharding, there are distributed in-memory computing solutions available which can scale out relational databases. For example, the GridGain® in-memory computing platform is a distributed computing platform built on an in-memory file system. This solution will automatically shard the underlying relational database while simultaneously moving it into memory, providing both database scalability and high performance. Well designed in-memory computing solutions may include ACID transaction compliance and ANSI-99 SQL support including DML and DDL capabilities.
The GridGain in-memory computing platform was designed from the ground up as a distributed computing solution. GridGain is inserted between your existing application and database layers and is deployed on a cluster of servers which can be on-premises, in a public or private cloud, or in a hybrid environment. New servers can be added to the cluster at any time and the system will automatically rebalance the data to take advantage of the new resources.