- 1. Objective
- 2. Relational Databases
- 3. Non-relational Databases
- 4. High‑speed cache (Redis)
- 5. Data Migration
To help professionals understand the differences and commonalities between the two, the database services provided by AWS and Alibaba Cloud are compared in this document. Whether you plan to migrate from AWS to Alibaba Cloud, or you plan to use both AWS and Alibaba Cloud in a multi-cloud model, this document will help you understand Alibaba Cloud’s database services.
Alibaba Cloud provides database services in various types. In each service type, different and unique products are provided. This document will focus on comparing the important service types between Alibaba Cloud and AWS as show in the table below.
|Service Type||AWS Product||Alibaba Cloud Product|
|Relational Databases||Amazon RDS ; Amazon Aurora||ApsaraDB for RDS ; DRDS ; ApsaraDB for POLARDB (in public beta)|
|NoSQL||Amazon DynamoDB||ApsaraDB for MongoDB ; ApsaraDB for HBase|
|Caching||Amazon ElasticCache||ApsaraDB for Redis ; ApsaraDB for Memcache|
|Hybrid analytic database||Amazon Redshift||HybridDB|
|Searching and time series database||N/A||HiTSDB(in public beta)|
|Database services||Aws Database Migragion Service||DTS|
2. Relational Databases
Alibaba Cloud RDS
Alibaba Cloud Relational Database Service(RDS) ensures you do not have data lossage. It is easier for you to manage, operate, and extend relational databases. Currently Alibaba Cloud supports relational database services of MySQL, SQL Server, PostgreSQL, PPAS (PostgreSQL Advanced Edition, compatible with Oracle) protocols. Each RDS has two physical nodes for master-slave hot standby. You can customize the access IP address whitelist, prevent DDoS attacks and get warning of SQL injections. Compared to your self-built databases, RDS has advantages such as low cost, high efficiency, high reliability, flexibility, and ease of use. RDS can help you solve time-consuming database management tasks and allows you to focus more on your business.
Alibaba Cloud RDS is currently provided in 18 regions including Qingdao, Hangzhou, Beijing, Hong Kong, Shenzhen, Silicon Valley, Singapore, Germany, Japan, Dubai, and India.
Amazon Relational Database Service (Amazon RDS) allows you easily to configure, operate, and extend relational databases on the cloud. It can provide economical and practical scalable capacity while automatically performing time-consuming management tasks. This allows you to focus on applications so as to provide them with the required high performance, high availability, security, and compatibility. AWS RDS supports MySQL, Oracle, Microsoft SQL Server, PostgreSQL, and Amazon Aurora relational databases.
AWS RDS is provided in 18 regions including: California, Japan, India, Singapore, Beijing, Canada, London, São Paulo, and Germany.
2.1 Functional comparisonAlibaba Cloud RDS V.S. AWS RDSThe following table shows the comparison of the basic functions and terminologies of Alibaba Cloud RDS and AWS RDS
|Features||Sub-features||AWS RDS||Alibaba Cloud RDS|
|Compatibility||MySQL compatibility||Amazon Aurora is an enterprise relational database compatible with MySQL protocol||PPAS, perfectly compatible with Oracle and MySQL, and 100% compatible with MySQL syntax|
|VPC & Classic||VPC||VPC & Classic|
|Scalability||Highest configuration||Supports up to 32-core, 244 GBSupports up to 40,000 of IOPS and 16 TB of storage||Supports up to 64-core, 512 GBSupports up to 120,000 of IOPS and 3 TB of storage for high availability version|
|MySQL read-only instances||Supported||Supported|
|MySQL read/write splitting||N/A||Supported|
|Reliability||Data reliability (SLA)||99.9999%||99.9999%|
|Performance monitoring||Custom alerts||Supported||Supported|
|Diagnosis and optimization||Online log query||Supported||Supported|
|Data security: time point recovery||Supported||Supported|
|Access security||Encryption at Rest and in Transit/VPC isolation||SSL link encryption/TDE data encryption/IP whitelist/Anti-DDoS|
|Account security (avoid permission escalation)||Supported||Supported|
2.2 Functional Differences
AliCloud RDS MySQL supports the separation of read and write, that is, assigning the write operation to the key nodes, while assigning the read only operation to the read node chain. With automatic expansion, it can flexibly and efficiently support the scenario with varied peak value of read operations. In such application scenario as the e-business promotion activity (11.11, Black Friday), the customer may use the read and write separation to support the scenario with quick change and significant increase of peak value of inventory browsing operations (read operation) , without affecting the transaction sheet entry and inventory update operation on the key node (write operation) .
AliCloud RDS MySQL supports the audit on all the database operations. When any problem is detected, it can trace back to the error or malicious processing precisely, and realize security audit management which can only be offered by commercial database on the open source database. The application scenario includes meeting the database audit compliance requirement for financial and regulated industries.
With the master/slave architecture, when the master instance is unavailable, Alibaba Cloud RDS will be automatically migrated to the backup instance or slave instance. Data will be automatically synchronized on applications running on two instances in different zones so as to improve the availability. The data on the RDS server is built on the RAID, and the data backup is stored on the OSS. The RDS provides an automatic backup mechanism. Users can set a backup cycle and initiate backup at any time according to the service features. Local disaster recovery and remote disaster recovery mechanisms are also provided. Remote disaster recovery for MySQL Alibaba Cloud RDS is currently in public beta release.
AWS RDS zone deployment provides high availability and persistence for database instances. When configuring a multi-zone database instance, AWS RDS synchronously replicates the data to backup instances in other zones. AWS RDS uses AWS S3 storage for data backup. When a failure occurs, Amazon RDS will automatically replace the computing instance used for the deployment.
Alibaba Cloud RDS supports TLS 1.2 SSL protocol, and the data written to disk is encrypted. Alibaba Cloud ApsaraDB RDS also provides SQL auditing, so that you can perform real-time tracking accesses to and operations on the instance. Basic DDos protection is also provided to monitor the traffic of the network access point in real time. If an attack is identified, the source IP address will be cleaned or blacklisted. It supports whitelist IP configuration, which controls risks directly from the source, and intercepts SQL injections, brute-force attacks, and other types of database attacks.
Amazon RDS allows you to encrypt your database with a key that is managed through the AWS Key Management Service (KMS). On a database instance running with Amazon RDS encryption, Amazon RDS encrypts the data that is stored statically on the underlying storage with automatic backups, read-only replicas, and snapshots. Amazon RDS supports using SSL to protect transmitted data. Also, AWS recommends users to run database instances in VPC, as this allows them to isolate their database in their own virtual network and connect to their local IT infrastructure using industry-standard encrypted IPsec VPNs. Users can configure a firewall and control network access to database instances.
Alibaba Cloud RDS supports elasticity, you can scale the storage according to the real-time demands of your applications, which guarantees resource usage. A single Alibaba Cloud RDS instance has up to 20,000 of IOPS and 2 TB of storage. You can also upgrade memory and disk space based on your actual needs. RDS supports an instance of up to 64-core and 512 GB, and up to 120,000 of IOPS. 3 TB of storage are supported for high availability version. Up to 1,000 server IP addresses can be connected to Alibaba Cloud RDS instance. The risks are controlled directly from the source.
AWS RDS supports deployment of computing and memory resources up to 32-core and 244 GB. As content increases, other storage can be pre-configured, and up to 40,000 of IOPS and 16 TB of storage can be pre-configured for each database instance. For pre-configured IOPS storage, you need to pay for the configured resources no matter if t they are used within the month.
2.6 Ease of use
You can customize specifications through the Alibaba Cloud console or APIs. Along with the changes in the database pressure and data storage capacity, you can flexibly adjust the instance specification, and the RDS will not interrupt the data link service in the upgrade period. Alibaba Cloud is responsible for routine maintenance and management of the RDS, including but not limited to such work as hardware/software fault processing and database patch update, so as to ensure normal operation of the RDS. You can also independently add, delete, restart, backup, recover and do other management operations on database through the Alibaba Cloud console.
With AWS RDS, you can create instances through the console, APIs, and the AWS command line interface. You can also use the console to change database instance backup policies, and add, restart and delete databases. AWS RDS automates software patching to ensure that the relational database software used in the deployed project has the latest patches installed and is up to date.
Alibaba Cloud ApsaraDB offers different payment options to satisfy your individual needs. You can select Pay-As-You-Go or monthly subscription payment options. Alibaba Cloud RDS is charged based on the total storage used, the volume of data transferred, and the number of API requests. Storage and data transmission are linearly charged. The exact price is based on the customized plan, which you choose.
Amazon RDS is charged based on on-demand instances or reserved instances. Amazon RDS provides a variety of instance types for you so as to meet different relational database use cases. The exact price depends on the Amazon RDS database engine the you choose. View the price list.
3. Non-relational Databases
Alibaba Cloud MongoDB supports two deployment architectures: ReplicaSet and Sharding. ApsaraDB for MongoDB is fully compatible with the MongoDB protocol and can provide stable, reliable, and auto scaling database services. It also provides disaster recovery, backup, recovery, monitoring and alarm functions. It is widely used in Internet applications, IoT, games, finance, and other fields.
AWS DynamoDB is a fast and flexible NoSQL database service. It is a fully-hosted cloud database that supports document and key-value storage models. It has a flexible data model, reliable performance, and automatic throughput expansion capabilities, which allows it to be used in areas such as mobile, web, gaming, advertising computing, and the IoT.
3.1 Functional comparison
The following table compares the basic functions and terminologies of Alibaba Cloud MongoDB VS AWS DynamoDB.
|Product features||AWS DynamoDB||Alibaba Cloud MongoDB|
|Resource access management||Supported||Supported|
|Audit logs||Not Supported||Supported|
|Cloning and recovery||Not Supported||Supported|
3.2 High AvailabilityAlibaba Cloud MongoDB uses a three-node replica set high-availability architecture to provide extremely high service availability. The ApsaraDB for MongoDB service uses a three-node replica set high-availability architecture. The three data nodes are located on different physical servers and automatically synchronize data. The primary and secondary nodes provide services. When the primary node fails, the system automatically selects a new primary node. When the secondary node is unavailable, the standby node takes over the services.Amazon DynamoDB also has high availability, and can automatically synchronize data replicas between three data centers in a given AWS region. This helps protect your data, as it now will not be affected by individual machine failures or even individual data center crashes.
Alibaba Cloud MongoDB
Backup and recovery mechanisms: Automatically backs up data every day, providing a strong disaster tolerance capability. Data at any time point within the past seven days can be recovered for free to prevent data misoperations and minimize business loss.
VPC network isolation: Instances are deployed on a VPC built on the physical network using the OverLay technology, and the network isolation is performed at the TCP layer.
Anti-DDoS: Real-time monitoring of network access is enabled. The source IP address will be cleaned in the event of high-traffic attacks. If the cleaning turns out ineffective, malicious IP addresses will be redirected to a black hole.
Whitelist configuration: Supports a maximum of 1,000 white list rules and performs risk control from the access source.
Security auditing: MongoDB supports log auditing and update operations and slow query log auditing.
Resource access management: RAM system is introduced, which supports permission access control.
Backup and recovery mechanisms: For protecting and storing data, supports fully automatic on-demand backup, restore and time-point recovery. API backup and recovery operations are also supported.
- Identity verification:
- AWS account root user:
When you first create your AWS account, you initially use a single-point logon identity with full access to all AWS services and resources in your account.
- IAM user + IAM role:
IAM user is an identity in your AWS account that has specific custom permissions (for example, permission to create tables in DynamoDB).
IAM role is an IAM identity with specific permissions that can be created in your account. With an IAM role, you can obtain the temporary access key to AWS services and resources.
- AWS account root user:
Resource access management: Valid credentials are used to authenticate your own requests, while you must also have permissions to create or access Amazon DynamoDB resources.
Static encryption: AWS-hosted encryption keys stored in AWS Key Management Service (AWS KMS) are used to protect the data in Amazon DynamoDB.
3.4 Ease of use & Scalability
Alibaba cloud MongoDB provides instance information like CPU utilization, IOPS, number of connections, and disk space for real-time monitoring and early warning, so that you can understand the instance status at all times.
It provides a visual management platform, which performs high-frequency and high-risk operations, such as instance restart, backup, and data recovery, in a one-click manner. Perfect performance monitoring shares most of the operation and maintenance work.
It provides database kernel management, proactively performs upgrades and quickly repairs defects, which frees users from daily version management. It optimizes MongoDB parameter configuration and maximizes utilization of system resources.
ApsaraDB MongoDB supports auto scaling. You can change the configuration of your instance if the current configuration is too high or cannot meet the performance requirements of your application. The configuration change process is completely transparent and will not affect your business.
Amazon DynamoDB can display key operational metrics in the AWS management console. This service can also be integrated with Amazon CloudWatch so that you can view the request throughput and latency of each Amazon DynamoDB table and easily track their resource consumption.
AWS DynamoDB is fully hosted. You no longer need to worry about management tasks such as hardware or software pre-configuration, setting and configuration, software patching, reliable distributed cache clustering, or partitioning of data across multiple instances based on scaling requirements.
Through using DynamoDB Auto Scaling, resources can be extended or resized according to the actual usage by the database. Amazon DynamoDB supports cross-region replication and can automatically replicate DynamoDB tables across AWS regions. Globally distributed applications can be built using cross-region replication to reduce data access delays and improve traffic management.
Three Database Engines for different application needs
- TerarkDB has a high compression ratio and is suitable for archiving historical data at a low cost.
- RocksDB is designed for high concurrent reads/writes, such as processing a large amount of historical documents, requiring high concurrent IO.
- WiredTiger is more balanced, and is suitable for most applications.
- Commercial-grade audit and recovery capability on open-source database. Monitors and records all database modifications, such as ADD, DELETE, and MODIFY operations. Accurately recover incremental data when needed.
Intelligent index recommendation:
- Provide users with real-time index optimization suggestions and comprehensive analysis reports in the console to improve database management efficiency.
Alibaba Cloud ApsaraDB for MongoDB offers different payment options to suit your individual needs. You can select Pay-As-You-Go or monthly subscription payment options. Instance price and storage price are included. The exact price is based on the customized plan which the user choose.See Pricing for more information
DynamoDB only charges for the pre-configured resources, and can pre-configure resources to achieve the target usage rate of read and write capacity, and then automatically expand the your capacity according to usage, and charge according to the usage. Detailed pricing information.
4. High‑speed cache (Redis)
Redis is an open source in-memory database structure service that can be used as a database, high-speed cache, and message queue proxy. It is a key-value storage system that supports strings, lists, collections, and other data types.
Alibaba Cloud ApsaraDB for Redis is compatible with the open source Redis protocol standard and provides a persistent in-memory database. At the same time, ApsaraDB for Redis provides network security on the cloud, which is scalable and maintenance-free. It provides master/slave replication and multi-AZ deployment. It enables better data availability.
AWS Redis is hosted on Amazon ElastiCache and is also compatible with the open source Redis protocol. It supports horizontal scaling and vertical scaling to meet changing application requirements.
4.1 Functional comparison
The following table compares the basic functions and terminologies of Alibaba Cloud Redis VS AWS ElastiCache Redis
|Product features||AWS ElastiCache Redis||Alibaba Cloud Reids|
|Security encryption||Dynamic and static encryption||Whitelist and SSL encryption|
|SLA||Master node + multiple read-only replica, automatic switch||Dual-replica, high availability, second-level switch|
|Performance||Unknown||Cluster: 1 million QPS Dual-replica: 80,000-100,000 QPS|
|Specification||Optimization: 60 GB, 128 GB, 203 GB, 470 GB Standard: 512 MB, 2 GB, 4 GB, 8 GB, 16 GB, 32 GB, 64 GB, 156 GB||Cluster specifications: 16 GB, 32 GB, 64 GB, 128 GB, 256 GB, 512 GB Dual-replica specification: 256 GB, 1 GB, 2 GB, 4 GB, 8 GB, 16 GB, 32 GB|
|Compatibility||Compatible with open source Redis data formats, Redis APIs, and can be used with Redis clients.||Compatible with open source Redis protocol, providing Redis hosting.Compatible with various existing functions + various customers.|
4.2 Functional Differences
AliCloud Redis supports the separation of read and write, that is, assigning the write operation to the key nodes, while assigning the read only operation to the read node chain. With automatic expansion, it can flexibly and efficiently support the scenario with varied peak value of read operations. In such application scenario as the e-business promotion activity (11.11, Black Friday), the customer may use the read and write separation to support the scenario with quick change and significant increase of peak value of inventory browsing operations (read operation) , without affecting the transaction sheet entry and inventory update operation on the key node (write operation) .
Alibaba Cloud Redis has very high availability, and dual-replica and cluster version instances have a master/slave node architecture. This prevents service interruption caused by SPOF. It automatically detects node failures and replaces faulty nodes, enabling second-level switch after failure. It also supports automatic detection and recovery of hardware failures.
Amazon ElastiCache’s Redis cluster mode provides high availability through automatic failover support, which is achieved by detecting master node failures and promoting replica to the master node with minimal impact.
Alibaba Cloud Redis provides an automatic backup feature that ensures persistent data storage using a memory and hard disk storage model. It has a high data disaster recovery capability, and supports one-click data recovery, anti-DDoS, and real-time detection and removal of large-volume attacks. It also supports a whitelist configuration of over 1000 IP addresses. Kernel optimization is also performed for the Redis source code, and security vulnerabilities are repaired. It prevents memory overflow.
Amazon ElastiCache for Redis, in combination with Amazon VPC, isolates the cluster within the user-selected range of IP addresses, and applications connected through which control access to the cluster through cache security group. It supports continuous monitoring of known security vulnerabilities in open source Redis, operating systems, and hardware, applies security-related patches in a timely manner, and provides dynamic and static encryption and Redis AUTH for secure inter-node communications.
4.5 Ease of use/O&M
Alibaba Cloud Redis is compatible with open source Redis commands, and the Redis client can easily establish a connection with ApsaraDB for Redis to perform data operations. It provides instance information such as CPU, number of connections, and disk space for real-time monitoring and alarm, and supports customized monitoring and alarm configuration functions. The console supports data backup and recovery functions. The database kernel version management can actively upgrade and quickly fix defects, enabling easy O&M.
Amazon ElastiCache based on Redis is a Web service that manages, monitors, and runs Redis nodes and is compatible with the open source Redis protocol. You can use ElastiCache clusters to create snapshots for subsequent recovery of Redis clusters.
ApsaraDB for Redis supports product configurations with multiple memory specifications. You can freely upgrade the memory specification to fit their business volume.It supports flexible expansion of the storage and throughput performance of the database system under the cluster architecture; the expansion is smooth and has no impact on the services provided.
In Amazon ElastiCache for Redis, as applications continue to increase, you can easily expand their Redis data. It supports online cluster scaling to expand and reduce Redis clusters without downtime, which automatically adapts to changing needs. It is used for expanding read capacity.
Alibaba Cloud Redis supports prepayment and Pay-As-You-Go. ApsaraDB for Redis only charges an instance type fee when you create an instance. No additional fees are charged. The intranet traffic generated by ApsaraDB for Redis instances is free of charge. That is, the data transmitted between ECS and ApsaraDB for Redis is free of charge.
Similarly, Elasticache for Redis supports both prepayment and Pay-As-You-Go. Elasticache for Redis charges not only the cost of the instances, but also the additional backup storage. Data transfer between the same zone is free, while data transfer between EC2 and Elasticache nodes across different zones in the same region will be charged.
5 Data Migration
Like the AWS Database Migration Service, Alibaba Cloud Data Transmission (DTS) is a data stream service provided by Alibaba Cloud that supports data exchanges between RDBMS (relational database), NoSQL, OLAP, and other data sources. It provides data transmission capabilities like data migration, real-time data subscription, and real-time data synchronization. With DTS, you can smoothly complete data migration while the source database continues normal operations. In addition, DTS also supports real-time subscription of incremental RDS instance data. Through data subscription, you can achieve service scenarios such as lightweight cache updates, asynchronous message notification, and customized data synchronization.
5.1 Functional comparison
The following table compares the basic functions and terminologies of Alibaba Cloud DTS with AWS DMS
|Functions||AWS DMS||Alibaba Cloud DTS|
|Supported database types||10||6|
|Resource access management||Not Supported||Supported|
|Data subscription||Not Supported||Supported|
To reduce the impact of data migration on the application, Alibaba Cloud DTS supports Migration Without Stopping Services. With the Migration without Stopping Services, the application downtime for data migration can be reduced to minutes. At the same time DTS will continuously monitor all tasks in the system; if any task fails, it will restart the task from the breakpoint, and service will not be impacted. The underlying structure of DTS is a service cluster. Whenever a node in the cluster fails or goes faulty, the control center initiates the failover of all the tasks on the node to another node in seconds, ensuring a link stability of up to 99.95%.DTS provides 24 x 7 data accuracy validation for some transmission links to quickly locate and correct any data that is inaccurate. This ensures reliable data transmission. Also, each DTS module adopts a secure transmission protocol and secure token authentication. It also has an automatic breakpoint transmission mechanism to ensure the reliability of data transmission.DTS supports RAM main and sub-account systems to allow you to create and manage DTS instances with a sub-account leading to dramatic increase in business security.
The AWS Database Migration Service is highly recoverable and self-healing. It can continuously monitor source and target databases, network connectivity, and replicate instances. In the case of an outage, this service automatically restarts the migration process and continues migrating from where it left off. The DMS can support reading and writing encrypted databases and can replicate data by encrypting data sources.
5.3 Ease of use
Without the deployment, after the purchase, the transmission task can be activated and started through configuration. DTS provides a visual management interface. The DTS console shows the link transmission status and progress, transmission performance, and other information for you to easily manage their own transmission links. To solve link interruptions from network or system exceptions, DTS provides resumable data transfer feature for links and regularly monitors the states of all links state. Once a link exception is found, it tries to repair or restart it automatically. If you are required to get involved with the repairs, you can initiate the link restart on the console after the link is repaired.
AWS DMS also requires no drivers or applications to be installed. In the AWS Management Console, it takes only a few minutes to set up a migration task. You can define the parameters for the DMS to perform the migration in the migration task. This includes setting up the connection to the source and target databases and selecting the replication instance to perform the migration process. When the migration begins, the DMS manages all complexities of the migration process, including automatically replicating the data changes in the source database during the migration. It also provides an end-to-end view of the data replication process, including diagnostics and performance data for each node in the replication queue.
DTS supports multiple transmission modes, including data migration, real-time data subscription and real-time data synchronization. The real-time data subscription and real-time data synchronization are both real-time data transmission methods.The real-time data synchronization supports one-way and two-way synchronization between two data sources, enabling application scenarios such as remote data disaster recovery, remote multiple active standbys (units), application proximity access, query report streaming, and real-time data warehouse.
DMS also supports data migration and data synchronization. Data subscription is not yet supported, but the AWS Schema Conversion Tool can automatically convert the source database architecture and most of the database code (including views, stored procedures, and functions) to a format compatible with the target database, so that the migration of heterogeneous databases can be predicted.The DMS does not recommend using the two-way replication feature. When the source node is different from the target node, the DMS will ensure the transaction integrity. However, for a table where the update from the source to the target is logically independent, then two-way replication is the best choice.
Alibaba Cloud Data Transmission Service (DTS) provides three functions: data migration, data synchronization, and data subscription. Each function has different billing methods.Data migration: Only supports Pay-As-You-Go. The configuration expense and public network traffic fee are billed. The configuration expense is billed only for the normal running duration of an incremental migration.Data subscription: Supports both subscription and Pay-As-You-Go. The configuration expense of the subscription channel, data traffic fee, and public network traffic fee are billed.Data synchronization: Supports both subscription and Pay-As-You-Go. Only the configuration expenses of the synchronization operation are billed.Currently, these three functions only charge configuration costs, data traffic and public network traffic are not charged. The exact price is based on the customized plan, which you choose. See Pricing for more information.
For AWS Database Migration Service, you only need to pay for the computing resources and additional log storage space used during the migration.On-demand instance payment: For on-demand instances, you only pay for database migration capacity on an hourly basis without having to prepay long-term costs.
Storage cost: USD 0.115 per month per GB for general (SSD) storage (single-zone)
USD 0.230 per month per GB (multi-zone)
Data transmission: All data passed into the AWS Database Migration Service is free, and direct data transmission between DMS, AWS RDS Database, and AWS EC2 instances in the same zone is also free. See Pricing for more information