PolarDB for MySQL provides the following editions: Single Node Edition, Cluster Edition, X-Engine Edition, and Multi-master Cluster (Database/Table) Edition. This topic describes the architectures, benefits, and the typical usage scenarios of these editions.

The following table compares the typical usage scenarios of different editions.
EditionDescriptionScenario
Single Node Edition
Single Node Edition uses burstable specifications. The shared computing resource pool improves resource usage. No database proxies are used in this architecture, which saves resource costs.
  • Personal learning
  • Small-sized websites
  • Starter databases for small and medium enterprises
Cluster Edition
Cluster Edition is developed based on an architecture in which computing is decoupled from storage. It provides faster scaling, larger storage capacity, and lower replication latency.
  • Production databases for large and medium enterprises
  • Databases used in industries such as Internet, IoT, e-commerce, logistics, and gaming
  • Core databases in the finance, securities, and insurance industries that require high data security
X-Engine Edition
The X-Engine Edition of PolarDB for MySQL uses X-Engine as the default storage engine. It provides a large storage capacity and a high compression ratio, allowing you to store archived data at a low cost.
  • Requires a cold data storage pool for self-managed databases and cloud databases.
  • Requires a relational database service that is applicable to scenarios in which a large volume of data needs to be written but the data is accessed at a low frequency, such as monitoring logs.
Multi-master Cluster (Database/Table) Edition
Multi-master Cluster (Database/Table) Edition is developed based on a multi-master architecture that contains multiple primary and read-only nodes. All data in a cluster is stored in PolarStore, a shared storage pool. Each primary node uses PolarFileSystem to access data in PolarStore. You can access all nodes in a cluster by using the cluster endpoint. PolarProxy automatically forwards SQL statements to the required primary node.
  • Multi-master Cluster (Database/Table) Edition is suitable for high-concurrency read and write scenarios such as multi-tenancy, gaming, and e-commerce.

Single Node Edition

PolarDB for MySQL Single Node Edition uses burstable specifications. The shared computing resource pool delivers high resource usage. No database proxies are used in the architecture of Single Node Edition, which saves resource costs. Like Cluster Edition, PolarDB for MySQL Single Node Edition supports dynamic expansion of storage capacity without affecting your business. PolarDB for MySQL Single Node Edition does not require log synchronization. This reduces the performance overhead that is caused when redo logs are parsed or synchronized.

Supported engine versions

Single Node Edition supports the following engine versions: PolarDB for MySQL 5.6, 5.7, and 8.0.

Scenarios

  • Personal learning
  • Small-sized websites
  • Starter databases for small and medium enterprises

Node specifications and pricing

Single Node Edition supports only the node specification of 4 cores and 8 GB of memory (Burstable). For more information, see Billable items.

Cluster Edition

Cluster Edition is developed based on an architecture in which computing is decoupled from storage. It provides faster scaling, larger storage capacity, and lower replication latency.
  • One primary node and multiple read-only nodes

    PolarDB uses a distributed cluster-based architecture. A Cluster Edition cluster consists of a primary node and 1 to 15 read-only. The primary node processes read and write requests, and the read-only nodes process only read requests. Cluster Edition uses the active-active failover method between the primary node and read-only nodes. This method ensures high availability of databases.

  • PolarStore

    Multiple compute nodes share one set of data, eliminating the need for each compute node to maintain a copy of the data. This significantly reduces storage costs. Cluster Edition uses a distributed storage and file system. This lets you seamlessly expand the storage capacity of your databases to hundreds of terabytes, without being restricted by the capabilities of individual database servers.

  • Compute and storage decoupling

    Cluster Edition decouples computing from storage to let you easily scale clusters as your business grows. Compute nodes store only metadata, while data files and redo logs are stored in PolarStore. Only metadata that is related to redo logs needs to be synchronized among compute nodes. This reduces the replication latency between the primary node and read-only nodes. If the primary node is faulty, a read-only node can quickly take over as the primary node.

  • Read/write splitting

    Cluster Edition comes with the read/write splitting feature that is implemented based on PolarProxy, so that it can perform transparent, high-availability, and adaptive load balancing. The read/write splitting feature automatically forwards SQL requests to each node of Cluster Edition based on cluster endpoints, allowing clusters to process large amounts of concurrent requests in an aggregated manner. For more information, see Read/write splitting.

  • High-speed network connections

    Data is transmitted among compute nodes and storage nodes of a cluster by using the Remote Direct Memory Access (RDMA) protocol over high-speed networks. I/O is no longer a limiting factor to database performance.

  • Data reliability and consistency

    The data on storage nodes has multiple replicas. This ensures data reliability. In addition, the Parallel-Raft protocol is used to ensure data consistency among these replicas.

Architecture

The following figure shows the architecture of Cluster Edition.Architecture

Supported engine versions

Cluster Edition supports the following engine versions: PolarDB for MySQL 5.6, 5.7, and 8.0.

Scenarios

  • Production databases for large and medium enterprises
  • Databases used in industries such as the Internet, IoT, e-commerce, logistics, and gaming
  • Core databases in the finance, securities, and insurance industries that require high data security

Node specifications and pricing

Cluster Edition supports Dedicated and General-purpose specifications. For more information, see Billable items.

X-Engine Edition

PolarDB for MySQL X-Engine Edition is optimal for archiving and accessing cold data. It provides features that are developed based on the following technological innovations and breakthroughs:

  • X-Engine is developed by Alibaba Cloud based on the log-structured merge-tree (LSM tree) architecture. It provides powerful data compression capabilities that allow you to use archive databases at a low cost. X-Engine uses the LSM tree and the Zstandard (ZSTD) data compression algorithm to increase the data compression ratio. Compared with InnoDB, X-Engine can reduce storage usage by up to 70%. For more information about X-Engine, see Introduction to X-Engine. X-Engine Edition has limits, especially in terms of the compatibility with MySQL. For more information, see Limits.
  • PolarDB for MySQL supports online expansion of the storage capacity based on shared distributed storage. X-Engine Edition connects computing resources and storage resources over a high-speed network and transmits data by using the remote direct memory access (RDMA) protocol. This eliminates the bottleneck of I/O performance. X-Engine integrated in PolarDB for MySQL provides these benefits.

    X-Engine is integrated in PolarDB for MySQL by using the following technological innovations. This enables PolarDB for MySQL to run in a dual-engine architecture.

    • The write-ahead logging (WAL) streams of X-Engine are combined with the redo log streams of InnoDB. This way, the same log streams and transmission channels are used to support InnoDB and X-Engine. The management logic and the logic of interaction with the shared storage remain unchanged. This architecture can be reused by other engines that are introduced later.
    • The I/O module of X-Engine is adapted to PolarFileSystem of PolarDB for MySQL InnoDB. This ensures that InnoDB and X-Engine use the same distributed storage. Backups are accelerated based on the underlying distributed storage.

Architecture

A X-Engine Edition cluster consists of one primary node and at least one read-only node based on shared storage. The primary node handles read and write requests. The read-only nodes handle only read requests. The following figure shows the architecture of the X-Engine Edition.Multi-node architecture

Supported engine versions

Only PolarDB for MySQL 8.0 is supported.

Benefits

  • X-Engine provides a large storage capacity. With X-Engine's highly efficient compression algorithm, 500 TB of raw data can be compressed into only 200 TB. X-Engine uses a serverless architecture so that the storage capacity can automatically increase as the data volume increases. This way, you do not need to specify the storage capacity when you purchase the cluster. You are charged for the actual storage capacity that you use.
  • PolarDB for MySQL X-Engine Edition supports the open source MySQL protocols. Unlike NoSQL services such as HBase, you can connect your applications to both databases for hot data and X-Engine Edition without modifying your applications.
  • The underlying distributed storage of PolarDB for MySQL allows X-Engine to back up a large volume of data in a short period. The backup files can be uploaded to and permanently stored in low-cost storage, such as Object Storage Service (OSS).
  • The multi-node architecture of X-Engine Edition uses X-Engine, which provides powerful data compression capabilities to reduce storage costs and ensure high availability of clusters. When the primary node in a cluster fails, the cluster can automatically fail over to a read-only node. Then, the read-only node serves as the new primary node. This ensures a service availability at 99.99% and higher.

Scenarios

PolarDB for MySQL X-Engine Edition provides a large storage capacity. You can use it to store the historical data of multiple services to implement centralized data management. X-Engine is suitable for the following scenarios:

  • PolarDB for MySQL X-Engine Edition is used to store cold data of self-managed relational databases, such as MySQL, TiDB, PostgreSQL, and SQL Server.
  • PolarDB for MySQL X-Engine Edition is used to archive data from ApsaraDB RDS for MySQL or PolarDB for MySQL. You can migrate the historical data that is not frequently accessed to PolarDB for MySQL X-Engine. This way, the storage space of the source databases can be released to reduce costs and improve performance.
  • PolarDB for MySQL X-Engine Edition is used as a relational database service that provides a large storage capacity. This is applicable to scenarios in which a large volume of data needs to be written but the data is accessed at a low frequency, such as monitoring logs.

Node specifications and pricing

X-Engine Edition supports General-purpose and Dedicated specifications. For more information, see Specifications of compute nodes.

For more information about billing rules for X-Engine Edition, see Billing rules of compute nodes.

Multi-master Cluster (Database/Table) Edition

Multi-master Cluster (Database/Table) Edition provides PolarDB for MySQL, which is developed based on a multi-master architecture that contains multiple primary nodes and read-only nodes to improve the concurrent read and write capabilities.

Architecture

The following figure shows the architecture of Multi-master Cluster (Database/Table) Edition.Multi-master cluster (database/table) architecture

All data files in a cluster are stored in PolarStore. Each primary node uses PolarFileSystem to access data in PolarStore. You can access all nodes in a cluster by using the cluster endpoint. The database proxy automatically forwards SQL statements to the required primary node.

Supported engine versions

Multi-master Cluster (Database/Table) Edition supports only PolarDB for MySQL 8.0.

Benefits

  • Write scale-out in seconds

    Concurrent data writes to databases on up to 32 compute nodes are supported. Databases can be scheduled to different compute nodes within seconds, improving the overall read/write capabilities of clusters for concurrent requests.

  • Multi-master backup (no secondary nodes)

    If a primary node fails, failover to another low-traffic primary node can be completed within seconds. The absence of secondary nodes saves the resources occupied specially for failover, which can halve your TCO.

  • Global read-only node

    You can read data written to all primary nodes from the global read-only node to execute requests that involve multiple database.

Scenarios

Multi-master Cluster (Database/Table) Edition is suitable for high-concurrency read and write scenarios such as multi-tenancy, gaming, and e-commerce.
  • Multitenancy in SaaS: high concurrency and load balancing between tenants

    Multi-master Cluster (Database/Table) Edition can implement load balancing by switching over databases of tenants across different primary nodes or adding new primary nodes to handle traffic bursts.

  • Global gaming server and e-commerce scenarios: scaling in minutes to cater to fast-growing business

    Multi-master Cluster (Database/Table) Edition supports scale-out in seconds and provide the transparent routing feature. They can be can be combined with the middleware or business-based database and table sharding solution to shorten the scale-out process from days to minutes.

  • Gaming applications deployed on different servers: better performance and scalability

    When a game is attracting large numbers of players, databases can be switched over to new primary nodes to implement load balancing. When the game is past its prime, databases can be aggregated to a few primary nodes to reduce operating costs.

Node specifications and pricing

Multi-master Cluster (Database/Table) Edition supports Dedicated and General-purpose specifications. For more information, see Specifications of compute nodes.

For more information about the billing of Multi-master Cluster (Database/Table) Edition, see Billable items.