What is the relationship between SingleStoreDB Cloud and MySQL?

SingleStoreDB Cloud is a standalone distributed database that is compatible with MySQL client software.

SingleStoreDB Cloud is not a storage engine or other component of MySQL, nor is MySQL a component of SingleStoreDB Cloud, and the SingleStoreDB Cloud and MySQL servers do not share any code. The SingleStoreDB Cloud server includes its own storage engine and SQL-based execution engine built around scalable distributed execution, lock-free data structures, and machine code generation.

Users use MySQL client software to connect to the SingleStoreDB Cloud server. SingleStoreDB Cloud uses the same wire protocol as MySQL and supports similar SQL syntax as MySQL for compatibility with MySQL client software.

Is SingleStoreDB Cloud vulnerable to MySQL server security issues?

No. The SingleStoreDB Cloud and MySQL servers are separate database engines which do not share any code, so security issues in the MySQL server are not applicable to SingleStoreDB Cloud.

SingleStoreDB Cloud implements the MySQL wire protocol in order to provide compatibility with MySQL client software. A part of this compatibility involves reporting a MySQL version number as described above. As a result of this, numerous third-party security scanners that use the reported version number as a vulnerability marker report false positives, as they’re looking at a version number, not at the actual presence of a vulnerability. Our engineering team as well as a third-party security analysis have confirmed that SingleStoreDB Cloud is not susceptible to these MySQL vulnerabilities.

Is SingleStoreDB Cloud a row-based or column-based store?

SingleStoreDB Cloud provides both in-memory row-based and on-disk column-based stores.

The in-memory row store:

  • Works best for mixed transactional and analytical workloads

  • Provides low latency and highly concurrent reads and writes of individual rows as well as sophisticated analytical SQL queries

  • Supports PRIMARY and UNIQUE keys

  • Supports geospatial indexes

  • Has longer recovery times (as the entire table needs to be loaded into memory)

The on-disk column store:

  • Works best for analytical workloads

  • Allows tables larger than the amount of available RAM in the workspace

  • Uses compression (which lowers disk usage and accelerates replication)

  • Provides fast and efficient scans of large datasets

  • Provides sorted columnstore indexes

  • Is optimized for batch UPDATE and DELETE queries

  • Requires more expensive query compilation (as compared to the row store)

How does SingleStoreDB Cloud’s in-memory lock-free storage engine work?

SingleStoreDB Cloud’s storage engine uses multi-version concurrency control with lock-free skip lists and lock-free hash tables which allow highly concurrent reads and writes at very high throughput. Reads in SingleStoreDB Cloud are never blocked, but updates to the same row can conflict with logical locks.

What is the advantage of SingleStoreDB Cloud over traditional databases like Oracle, SQL Server or MySQL with data in a ramdisk or large buffer pools?

Two common techniques for leveraging large amounts of memory in traditional databases are storing data files on a ramdisk or running a disk-based storage engine with a large buffer pool. For example, MySQL performs much better with InnoDB configured to use a large buffer pool.

While running an existing storage engine like InnoDB in memory can alleviate some of the bottlenecks involved with disk, SingleStoreDB Cloud has four distinguishing memory-optimized features that enable it to perform significantly better than disk-based storage engines running in memory:

  • SingleStoreDB Cloud is a distributed scale-out system. SingleStoreDB Cloud scales to thousands of machines on commodity hardware.

  • No buffer pool. Traditional databases manage a global buffer pool since they assume that the dataset can’t fit into memory. The buffer pool is a resource shared across all databases and all tables, which creates significant contention.

  • Lock-free data structures. SingleStoreDB Cloud uses memory-optimized, lock-free skip lists and hash tables as its indexes. Unlike B+ Trees, these data structures are designed from the ground up to be fast in memory.

  • Code generation. Lock-free data structures are so fast that dynamic SQL interpretation quickly becomes the limiting factor for query execution. With code generation, SingleStoreDB Cloud compiles SQL down to native code for maximum performance.

What is the advantage of SingleStoreDB Cloud over other distributed databases?

  • Full SQL. SingleStoreDB Cloud supports full SQL and transactional semantics.

  • Storage pyramid. SingleStoreDB Cloud combines row and column store engines tuned for memory and flash storage.

  • Scales on commodity hardware. SingleStoreDB Cloud does not require exotic hardware and can run on-premises or in the Cloud.

  • Enterprise ready. SingleStoreDB Cloud supports a large number of enterprise security and manageability features.

What is SingleStoreDB Cloud not for?

SingleStoreDB Cloud excels at real-time and high throughput query use cases. It is a general purpose database for running both transactional and analytic workloads. However, there are use cases which SingleStoreDB Cloud is not designed to run. Some of these are listed below:

  • Object store.SingleStoreDB Cloud is not designed to be a blob store. It is designed for high value data that is structured or semi-structured and ready to query. SingleStoreDB Cloud has open-source connectors for integrating with a variety of object stores, including Amazon S3 and Hadoop File System (HDFS).

  • In-process database.SingleStoreDB Cloud is not run as a library or in-process with an application. SingleStoreDB Cloud is a distributed database which runs in separate processes from the application, and applications connect to SingleStoreDB Cloud via a client driver.

How does SingleStoreDB Cloud differ from the "Self-Managed" version of SingleStore?

SingleStoreDB Cloud offers the same capabilities, including the ingest and query performance, scalability, and resiliency available in our self-managed software, but without having to worry about installation or workspace administration.

What services are provided in the "Managed-Service"?

SingleStore automatically provisions infrastructure, deploys and configures workspace software, maintains availability, provides scalability, performs backups, and handles software upgrades including SingleStore, operating system, and system software.

How do I know how many units I'll need?

To give you the most accurate information on sizing, contact us to discuss your schemas, queries, and tables together. Request a quote.

Can I use my SingleStore self-managed license in the cloud?

Customers with existing self-managed licenses can not apply licenses or contracts to SingleStoreDB Cloud. Contact your sales representative for more details.

The region I need isn’t available

We’re currently working on adding more regions, but if you need a specific region please contact us to make it available.

Will I incur any network data transfer charges?

There is no data ingress cost for SingleStoreDB Cloud but you may incur a charge from your Cloud Service Provider (CSP). For data egress, SingleStoreDB Cloud includes up to 1TB of data transfer. Anything above that will be charged based on rates set by the cloud provider selected.

What type of support is provided?

All SingleStoreDB Cloud customers benefit from Standard Support by default and can opt for higher Support tiers. Our infrastructure is actively monitored 24x7 to guarantee service and workspace availability.

Refer to the Support FAQ for more information.

I've explored SingleStoreDB Cloud in the free trial and now want to POC a larger workspace. How do I do that?

Contact us to learn more about your use case.

Last modified: January 10, 2023

Was this article helpful?