- What's New
- Function Overview
- Product Bulletin
-
Service Overview
- Infographics for Comparing DCS for Redis with Open-Source Redis
- What Is DCS?
- Application Scenarios
- Security
- DCS Instance Types
- DCS Instance Specifications
-
Command Compatibility
- Commands Supported and Disabled by DCS for Redis 4.0
- Commands Supported and Disabled by DCS for Redis 5.0
- Commands Supported and Disabled by DCS for Redis 6.0
- Commands Supported and Disabled in Web CLI
- Command Restrictions
- Other Command Usage Restrictions
- Commands Supported and Disabled by DCS for Redis 3.0 (Discontinued)
- Commands Supported and Disabled by DCS for Memcached (Discontinued)
- Disaster Recovery and Multi-Active Solution
- Cache Engine Differences
- Comparing DCS and Open-Source Cache Services
- Notes and Constraints
- Billing
- Permissions Management
- Basic Concepts
- Related Services
- Billing
- Getting Started
-
User Guide
- Process of Using DCS
- Creating a User and Granting DCS Permissions
- Buying a DCS Redis Instance
-
Accessing a DCS Redis Instance
- Configuring Redis Network Connections
- Controlling DCS Redis Access
-
Connecting to Redis on a Client
- Connecting to Redis on redis-cli
- Connecting to Redis on Jedis (Java)
- Connecting to Redis on Lettuce (Java)
- Connecting to Redis on Redisson (Java)
- Connecting to Redis on redis-py (Python)
- Connecting to Redis on go-redis (Go)
- Connecting to Redis on hiredis (C++)
- Connecting to Redis on StackExchange.Redis (C#)
- Connecting to Redis on phpredis (PHP)
- Connecting to Redis on predis (PHP)
- Connecting to Redis on ioredis (Node.js)
- Connecting to Redis on the Console
- Public Access to a DCS Redis 3.0 Instance (Discontinued)
- Accessing a DCS Memcached Instance (Discontinued)
-
Managing Instances
- Viewing and Modifying Basic Settings of a DCS Instance
- Viewing DCS Background Tasks
- Viewing Client Connection Information of a DCS Instance
- Modifying Configuration Parameters of a DCS Instance
- Configuring DCS Instance Parameter Templates
- Configuring DCS Instance Tags
- Renaming Critical Commands for DCS Instances
- Exporting a DCS Instance List
- Performing a Master/Standby Switchover for a DCS Instance
- Managing DCS Instance Shards and Replicas
- Backing Up or Restoring Instance Data
- Changing an Instance
- Managing Lifecycle of an Instance
- Diagnosing and Analyzing an Instance
- Migrating Instance Data
-
Testing Instance Performance
- Testing Redis Performance Using memtier_benchmark
- Testing Redis Performance Using redis-benchmark
- Comparing redis-benchmark and memtier_benchmark
-
Reference for a Redis Performance Test
- Test Data of Master/Standby DCS Redis 3.0 Instances
- Test Data of Proxy Cluster DCS Redis 3.0 Instances
- Test Data of Master/Standby DCS Redis 4.0 or 5.0 Instances
- Test Data of Proxy Cluster DCS Redis 4.0 or 5.0 Instances
- Test Data of Redis Cluster DCS Redis 4.0 or 5.0 Instances
- Test Data of Master/Standby DCS Redis 6.0 Instances
- Test Data of Redis Cluster DCS Redis 6.0 Instances
- Test Data of Redis Backup, Restoration, and Migration
- Applying for More DCS Quotas
- Viewing Monitoring Metrics and Configuring Alarms
- Viewing DCS Audit Logs
- Best Practices
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
-
API V2
- Lifecycle Management
-
Instance Management
- Updating a Bandwidth Auto Scaling Policy
- Querying a Bandwidth Auto Scaling Policy
- Deleting a Bandwidth Auto Scaling Policy
- Querying Details of an Instance Parameter Modification Record
- Master/Standby Switchover
- Changing the Password
- Resetting a Password
- Querying DCS Instance Statuses
- Restarting DCS Instances or Clearing DCS Instance Data
- Querying Statistics of All Running Instances
- Enabling or Disabling Client IP Pass-through
- Modifying the Bandwidth of an Instance
- Enabling/Modifying Public Access
- Disabling Public Access to an Instance
- Switching Master/Replica Roles on a Cluster Shard
- Asynchronous Master/Replica Node Switchover
- Querying Whether Specifications of an Instance Can Be Increased
- Obtaining Shard Bandwidth of an Instance
- Modifying Instance Shard Bandwidth
- Asynchronously Exporting Instances
- Starting or Stopping a Specified Instance Node
- Obtaining the Instance Engine Version by Instance ID
- Upgrading the Minor Version of an Instance
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Switching IP
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Configuring Auto-Reconnect for Migration Tasks
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Stopping Synchronization of a Data Migration Task
- Querying the Migration Log List
- Restarting Online Migration Tasks in Batches
- Tag Management
-
Cache Analysis
- Querying Expired Key Scan Records
- Scanning for Expired Keys Immediately
- Creating a Big Key Analysis Task
- Listing Big Key Analysis Tasks
- Querying Big Key Analysis Details
- Deleting a Big Key Analysis Task
- Configuring Automatic Big Key Analysis
- Querying the Configurations of Automatic Big Key Analysis
- Creating a Hot Key Analysis Task
- Listing Hot Key Analysis Tasks
- Querying Hot Key Analysis Details
- Deleting a Hot Key Analysis Task
- Configuring Automatic Hot Key Analysis
- Querying the Configurations of Automatic Hot Key Analysis
- Creating an Expired Key Scan Task
- Querying Automatic Scanning Configuration
- Modifying Automatic Scanning Configuration
- Log Management
- Account Management
- Network Security
- Background Task Management
- Instance Diagnosis
- Template Management
- Other APIs
- Session Management
- Permissions Policies and Supported Actions
- Appendix
- Out-of-Date APIs (Unavailable Soon)
- SDK Reference
-
FAQs
- Instance Types/Versions
-
Feature
- What Are the CPU Specifications of DCS Instances?
- What Are Shard and Replica Quantities?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Does DCS for Redis Support Redis Clusters?
- What Are Redis Data Eviction Policies?
- Does DCS for Redis Support Read/Write Splitting?
- Does DCS for Redis Support Multi-DB?
- Does DCS Support External Extensions, Plug-ins, or Modules?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- Do DCS Redis Instances Limite Data Quantity?
-
Security
- How Do I Configure a Security Group?
- Why Can't Security Groups Be Configured for DCS Redis 4.0/5.0/6.0 Basic Edition Instances?
- How Can I Secure My DCS Redis Instances?
- Does DCS for Redis Support SSL Encrypted Transmission?
- How Do I Enable or Disable SSL for Public Access to a DCS Redis 3.0 Instance?
- Does DCS Support Cross-AZ Deployment?
- Is a Password Required for Accessing an Instance? How Do I Set a Password?
- Sentinel Principle
- Does DCS Support Sentinels?
-
Client and Network Connection
- Does DCS Support Public Access?
- Troubleshooting Redis Connection Failures
- Does DCS Support Cross-VPC Access?
- Will I Be Charged for the EIP Used for Public Access to a DCS Redis Instance?
- Why Is "(error) NOAUTH Authentication required" Displayed When I Access a DCS Redis Instance?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- What Can I Do If I Fail to Access a DCS Instance Using Its Domain Name Address?
- Can I Access DCS Instances in a Local Environment?
- What Should Be Noted When Using Redis for Pub/Sub?
- Why Is Public Access of My DCS Redis 3.0 Instance Unintentionally Disabled?
- What Can I Do If Error "Cannot assign requested address" Is Returned When I Access Redis Using connect?
- Connection Pool Selection and Recommended Jedis Parameter Settings
- What Can I Do If a Lettuce 6.x Client Is Incompatible with My DCS Instance?
- Should I Use a Domain Name or an IP Address to Connect to a DCS Redis Instance?
- Is the Read-only Address of a Master/Standby Instance Connected to the Master or Standby Node?
-
Redis Usage
- Can I Change the CPU Architecture?
- Can I Change the AZ for an Instance?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Why Do I Fail to Delete an Instance?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What Should I Do If an Error Occurs in redis_exporter?
- What Is Reserved Memory? How Do I Configure Reserved Memory?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Does DCS for Redis Provide Backend Management Software?
- Can I Recover Deleted Data of a DCS Instance?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- How Do I Check Redis Memory Usage?
- Why Is the Capacity or Performance of a Shard of a Redis Cluster Instance Overloaded When That of the Instance Is Still Below the Bottleneck?
- Why Does an OOM Error Occur During a Redis Connection?
- What Clients Can I Use for Redis Cluster in Different Programming Languages?
- Why Do I Need to Configure Timeout for Redis Cluster?
- Why Am I Seeing a Timeout Error When Reading Data from Redis?
- Explaining and Using Hash Tags
- Why Does a Key Disappear in Redis?
- Will Cached Data Be Retained After an Instance Is Restarted?
- How Do I Know Whether an Instance Is Single-DB or Multi-DB?
- Notes and Procedure for Enabling Multi-DB for Proxy Cluster Instances
- How Do I Create a Multi-DB Proxy Cluster Instance?
-
Instance Scaling and Upgrade
- Can I Upgrade Version for a DCS Redis Instance, for Example, from Redis 4.0 to Redis 5.0?
- Upgrading a Redis 3.0 Instance
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are DCS Instances Stopped or Restarted During Specification Modification?
- What DCS Instance Type Changes Are Supported?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Instance?
- How Do I Reduce the Capacity of a DCS Instance?
- How Do I Add Shards to a Cluster DCS Redis Instance Without Changing the Memory?
- How Do I Handle an Error When I Use Lettuce to Connect to a Redis Cluster Instance After Specification Modification?
- Can I Expand a Single Shard of a Cluster Instance (Scale-Up)?
-
Data Backup, Export, and Migration
- Can I Migrate Data from a Lower Redis Version to a Higher One?
- What Should I Consider When Transferring or Operating Data Between Different OSs?
- Can I Migrate Data from a Multi-DB Source Redis Instance to a Cluster DCS Redis Instance?
- What Are the Constraints and Precautions for Migrating Redis Data to a Cluster Instance?
- What Should I Consider for Online Migration?
- Can I Perform Online Migration Without Any Service Interruption?
- What If "Disconnecting timedout slave" and "overcoming of output buffer limits" Are Reported on the Source Instance During Online Migration?
- How Do I Export DCS Redis Instance Data?
- Why Is Memory of a DCS Redis Instance Unchanged After Data Migration Using Rump, Even If No Error Message Is Returned?
- Can I Export Backup Data of DCS Redis Instances to RDB Files on the Console?
- Where Are DCS Instance Backup Files Stored? How Many of Them Can Be Stored?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- When Will AOF Rewrites Be Triggered?
- What Are the Common Causes of Redis Migration Failures?
- Can I Migrate Data to Multiple Target Instances in One Migration Task?
- How Do I Enable the SYNC and PSYNC Commands?
- Will the Same Keys Be Overwritten During Data Migration or Backup Import?
- Why Does Redis Cluster Migration Fail If It Uses Built-in Keys and Cross-Slot Lua Scripts?
- Handling Migration Errors
- Troubleshooting Data Migration Failures
- How Do I Migrate Memcached Data?
- Can I Migrate Data Between DCS Memcached and Redis Instances?
-
Big/Hot Key Analysis and Expired Key Scan
- What Are Big Keys and Hot Keys?
- What Is the Impact of Big Keys or Hot Keys?
- How Do I Avoid Big Keys and Hot Keys?
- How Do I Analyze the Hot Keys of a DCS Redis 3.0 Instance?
- How Do I Detect Big Keys and Hot Keys in Advance?
- How Does DCS Delete Expired Keys?
- How Long Are Keys Stored? How Do I Set Key Expiration?
- Why Does Memory Usage Decrease After Big Key Analysis Is Performed on Redis?
-
Redis Commands
- Does DCS for Redis Support Command Audits?
- How Do I Clear Redis Data?
- How Do I Find Specified Keys and Traverse All Keys?
- Why Do I Fail to Execute Some Redis Commands?
- Why is "permission denied" Returned When I Run the KEYS Command in Web CLI?
- How Do I Rename High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
- Can I Configure Redis Keys to Be Case-Insensitive?
- Common Web CLI Errors
-
Monitoring and Alarm
- Why Is CPU Usage of a DCS Redis Instance 100%?
- How Do I View Current Concurrent Connections and Maximum Connections of a DCS Redis Instance?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Used Memory Greater Than Available Memory?
- Why Does Bandwidth Usage Exceed 100%?
- Why Is the Rejected Connections Metric Displayed?
- Why Is Flow Control Triggered? How Do I Handle It?
- Master/Standby Switchover
- Instance Creation and Permissions
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
- Troubleshooting
- Videos
-
More Documents
-
User Guide (ME-Abu Dhabi Region)
- Service Overview
- Getting Started
- Operation Guide
- Monitoring
- Auditing
-
FAQs
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Public Access?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0 and 5.0 Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory of a DCS Redis 3.0 Instance Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Memory Usage More Than 100%?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What If Redis Commands Are Incompatible with DCS for Redis?
- Does DCS for Redis Provide Backend Management Software?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Rename High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 3.0 to Redis 4.0 or 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instance Resources Affected During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Redis Instance?
- Monitoring and Alarm
- Data Backup, Export, and Migration
- Master/Standby Switchover
-
Client and Network Connection
- Change History
- API Reference (ME-Abu Dhabi Region)
-
User Guide (Paris Region)
- Service Overview
- Getting Started
- Operation Guide
- Monitoring
- Auditing
-
FAQs
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Public Access?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Why Is Available Memory of a DCS Redis 3.0 Instance Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Memory Usage More Than 100%?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
- Why Is "Error in execution" Returned When I Access Redis?
-
Redis Commands
- Why is "permission denied" Returned When I Run the Keys Command in Web CLI?
- How Do I Clear Redis Data?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 3.0 to Redis 4.0 or 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instance Resources Affected During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Redis or Memcached Instance?
- Data Backup, Export, and Migration
- Master/Standby Switchover
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
-
Client and Network Connection
- Change History
-
API Reference (Paris Region)
- Before You Start
- API Overview
- Calling APIs
-
API V2
- Lifecycle Management
- Instance Management
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Configuring Auto-Reconnect for Migration Tasks
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Stopping Synchronization of a Data Migration Task
-
Cache Analysis
- Creating a Big Key Analysis Task
- Listing Big Key Analysis Tasks
- Querying Big Key Analysis Details
- Deleting a Big Key Analysis Task
- Configuring Automatic Big Key Analysis
- Querying the Configurations of Automatic Big Key Analysis
- Creating a Hot Key Analysis Task
- Listing Hot Key Analysis Tasks
- Querying Hot Key Analysis Details
- Deleting a Hot Key Analysis Task
- Configuring Automatic Hot Key Analysis
- Querying the Configurations of Automatic Hot Key Analysis
- Log Management
- Network Security
- Background Task Management
- Instance Diagnosis
- Template Management
- Other APIs
- Outdated APIs (V1)
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
User Guide (Kuala Lumpur Region)
-
Service Overview
- What Is DCS?
- Application Scenarios
- DCS Instance Types
- DCS Instance Specifications
- Command Compatibility
- Disaster Recovery and Multi-Active Solution
- Comparing Redis Versions
- Comparing Redis and Memcached
- Comparing DCS and Open-Source Cache Services
- Notes and Constraints
- Basic Concepts
- Permissions
- Related Services
- Permissions Management
- Process of Using DCS
-
Getting Started
- Creating an Instance
-
Accessing an Instance
- Network Conditions for Accessing DCS Redis
- Accessing a DCS Redis Instance Through redis-cli
- Access in Different Languages
- Accessing a DCS Redis 4.0/5.0/6.0 Instance on the Console
- Accessing a DCS Memcached Instance (Discontinued)
- Viewing Details of a DCS Instance
- Operating DCS Instances
-
Managing DCS Instances
- Configuration Notice
- Modifying Configuration Parameters
- Modifying the Security Group
- Viewing Background Tasks
- Viewing Data Storage Statistics of a DCS Redis 3.0 Proxy Cluster Instance
- Managing Tags
- Managing Shards and Replicas
- Analyzing Big Keys and Hot Keys
- Managing IP Address Whitelist
- Viewing Redis Slow Queries
- Viewing Redis Run Logs
- Diagnosing an Instance
- Transmitting DCS Redis Data with Encryption Using SSL
- Backing Up and Restoring DCS Instances
- Migrating Data with DCS
- Managing Passwords
- Parameter Templates
- Monitoring
- Auditing
- Data Migration Guide
-
FAQs
- Instance Types/Versions
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Access over Public Networks?
- Does DCS Support Cross-VPC Access?
- Why Is "(error) NOAUTH Authentication required" Displayed When I Access a DCS Redis Instance?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- Is a Password Required for Accessing an Instance? How Do I Set a Password?
- What Should Be Noted When Using Redis for Pub/Sub?
- How Do I Troubleshoot Redis Connection Failures?
- What Can I Do If Error "Cannot assign requested address" Is Returned When I Access Redis Using connect?
- Connection Pool Selection and Recommended Jedis Parameter Settings
-
Redis Usage
- What Are Shard and Replica Quantities?
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0/5.0/6.0 Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Does DCS for Redis Support Read/Write Splitting?How Do I Configure Read/Write Splitting for a Redis Cluster Instance?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- What Is Sentinel?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- How Can I Secure My DCS Redis Instances?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Why Do I Fail to Delete an Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- Does DCS for Redis Provide Backend Management Software?
- Can I Recover Data from Deleted DCS Instances?
- Does DCS for Redis Support SSL Encrypted Transmission?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- How Do I Check Redis Memory Usage?
- Why Is the Capacity or Performance of a Shard of a Redis Cluster Instance Overloaded When That of the Instance Is Still Below the Bottleneck?
- Does DCS Support External Extensions, Plug-ins, or Modules?
- Why Is "Error in execution" Returned When I Access Redis?
- Why Does a Key Disappear in Redis?
- Why Does an OOM Error Occur During a Redis Connection?
- What Clients Can I Use for Redis Cluster in Different Programming Languages?
- Why Do I Need to Configure Timeout for Redis Cluster?
- Can I Change the AZ for an Instance?
- Explaining and Using Hash Tags
- Will Cached Data Be Retained After an Instance Is Restarted?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Find Specified Keys and Traverse All Keys?
- Why is "permission denied" Returned When I Run the KEYS Command in Web CLI?
- How Do I Disable High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
- Can I Configure Redis Keys to Be Case-Insensitive?
- Can I View the Most Frequently Used Redis Commands?
- Common Web CLI Errors
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 4.0 to 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instances Stopped or Restarted During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Can't I Modify Specifications for a DCS Redis/Memcached Instance?
- How Do I Reduce the Capacity of a DCS Instance?
- How Do I Handle an Error When I Use Lettuce to Connect to a Redis Cluster Instance After Specification Modification?
-
Monitoring and Alarm
- How Do I View Current Concurrent Connections and Maximum Connections of a DCS Redis Instance?
- Does Redis Support Command Audits?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- Why Is Used Memory Greater Than Available Memory?
- Why Does Bandwidth Usage Exceed 100%?
- Why Is the Rejected Connections Metric Displayed?
- Why Is Flow Control Triggered? How Do I Handle It?
-
Data Backup, Export, and Migration
- How Do I Export DCS Redis Instance Data?
- Can I Export Backup Data of DCS Redis Instances to RDB Files Using the Console?
- Why Are Processes Frequently Killed During Data Migration?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- When Will AOF Rewrites Be Triggered?
- Can I Migrate Data to Multiple Target Instances in One Migration Task?
- How Do I Enable the SYNC and PSYNC Commands?
- Will the Same Keys Be Overwritten During Data Migration or Backup Import?
- Online Migration with Rump
- What Should I Consider When Transferring or Operating Data Between Different OSs?
- Can I Migrate Data from a Multi-DB Source Redis Instance to a Cluster DCS Redis Instance?
- How Can I Migrate Partial Data?
- What Are the Constraints and Precautions for Migrating Redis Data to a Cluster Instance?
- What Should I Consider for Online Migration?
- Can I Perform Online Migration Without Any Service Interruption?
- What If "Disconnecting timedout slave" and "overcoming of output buffer limits" Are Reported on the Source Instance During Online Migration?
- Why Is Memory of a DCS Redis Instance Unchanged After Data Migration Using Rump, Even If No Error Message Is Returned?
- Can I Migrate Data from a Lower Redis Version to a Higher One?
- How Do I Migrate Memcached Data?
- Big/Hot Key Analysis
- Master/Standby Switchover
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
- Troubleshooting
- Change History
-
Service Overview
- API Reference (Kuala Lumpur Region)
-
API Reference (Ankara Region)
- Before You Start
- API Overview
- Calling APIs
-
APIs V2 (Recommended)
- Lifecycle Management
- Instance Management
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Log Management
- Background Task Management
- Other APIs
- Outdated APIs (V1)
- Permissions Policies and Supported Actions
- Appendix
-
User Guide (Ankara Region)
- Service Overview
-
Getting Started
- Creating an Instance
-
Accessing an Instance
- Network Conditions for Accessing DCS Redis
- Accessing a DCS Redis Instance Through redis-cli
- Access in Different Languages
- Accessing a DCS Redis Instance on the Console
- Viewing Details of a DCS Instance
-
User Guide
- Permissions Management
- Operating DCS Instances
-
Managing DCS Instances
- Configuration Notice
- Modifying Configuration Parameters
- Modifying Maintenance Time Window
- Modifying the Security Group
- Viewing Background Tasks
- Viewing Data Storage Statistics of a DCS Redis 3.0 Proxy Cluster Instance
- Managing Shards and Replicas
- Analyzing Big Keys and Hot Keys
- Scanning and Deleting Expired Keys in a DCS Redis Instance
- Managing IP Address Whitelist
- Viewing Redis Run Logs
- Diagnosing an Instance
- Backing Up and Restoring DCS Instances
- Migrating Data with DCS
- Managing Passwords
- Monitoring
- Best Practices
-
FAQs
- Instance Types/Versions
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Access at EIPs?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
- Should I Use a Domain Name or an IP Address to Connect to a DCS Redis Instance?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0 and Later Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What If Redis Commands Are Incompatible with DCS for Redis?
- Does DCS for Redis Provide Backend Management Software?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
- Why Is "Error in execution" Returned When I Access Redis?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Disable High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 4.0 to 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instances Stopped or Restarted During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Can't I Modify Specifications for a DCS Redis Instance?
-
Monitoring and Alarm
- Does Redis Support Command Audits?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- Why Is Used Memory Greater Than Available Memory?
- Why Is Flow Control Triggered? How Do I Handle It?
-
Data Backup, Export, and Migration
- How Do I Export DCS Redis Instance Data?
- Can I Export Backup Data of DCS Redis Instances to RDB Files Using the Console?
- Why Are Processes Frequently Killed During Data Migration?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- When Will AOF Rewrites Be Triggered?
- Online Migration with Rump
-
Big/Hot Key Analysis and Expired Key Scan
- What Are Big Keys and Hot Keys?
- What Is the Impact of Big Keys or Hot Keys?
- How Do I Avoid Big Keys and Hot Keys?
- How Do I Analyze the Hot Keys of a DCS Redis 3.0 Instance?
- How Do I Detect Big Keys and Hot Keys in Advance?
- How Does DCS Delete Expired Keys?
- How Long Are Keys Stored? How Do I Set Key Expiration?
- Master/Standby Switchover
-
User Guide (ME-Abu Dhabi Region)
- General Reference
Copied.
Online Migration Between Instances
If the source and target instances are interconnected and the SYNC and PSYNC commands are supported by the source instance, data can be migrated online in full or incrementally from the source to the target.
During online migration, data is essentially synchronized in full to a new replica. Therefore, perform online migration during low-demand hours. Otherwise, source instance CPU usage may surge and latency may increase.
Notes and Constraints
- You cannot use public networks for online migration.
- Before migrating data, read through Migration Solution Notes to learn about the DCS data migration function and select an appropriate target instance.
- Migrating a later Redis instance to an earlier one may fail.
- For earlier instances whose passwords contain single quotation marks ('), modify the password for online migration or try other methods.
- By default, a Proxy Cluster instance has only one database (DB0). Before you migrate data from a multi-DB single-node or master/standby instance to a Proxy Cluster instance, check whether any data exists on databases other than DB0. If yes, enable multi-DB for the Proxy Cluster instance by referring to Enabling Multi-DB.
- By default, a Redis Cluster instance has only one DB (DB0). Before you migrate data from a multi-DB single-node or master/standby instance to a Redis Cluster instance, check whether any data exists on databases other than DB0. To ensure that the migration succeeds, move all data to DB0 by referring to Online Migration from Another Cloud Using Rump.
- During online migration, you are advised to set repl-timeout on the source instance to 300s and client-output-buffer-limit to 20% of the maximum memory of the instance.
- To migrate to an instance with SSL enabled, disable the SSL setting first. For details, see Transmitting DCS Redis Data with Encryption Using SSL.
Prerequisites
- If a target DCS Redis instance is not available, create one first. For details, see Buying a DCS Redis Instance.
- If you already have a DCS Redis instance, you do not need to create one again. For comparing migration data and reserving sufficient memory, you are advised to clear the instance data before the migration. For details, see Clearing DCS Instance Data.
If the data exists on the target instance, the replicated data between the source and target is overwritten. If the data exists only on the target instance, the data will be retained.
Creating an Online Migration Task
- Log in to the DCS console.
If the source and target Redis are under different accounts, use the source account to log in to DCS.
- Click
in the upper left corner of the console and select the region where your source instance is located.
NOTE:
Only when the online migration task and the source Redis are under an account and in a region, the SYNC and PSYNC commands of the source Redis are allowed. Otherwise, online migration cannot be performed.
- In the navigation pane, choose Data Migration. The migration task list is displayed.
- Click Create Online Migration Task.
- Enter the task name and description.
The task name must start with a letter, contain 4 to 64 characters, and contain only letters, digits, hyphens (-), and underscores (_).
- Configure the VPC, subnet, and security group for the migration task.
NOTE:
- Use the VPC of the source or target Redis.
- The online migration task uses a tenant IP address (Migration ECS displayed on the Basic Information page of the task.) If a whitelist is configured for the source or target instance, add the migration IP address to the whitelist or disable the whitelist.
- To allow the VM used by the migration task to access the source and target instances, set an outbound rule for the task's security group to allow traffic through the IP addresses and ports of the source and target instances. By default, all outbound traffic is allowed.
Checking the Network
- Check whether the source Redis instance, the target Redis instance, and the migration task are configured with the same VPC.
If yes, go to Configuring the Online Migration Task. If no, go to 2.
- Check whether the VPCs configured for the source Redis instance, the target Redis instance, and the migration task are connected to ensure that the VM resource of the migration task can access the source and target Redis instances.
If yes, go to Configuring the Online Migration Task. If no, go to 3.
- Perform the following operations to establish the network.
- If the source and target Redis instances are in the same DCS region, create a VPC peering connection by referring to VPC Peering Connection.
- If the source and target Redis instances are in different DCS regions, create a cloud connection by referring to Cloud Connect Getting Started.
Configuring the Online Migration Task
- On the Online Migration tab page, click Configure in the row containing the online migration task you just created.
- Select a migration type.
Supported migration types are Full and Full + Incremental, which are described in Table 1.
To switch DCS instance IPs after instance migration, select Full + Incremental for the migration type.
Table 1 Migration type description Migration Type
Description
Full
Suitable for scenarios where services can be interrupted. Data is migrated at one time. Source instance data updated during the migration will not be migrated to the target instance.
Full + incremental
Suitable for scenarios requiring minimal service downtime. The incremental migration parses logs to ensure data consistency between the source and target instances.
Once the migration starts, it remains Migrating until you click Stop in the Operation column. After the migration is stopped, data in the source instance will not be lost, but data will not be written to the target instance. When the transmission network is stable, the delay of incremental migration is within seconds. The actual delay depends on the transmission quality of the network link.
Figure 1 Selecting the migration type - Only if Migration Type is set to Full + Incremental, you can specify a bandwidth limit.
The data synchronization rate can be kept around the bandwidth limit.
- Specify Auto-Reconnect. If this option is enabled, automatic reconnections will be performed indefinitely in the case of a network exception.
Full synchronization will be triggered and requires more bandwidth if incremental synchronization becomes unavailable. Exercise caution when enabling this option.
- Configure Source Redis and Target Redis.
- Set Source Redis Type to Redis in the cloud and add Source Redis Instance.
- Configure Target Redis Type and Target Redis Instance:
- If the target Redis and migration task are in a VPC, or across VPCs over a network in a region, set Target Redis Type to Redis in the cloud and add Target Redis Instance.
- If the target Redis and migration task are in different regions, set Target Redis Type to Self-hosted Redis and add Target Redis Instance. If the target Redis is a Redis Cluster, enter the IP addresses and ports of all masters in the cluster and separate multiple addresses with commas (,). For example: 192.168.1.1:6379,192.168.0.0:6379
- Configure Source Redis Instance Password and Target Redis Instance Password: If the instance is password-protected, click Test Connection to check whether the instance password is correct and whether the network is connected. If the instance is not password-protected, click Test Connection directly.
Currently, the users created in Managing Users are unavailable here.
- You can specify the source DB and target DB. For example, if you enter 5 for source DB and 6 for target DB, data in DB5 of the source Redis will be migrated to DB6 of the target Redis. If the source DB is not specified but the target DB is specified, all source data will be migrated to the specified target DB by default. If the target DB is not specified, data will be migrated to the corresponding target DB.
NOTE:
- If the source Redis is multi-DB and the target is single-DB (DB0), either ensure that all source data is in DB0, or specify a source DB and set the target DB to 0. Otherwise, migration will fail.
- For details about DB in DCS for Redis, see Does DCS for Redis Support Multi-DB?
- Click Next.
- Confirm the migration task details and click Submit.
Go back to the data migration task list. After the migration is successful, the task status changes to Successful.
If the migration fails, click the migration task and check the log on the Migration Logs page.
NOTE:
- Once full + incremental migration starts, it remains Migrating after full migration.
- To manually stop a migration task, select the check box on the left of the migration task and click Stop above the migration task.
- To perform migration again, select the migration tasks which failed or are stopped, and click Restart above. If a restarted migration task fails, click Configure to configure the task and try again.
- A maximum of 50 online migration tasks can be selected at a time. You can stop, delete, or restart them in batches.
Verifying the Migration
After the migration is complete, check data integrity in the following way.
- Connect the source Redis and the target Redis. For details, see redis-cli.
- Run the info keyspace command on the source and the target Redis to check the values of keys and expires.
Figure 2 Checking instance data
- Calculate the differences between the values of keys and expires of the source Redis and the target Redis. If the differences are the same, the data is complete and the migration is successful.
During full migration, source Redis data updated during the migration will not be migrated to the target instance.
(Optional) Switching DCS Instance IP Addresses
The prerequisites for switching source and target Redis instance IP addresses are as follows. The target Redis can be accessed automatically on a client after the switch.
Prerequisites:
- This function is supported by basic edition DCS Redis 4.0 instances and later, but not by professional edition DCS Redis instances.
- For DCS Redis 3.0 instances, contact customer service to enable the whitelist for Redis 3.0 instance IP switches. The instance IP addresses can be switched only when the source instance is a DCS Redis 3.0 instance and the target instance is a basic edition DCS Redis 4.0, 5.0, or 6.0 instance.
- The IP addresses of a source or target instance with public access enabled cannot be switched.
- Instance IPs can be switched only for the source and target Redis that are single-node, master/standby, read/write splitting, or Proxy Cluster instances.
- Full + Incremental must be selected in 2.
- The source and target Redis instance ports must be consistent.
- Online migration will stop during the switching.
- Instances will be read-only for one minute and disconnected for several seconds during the switching. When the source is a Redis 3.0 instance, the instance will be read-only for one minute and disconnected for 30 seconds during an IP switch.
- If your application cannot reconnect to Redis or handle exceptions, you may need to restart the application after the IP switching.
- If the source and target instances are in different subnets, the subnet information will be updated after the switching.
- If the source is a master/standby instance, the IP address of the standby node will not be switched. Ensure that this IP address is not used by your applications.
- If your applications use a domain name to connect to Redis, the domain name will be used for the source instance. Select Yes for Switch Domain Name.
- Ensure that the passwords of the source and target instances are the same. If they are different, verification will fail after the switching.
- If a whitelist is configured for the source instance, ensure that the same whitelist is configured for the target instance before switching IP addresses.
- After the IP addresses of a DCS Redis 3.0 instance are switched, synchronize the security group of the source to the whitelist of the target.
- On the Data Migration > Online Migration page, when the migration task status changes to Incremental migration in progress, choose More > Switch IP in the Operation column.
- In the Switch IP dialog box, select whether to switch the domain name.
NOTE:
- If a Redis domain name is used on the client, switch it or you must modify the domain name on the client.
- If the domain name switch is not selected, only the instance IP addresses will be switched.
- Click OK. The IP address switching task is submitted successfully. When the status of the migration task changes to IP switched, the IP address switching is complete.
To restore the IPs, choose More > Roll Back IP in the operation column. The IPs are rolled back when the task is in the Successful state.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot