Hybrid Databases: The Key to Application Flexibility
April 12, 2017
Hybrid databases have been discussed widely in recent years, particularly the ability to run transactional and analytical workloads concurrently. The industry often refers to this as HTAP (Hybrid Transactional and Analytical Processing). Being able to run OLTP and OLAP workloads concurrently gives application and software architects more flexibility when updating existing apps or building new applications.
Based on their HTAP functionality, hybrid databases are becoming the modern standard for real-time, data-driven applications. However, there are other important database characteristics that will also benefit from a hybrid approach. They give businesses even more choice and utility for their applications.
Most databases store 100% of their data on a single medium-type. In-memory databases use a computer’s main random-access memory for storage, and deliver the highest performance, but at a high cost. These systems also have to ensure persistence in case of system failures. Traditional databases store data as files or blocks to disk. While this is slower than in-memory, it’s still fast enough for most purposes, and persistence is included. Immutable data, particularly for large collections of infrequently accessed data, works with object-stores such as AWS S3. That is slower but much cheaper, and you only pay for the data you actually store.
Hybrid databases support these options in a single application. This allows users to strategize trade-offs between latency, cost and storage retention options. For users and applications, the difference in operation across storage types will be minimal, as data manipulation will be uniform across all tables, but the cost savings can be substantial. Better yet, hybrid databases use optimizers to automatically decide the best execution plan based on statistics and available indexes to improve overall performance regardless of the data’s location.
Rows and Columns
Supporting both row-based and columnar storage allows a hybrid database to optimize both transactional and analytical queries. Traditional RDBMSs use row-based storage for transactional queries, though the use of columnar storage is better for analytical queries, allowing for faster searching and reporting. A hybrid storage schema in a single database provides a more efficient platform, with all data stored in a way that optimizes for the task at hand.
Cloud-based database adaption is growing rapidly, but on-premise deployment still remains valuable in many business situations. Cloud-based deployments can eliminate the need for constant database and technology management by internal IT resources. Meanwhile, on-premise deployment may offer more control when required. Databases featuring hybrid deployment options give businesses the best of both worlds, allowing for a more efficient use of resources and staff.
Splice Machine, the leader among hybrid databases
Splice Machine is releasing its cloud database platform, building upon the recent additions of hybrid storage types and schema in our v2.5 release. It is already regarded as one of the leaders in hybrid databases, due to its unique combination of full ANSI-SQL support, ACID transactions and in-memory analytics on a scale-out architecture – all with open source software. With each update, Splice Machine works to give businesses a more flexible, cost effective and scalable database for application development.