Very dynamic, the database market is now dominated by players such as Oracle, MySQL, Microsoft SQL Server, PostgreSQL, MongoDB, IBM DB2, Cassandra, AWS DynamoDB, but also very specialized newcomers such as Aerospike, GridGain or again SingleStore. At the beginning of March, we were able to meet the leaders of SingleStore during an IT Press Tour in Silicon Valley. Founded in 2011 as MemSQL and rebranded in 2020, SingleStore has gained notoriety in recent months with its real-time database capable of quickly querying and managing structured and unstructured data from multiple sources, such as cloud giants Amazon, Microsoft and Google. “Our ambition is to offer a modern database capable of meeting most business needs,” Suresh Sathyamurthy, CMO of SingleStore, told us during a press briefing in San Francisco. The scale-up has indeed developed a distributed relational SQL database for transactional and analytical workloads that runs on-premises and in the three main public clouds (AWS, Azure and GCP), as well as on IBM Cloud . Big blue participated in SingleStore’s latest fundraising round last November with a $60 million Series F funding round. SingleStore is available in IBM Cloud Pak for Data, Red Hat OpenShift, and Red Hat Marketplace. Note for completeness that Dell and HPE are also part of the SingleStore investors, and that an IPO is envisaged within 18 to 24 months.

Before reviewing the features of this database, three key points are highlighted by Domenic Ravita, CTO at SingleStore. “Enterprises will consolidate their database technologies, the future will be multicloud, and we will see OLAP (online analytical processing) and OLTP (online transaction processing) convergence to support application modernization. SQL distributions are also here to stay. SingleStore leverages a three-tier storage hierarchy. The first level is memory (classic and persistent). The second is the local space with SSDs, finally the last is of type objects in the cloud, with platforms like AWS S3. One of the main issues with cloud object storage for databases is that it is slower than an in-memory approach. Tiering data storage at SingleStore therefore writes updates to the fastest memory tier first and then copies them to object storage to improve overall performance. Note that if the storage is unlimited with a back-up option on Azure and AWS, this is not yet the case on GCP, but it is being finalized according to the CTO of the scale-up.

Available in hybrid mode (on bare metal or container) and in partner clouds, SingleStore supports distributed applications. (Credit SL)

Columnstore and rowstore combination

At the core of the SingleStore platform is the ability to integrate columnstore and rowstore tables for faster query processing. Recall that a columnstore index organizes data logically as a table with rows and columns, but physically stores data in a columnar format. A rowstore index is designed to speed up data retrieval by allowing queries to quickly locate data by index rather than scanning an entire table. Overall, rowstore indexes tend to be better for transactional (OLTP) workloads, which use more update and search operations, while columnstore indexes tend to be better for online analytical processing (OLAP) workflows, which use more read operations. Rowstore indexes tend to be better at performing random reads and writes, whereas columnstore indexes tend to be better at performing sequential reads and writes. Like Oracle, SingleStore offers a hybrid approach with rowstore and columnstore functionality. At SingleStore, there is a small rowstore index sitting next to each columnstore table which is used for small batch writes. Finally, columnstores can also be used for transactional workloads, especially those that are computationally analytical in nature but have operational constraints. Because these workloads disrupt traditional definitions of OLTP and OLAP, they are often referred to as hybrid transactional/analytical processing (HTAP) workloads. This model makes SingleStore efficient for both transactional (OLTP) and analytical (OLAP) applications.

SingleStore is part of a vast ecosystem with multiple connectors to collect and share data. (Credit SL)

SingleStore is, for example, used by Uber to achieve a dynamic balance between customer requests and driver availability in order to calculate prices in real time and also optimize the response time of the transport platform. Among the publisher’s other clients are the video-on-demand service Hulu, Fox and Son studios and even Macy’s stores. The company has already opened offices in Paris for the commercial development of its solution. “We have the money to ensure our growth with a presence in the main regions of the world,” said the CMO of the publisher. For prices, billing is based on the size of the clusters hosted on the clouds of the different providers.