Updated on 2023-04-23 GMT+08:00

Core Functions

Table 1 DDM main functions

Function

Description

Horizontal sharding

Select a sharding key when creating a logical table. DDM will generate a sharding rule and horizontally shard data.

NOTE:

A sharding key is a table field used to generate a route during horizontal partitioning of logical tables. After specifying a table field, you can select a date function or manually enter date function (field name). The table field must be date, datetime, or timestamp. Select a date function if data needs to be redistributed by year, month, day, week, or some combinations thereof.

Flexible shard configuration

DDM supports both compute and storage scaling. You can add nodes to a DDM instance or scale up its node class. Alternatively, increase shards or data nodes to distribute data from one large table to multiple tables or scale out storage resources. Compute scaling is undetectable to your applications. Storage scaling minimizes service interruption to seconds.

Distributed transactions

DDM processes three types of transactions, including single-shard, FREE, and Extended Architecture (XA).

  • Single-shard: Transactions cannot be committed across shards.
  • FREE: Transactions are committed across shards. A transaction is not rolled back when it fails to be executed by any shard, causing data inconsistency.
  • XA: Transactions are committed in two phases. If a transaction fails to be executed by any shard, all work done will be rolled back to ensure data consistency.

Data import and export

External data can be imported into DDM instances to help you migrate databases to the cloud, and DDM instance data can be exported based on service requirements.

For details, see Data Migration.

Highly compatible SQL syntax

DDM is highly compatible with the MySQL licenses and syntax.

Read and write splitting

Read and write requests can be split without modifying the application code, and this is totally transparent to applications. You only need to create read replicas for a MySQL instance associated with your DDM instance and configure a read policy, and a large number of concurrent requests can read data from those read replicas.

Global sequence

DDM allows you to use globally unique, distributed, and ascending SNs as primary or unique keys or to meet your requirements in specific scenarios.

Online monitoring

DDM monitors reads, writes, and slow query logs of your DDM instance on the console, helping you detect resource and performance bottlenecks as fast as possible.

DDM console

The DDM console enables you to manage and maintain DDM instances, schemas, and accounts.

Related Services

  • VPC

    DDM instances are deployed in an isolated VPC and you can configure IP addresses and bandwidth for accessing these DDM instances and use a security group to control access to them.

  • ECS

    You can access your DDM instance through an ECS.

  • Relational Database Service (RDS)

    After you buy a DDM instance, you can associate it with RDS for MySQL instances in the same VPC to obtain separated storage resources.

  • GaussDB(for MySQL)

    After you buy a DDM instance, you can associate it with GaussDB(for MySQL) instances in the same VPC to obtain separated storage resources.

  • Cloud Eye

    Cloud Eye monitors DDM metrics and sends notifications in the event of an alarm or event.

  • Cloud Trace Service (CTS)

    CTS records operations on your DDM resources for later query, audit, and backtrack.

  • Elastic Load Balance (ELB)

    ELB distributes incoming traffic to multiple backend servers based on the forwarding policy to balance workloads. So, it can expand external service capabilities of DDM and eliminate single points of failure (SPOFs) to improve service availability.

  • Data Admin Service (DAS)

    DAS provides a visualized GUI interface for you to connect to and manage cloud databases.

Figure 1 Relationship among DDM, VPC, ECS, and data nodes