Halaman ini belum tersedia dalam bahasa lokal Anda. Kami berusaha keras untuk menambahkan lebih banyak versi bahasa. Terima kasih atas dukungan Anda.
- What's New
- Function Overview
- Product Bulletin
- Service Overview
-
GeminiDB Redis API
- Service Overview
- Billing
- Getting Started with GeminiDB Redis API
-
Working with GeminiDB Redis API
- Permission Management
- Buying a GeminiDB Redis Instance
-
Instance Connection and Management
- Connection Methods
- Connecting to a GeminiDB Redis Instance on the DAS Console
- Connecting to a GeminiDB Redis Instance Over a Private Network
- Connecting to a GeminiDB Redis Instance Over a Public Network
-
Connection Information Management
- Configuring a Private Domain Name for a GeminiDB Redis Instance
- Configuring a Public Domain Name for a GeminiDB Redis Instance
- Configuring Security Group Rules for a GeminiDB Redis Instance
- Viewing the IP Address and Port Number of a GeminiDB Redis Instance
- Binding an EIP to a GeminiDB Redis Instance
- Encrypting Data over SSL for a GeminiDB Redis Instance
- Connecting a GeminiDB Redis Instance over SSL
- Changing the Security Group of a GeminiDB Redis Instance
- Configuring Private Network Access to a GeminiDB Redis Instance
-
Data Migration
- Overview of the Redis Data Migration Solution
- (Recommended) Using DRS to Migrate Data from a GeminiDB Redis Instance to an Open-Source Redis Instance
- Migrating the Alibaba Cloud Database Redis/Tair To GeminiDB Redis
- (Recommended) Using DRS to Migrate Data from Open-source Redis or Redis Cluster to GeminiDB Redis API
- Migrating Data from Open-source Redis to GeminiDB Redis API Using Redis-Shake
- Using Redis-Shake to Import an RDB or AOF File to a GeminiDB Redis Instance
- (Recommended) Importing Data to Restore RDB Files to a GeminiDB Redis Instance
- From Kvrocks to GeminiDB Redis API
- From Pika to GeminiDB Redis API
- From SSDB to GeminiDB Redis API
- From LevelDB to GeminiDB Redis API
- From Kvrocks to GeminiDB Redis API
- Migrating AWS Elastic Cache for Redis Databases To GeminiDB Redis
- Verifying Redis Data Consistency After Migration
- Instance Management
-
Modifying Instance Settings
- Upgrading a Minor Version
- Modifying a GeminiDB Redis Instance Name
- Changing the Administrator Password of a GeminiDB Redis Database
- Changing the CPU and Memory Specifications of an Instance
- Setting a Maintenance Window
- Scaling Instances
- Scaling Disk Space
- Performing a Primary/Standby Switchover for GeminiDB Redis Instances
- Data Backup
- Data Restoration
- Diagnosis Analysis
- Account and security
-
Parameter Management
- Modifying Parameters of GeminiDB Redis Instances
- Creating a Parameter Template
- Viewing Parameter Change History
- Exporting a Parameter Template
- Comparing Parameter Templates
- Replicating a Parameter Template
- Resetting a Parameter Template
- Applying a Parameter Template
- Viewing Application Records of a Parameter Template
- Modifying the Description of a Parameter Template
- Deleting a Parameter Template
- Logs and Audit
- Viewing Metrics and Configuring Alarms
- Tag Management
- Quota
- MySQL Memory Acceleration
-
Development Reference
- Development and O&M Rules
- Compatible Commands
-
Examples of Connecting to an Instance Using Programming Languages
- Connecting to an Instance Using Jedis
- Connecting to an Instance Using Redisson
- Connecting to an Instance Using Hiredis
- Connecting to an Instance Using Node.js
- Connecting to an Instance Using PHP
- Connecting to an Instance Using Python
- Connecting to an Instance Using Go
- Connecting to an Instance Using C#
- Connecting to an Instance Using Sentinel
- Lua Script Compilation Specifications
- Keyspace Notification
- EXHASH Commands
- Large Bitmap Initialization
- Configuring Parameters for a Client Connection Pool
- Using Parallel SCAN to Accelerate Full Database Scanning
- Accessing a GeminiDB Redis Instance Using a Pipeline
- Processing Transactions on a GeminiDB Redis Instance
- Retry Mechanism for GeminiDB Redis Clients
- GeminiDB Redis API Pub/Sub
- Implementing Distributed Locks Using Lua Scripts for GeminiDB Redis API
- Best Practices
- Performance White Paper
-
FAQs
-
About GeminiDB Redis API
- What Are the Differences Between GeminiDB Redis API, Open-Source Redis, and Other Open-Source Redis Cloud Services?
- How Is the Performance of GeminiDB Redis API Compared with Open-Source Redis?
- What Redis Versions and Commands Are Compatible with GeminiDB Redis API? Whether Application Code Needs to Be Refactored for Connecting to a Redis Client?
- Can Data Be Migrated from a Self-Built Redis Instance to a GeminiDB Redis Instance? What Are the Precautions?
- What Is the Availability of a GeminiDB Redis Instance?
- Are Total Memory and Total Capacity of a GeminiDB Redis Instance the Same? What Is the Relationship Between Memory and Capacity?
- How Do I Select Proper Node Specifications and Node Quantity When Purchasing a GeminiDB Redis Instance?
- Is a Primary/Standby or Cluster Deployment Mode Preferred for GeminiDB Redis Instances with Several GB of Storage Space?
- How Does GeminiDB Redis API Persist Data? Will Data Be Lost?
- What Is the Memory Eviction Policy of GeminiDB Redis API?
- Does GeminiDB Redis API Support Modules Such as a Bloom Filter?
- Billing
-
Database Usage
- Why Is the Key Not Returned Using Scan Match?
- How Do I Process Existing Data Shards After Migrating Workloads to GeminiDB Redis API?
- Does GeminiDB Redis API Support Fuzzy Queries Using KEYS?
- Does the GeminiDB Redis API Support Multiple Databases?
- Why the Values Returned by Scan Operations Are Different Between GeminiDB Redis API and Open-Source Redis 5.0?
- Why Are Error Messages Returned by Some Invalid Commands Different Between GeminiDB Redis API and Open-Source Redis 5.0?
- How Do I Resolve the Error "CROSSSLOT Keys in request don't hash to the same slot"?
- How Many Commands Can Be Contained in a GeminiDB Redis Transaction?
- Which Commands Require Hash Tags in GeminiDB Redis Cluster Instances?
- What Do I Do If the Error "ERR Unknown Command Sentinel" Is Displayed?
- Why Return Values of Blocking Commands Differ Between Primary/Standby GeminiDB Redis Instances and Open-Source Redis Instances?
- How Long Does It Take to Scale Up GeminiDB Redis Instance Storage? Will Services Be Affected?
- How Long Does It Take to Add GeminiDB Redis Nodes at the Same Time? What Are the Impacts on Services?
- What Are the Differences Between Online and Offline Specification Changes of GeminiDB Redis Nodes? How Long Will the Changes Take? What Are the Impacts on Services?
- What Are the Differences Between Online and Offline Patch Installation of GeminiDB Redis Nodes? How Long Will the Upgrades Take? What Are the Impacts on Services?
- Can I Download Backups of a GeminiDB Redis Instance to a Local PC and Restore Data Offline?
- What Is the Data Backup Mechanism of GeminiDB Redis API? What Are the Impacts on Services?
- Why Does the CPU Usage Remain High Despite Low Service Access Volume on a GeminiDB Redis Preferential Instance with 1 CPU and 2 Nodes?
- Why Does the Number of Keys Decrease and Then Become Normal on the Monitoring Panel on the GUI of GeminiDB Redis API?
- Why Is CPU Usage of GeminiDB Redis Nodes Occasionally High?
- How Do I Upgrade GeminiDB Redis API from 5.0 to 6.2?
- When Does a GeminiDB Redis Instance Become Read-Only?
-
Database Connection
- How Do I Connect to a GeminiDB Redis Instance?
- What Can I Do with IP Addresses of GeminiDB Redis Nodes?
- How Does Load Balancing Work in GeminiDB Redis API?
- How Can I Create and Connect to an ECS?
- Can I Change the VPC of a GeminiDB Redis Instance?
- Why Can't I Connect to the Instance After an EIP Is Bound to It?
- How Do I Access a GeminiDB Redis Instance from a Private Network?
- Do I Need to Enable Private Network Access Control for a Load Balancer After Setting a Security Group?
- What Should I Do If the Client Connection Pool Reports Error " Could not get a resource from the pool"?
- Common Client Errors and Troubleshooting Methods
- Backup and Restoration
- Regions and AZs
-
Data Migration
- What Do I Do if the GeminiDB Redis Link Cannot Be Found on DRS?
- What Do I Do if the Error "ERR the worker queue is full, and the request cannot be executed" Is Displayed?
- What Do I Do If the Error "ERR the request queue of io thread is full, and the request cannot be executed" Is Displayed?
- What Do I DO If the Error "read error, please check source redis log or network" Is Displayed?
- What Do I Do If the Error "slaveping_thread.cc-ThreadMain-90: error: Ping master error" Is Displayed?
- What Do I Do If the Forward Migration Speed of the Synchronization Status Is Too Slow?
- What Do i Do When the Forward Migration Speed of the Synchronization Status Is Too Fast, and the Error Message "ERR Server Reply Timeout, Some Responses May Lose, but Requests Have Been Executed" Is Displayed?
- Can Data Be Migrated from Self-Built Redis 4.0, 5.0, and 6.2 to GeminiDB Redis API?
- How Do I Migrate Data from Self-Built Primary/Standby and Cluster Redis Instances to GeminiDB Redis Instances?
- Why Cannot DRS Migrate Data from Third-Party Redis Such as ApsaraDB for Redis and TencentDB for Redis?
- Which of the Following Factors Need to Be Considered When Data Is Migrated from Self-Built Primary/Standby Redis Instances to a GeminiDB Redis cluster?
- Only 20% to 30% of 100 GB of Data Was Migrated to GeminiDB Redis. Is the Migration Incomplete?
-
Memory Acceleration
- Will All Data Be Cached to GeminiDB Redis Instances After Memory Acceleration Is Enabled and MySQL Database Data Is Updated?
- If Memory Acceleration Is Enabled, GeminiDB Redis Instance Data Increases Continuously. Do I Need to Scale Out the Capacity? How Do I Manage Cached Data?
- Is Memory Acceleration Recommended When Customers' Service Data Can Be Synchronized Between MySQL and Redis? In Which Scenarios Can Memory Acceleration Be enabled?
- How Long Is the Latency of Synchronization from RDS for MySQL to GeminiDB Redis API? What Factors Affect the Latency?
- Will the Source MySQL Database Be Affected After Memory Acceleration Is Enabled?
- GeminiDB Redis Instances with Memory Acceleration Enabled Needs to Process a Large Number of Binlogs in a Short Period of Time. Will a Large Number of Resources Be Occupied and Online Services Be Affected?
- Instance Freezing, Release, Deletion, and Unsubscription
-
About GeminiDB Redis API
-
GeminiDB Influx API
- Service Overview
- Billing
- Getting Started with GeminiDB Influx API
-
Working with GeminiDB Influx API
- Permissions Management
- Buying an Instance
- Connecting to an Instance
- Instance Lifecycle
- Instance Modifications
- Connection Management
- Migrating Data
- Database Commands
- Cold and Hot Data Separation
- Certificate Management
- Data Backup
- Data Restoration
- Exporting Data
-
Parameter Template Management
- Creating a Parameter Template
- Modifying Parameters of GeminiDB Influx Instances
- Viewing Parameter Change History
- Exporting a Parameter Template
- Comparing Parameter Templates
- Replicating a Parameter Template
- Resetting a Parameter Template
- Applying a Parameter Template
- Viewing Application Records of a Parameter Template
- Modifying a Parameter Template Description
- Deleting a Parameter Template
- Monitoring and Alarm Reporting
- Audit
- Quotas
- Best Practices
- Performance White Paper
-
FAQs
-
Product Consulting
- What Do I Need to Note When Using GeminiDB Influx API?
- What Does the Availability of GeminiDB Influx Instances Mean?
- Can GeminiDB Influx API Convert Multiple Columns to Multiple Rows?
- How Much Data Can a GeminiDB Influx Instance Hold?
- Can I Access GeminiDB Influx Instances Using Grafana?
- How Do I Use GeminiDB Influx Hints?
- What Do I Do If Error "select *" query without time range is not allowed Is Reported?
- What Do I Do If the Error Message "ERR: Max-select-series Limit Exceeded" Is Displayed?
- What Do I Do If "delete is forbidden" Is Reported?
- Billing
- Database Connection
- Backup and Restoration
- Regions and AZs
- Instance Freezing, Release, Deletion, and Unsubscription
-
Product Consulting
-
GeminiDB Cassandra API
- Service Overview
- Billing
- Getting Started with GeminiDB Cassandra API
-
Working with GeminiDB Cassandra API
- Permissions Management
- Buying an Instance
- Instance Connections
- Instance Lifecycle
- Instance Modifications
- Connection Management
- Data Management
- Intra-region DR
- Cross-region Dual-active DR
- Data Backup
- Data Restoration
-
Parameter Template Management
- Creating a Parameter Template
- Modifying Parameters of GeminiDB Cassandra Instances
- Viewing Parameter Change History
- Exporting a Parameter Template
- Comparing Parameter Templates
- Replicating a Parameter Template
- Resetting a Parameter Template
- Applying a Parameter Template
- Viewing Application Records of a Parameter Template
- Modifying a Parameter Template Description
- Deleting a Parameter Template
- Audit
- Monitoring and Alarm Configuration
- Log Management
- Enterprise Project
- Quotas
- Best Practices
- Performance White Paper
-
FAQs
- Product Consulting
- Billing
-
Database Usage
- Why Does the Overall Instance Performance Deteriorate When QPS Increases After the Batch Size Is Decreased?
- What Can I Do if Error "field larger than field limit (131072)" Is Reported During Data Import?
- What Should I Pay Attention to When Creating a GeminiDB Cassandra Table?
- How Do I Detect and Resolve BigKey and HotKey Issues?
- How Do I Set Up a Materialized View?
- How Do I Use a Secondary Index?
- How Can I Use the Search Index of Lucene?
- How Do I Set Paging Query with Java?
- How Do I Set Paging Query with Python?
- Database Connection
- Backup and Restoration
- Regions and AZs
- Instance Freezing, Release, Deletion, and Unsubscription
- GeminiDB (DynamoDB API Compatible) Instance
- HBase-Compatible Instance
-
GeminiDB Mongo API
- Service Overview
- Billing
- Getting Started with GeminiDB Mongo API
-
Working with GeminiDB Mongo API
- Permissions Management
- Migrating Data
- Instance Lifecycle
- Instance Modifications
- Connections
- Database Commands
- Data Backup
- Data Restoration
-
Parameter Template Management
- Creating a Parameter Template
- Modifying Parameters of GeminiDB Mongo Instances
- Viewing Parameter Change History
- Exporting a Parameter Template
- Comparing Parameter Templates
- Replicating a Parameter Template
- Resetting a Parameter Template
- Applying a Parameter Template
- Viewing Application Records of a Parameter Template
- Modifying a Parameter Template Description
- Deleting a Parameter Template
- Monitoring and Alarm Configuration
- Audit
- Log Management
- Billing Management
- Quotas
- Best Practices
- Performance White Paper
- FAQs
- Change History
- Technical White Paper
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Quick Start
-
APIs v3 (Recommended)
- API Versions
- Versions and Specifications
-
Instances
- Creating an Instance
- Deleting an Instance
- Querying Instances and Details
- Scaling Up Storage Space of an Instance
- Adding Nodes for an Instance
- Deleting Nodes from a Specified Instance
- Obtaining Sessions of a Node
- Querying Session Statistics of an Instance Node
- Closing Sessions of an Instance Node
- Querying Specifications That You Can Change Those of an Instance To
- Changing Specifications of an Instance
- Resetting the Administrator Password of an Instance
- Editing the Name of an Instance
- Changing the Security Group of an Instance
- Upgrading Minor Version
- Patching Databases in Batches
- Creating Cold Storage
- Scaling Up Cold Storage
- Binding/Unbinding an EIP
- Enabling or Disabling SSL
- Restarting an Instance
- Configuring an Autoscaling Policy for Storage Space
- Changing a Database Port
- Checking Password Strength
- Configuring Access to a Replica Set Across CIDR Blocks
- Deleting the Node that Fails to Be Added
- Querying IP Addresses Required for Creating an Instance or Adding Nodes
- Querying the Autoscaling Policy of Storage Space
- Scaling Storage Space of an Instance
- Querying High-Risk Commands
- Modifying High-Risk Commands
- Querying Hot Keys of a Redis Instance
- Disabling Commands for a Redis Instance
- Querying Disabled Commands for a Redis Instance
- Deleting Disabled Commands for a Redis Instance
- Setting the Maintenance Period of an Instance
- Performing a Primary/Standby Switchover
- Starting or Stopping a Node
- Querying Big Keys of a GeminiDB Redis Instance
- Querying the Password-Free Configuration of a GeminiDB Redis Instance
- Modifying the Password-Free Configuration of a GeminiDB Redis Instance
- Querying the Memory Mapping List and Details
- Creating a Memory Acceleration Rule
- Deleting a Memory Mapping
- Creating a Memory Mapping
- Modifying a Memory Acceleration Rule
- Querying Memory Mapping Rules and Details
- Deleting a Memory Acceleration Rule
- Enabling or Disabling Instance Data Export
- Enabling or Disabling Second-Level Monitoring
- Querying Configurations of Second-Level Monitoring
- Connection Management
-
Backups and Restorations
- Querying Backups
- Querying Backups (Recommended)
- Querying an Automated Backup Policy
- Configuring an Automated Backup Policy
- Querying Instances that Can Be Restored
- Querying the Time Window When a Backup Can Be Restored
- Creating a Manual Backup
- Deleting a Manual Backup
- Restoring Data to an Existing Instance
- Querying the Recycling Policy
- Modifying the Recycling Policy
- Querying Instances in the Recycle Bin
- Obtaining GeminiDB Cassandra Instance Database Information That Is Restored Using Tables
- Obtaining GeminiDB Cassandra Instance Table Information That Is Restored Using Tables
- Restoring the Current Redis Instance to a Point in Time
- Setting the Policy for Restoring Redis Data to a Specified Time Point
- Querying the Policy for Restoring Redis Data to a Specified Time Point
- Querying the Restoration Time Range of a Redis Instance
- Querying the Storage Space Used for Restoring a Redis Instance to a Specified Time Point
- Stopping a Backup
- Deleting Manual Backups in Batches
-
Parameter Templates
- Obtaining Parameter Templates
- Creating a Parameter Template
- Modifying Parameters in a Parameter Template
- Applying a Parameter Template
- Resetting a Custom Parameter Template
- Modifying Parameters of a Specified Instance
- Querying Instance Parameter Settings
- Obtaining Parameters of a Specified Parameter Template
- Deleting a Parameter Template
- Querying Instances that a Parameter Template Can Be Applied To
- Viewing Parameter Change History of an Instance
- Viewing Application Records of a Parameter Template
- Comparing Parameter Templates
- Replicating a Parameter Template
- Querying API that Support Parameter Templates
- Managing Databases and Accounts
- Tags
-
Logs
- Querying Database Slow Logs
- Querying Slow Query Logs of a GeminiDB Redis Instance
- Querying Slow Query Logs of a GeminiDB Influx Instance
- Querying Slow Query Logs of a GeminiDB Cassandra Instance
- Querying Slow Query Logs of a GeminiDB Mongo Instance
- Querying Database Error Logs
- Querying Error Logs of a GeminiDB Mongo Instance
- Setting the Desensitization Status of Slow Query Logs
- Querying the Desensitization Status of Slow Query Logs
- Associating Instances with an LTS Log Stream
- Disassociating Instances from an LTS Log Stream
- Querying LTS Log Configurations
- Quotas
- Disaster Recovery
- Task Management
- Enterprise Projects
- Instance Load Balancing Management
- API v3 (Unavailable Soon)
- Permission Policies and Supported Actions
- Appendixes
- SDK Reference
- Videos
- General Reference
Copied.
Performance Test Methods
Objectives
RTA-based advertising poses higher technical requirements for advertisers, including quick response from the media and lower costs in data storage. In recent years, GeminiDB Redis API is widely used as a key-value (KV) signature database in RTA scenarios and delivers good performance at low costs.
This section describes a pressure test of GeminiDB Redis instances in RTA scenarios, including the performance on data compression, QPS, bandwidth, and latency.
Test Environment
This test used GeminiDB Redis clusters and Elastic Cloud Servers (ECSs). The following table lists the specifications.
- GeminiDB Redis cluster specifications
Region
CN East-Shanghai1
AZ type
Deployment across AZ 1, AZ 2, and AZ 3
vCPUs of nodes
16
Nodes
20
Total storage space
2 TB
- ECS specifications
AZ type
AZ 1
Specifications
c7.4xlarge.2, 3 PCS
vCPUs
16
Memory
32 GiB
Operating System (OS)
CentOS 8.2 64-bit
Test Tool
This test used memtier_benchmark, which is a multi-thread load test tool developed by Redis Labs. For details, see memtier_benchmark.
Test Metrics
Service scale of the simulated RTA scenario: 1 TB of data, 1.6 million QPS, and 1.5 Gbit/s of bandwidth.
- Data samples
Categories of data samples are as follows.
Category
Key
Value
Hash
34 characters
10 field-value pairs. A field contains 10 characters and a value contains 20 to 80 characters.
String
68 characters
32 random characters
String
19 characters
500 to 2,000 random characters
Four billion keys need to be stored in the Redis clusters. The proportion of each data category is about 2:7:1, and the frequently accessed data accounts for 50% of the total.
- Metrics
Test metrics of database operations are as follows.
Metric Abbreviation
Description
QPS
Number of requests executed per second.
Avg Latency (ms)
Average request latency, indicating the overall performance of a GeminiDB Redis cluster.
p99 Latency (ms)
p99 latency of a request, indicating that 99% of the request execution time is shorter than the value of this parameter.
p9999 Latency (ms)
p9999 latency of a request, indicating that 99.99% of the request execution time is shorter than the value of this parameter.
Test Procedure
- Inject test data.
Before the test, generate and inject test data. Configure the three categories of data as follows:
- Hash
- A key consists of 34 characters in the format of string prefix + nine digits. The digits are consecutive from 100 million to 900 million. The key is used to control the total data volume and hot data distribution.
- Inject 10 field-value pairs. A field contains 10 characters and a value contains 20 to 80 random characters. The average value of a field-value is 50 characters.
- Construct and inject 800 million keys.
memtier_benchmark -s ${ip} -a $(passwd} -p ${port} -c 20-t20 -n7500000 -d 32 -key-maximum=3 800000000 -key-minimum =1000000000 --key-pr efix ='cefkljrithuir123894873h4523blj4b2jkjh2iw13b nfdhsbnkfhsdjkh' --key-pattern=P:P--ratio=1:0 -pipelire=100
- String
- A key consists of 68 characters in the format of string prefix + 10 digits. The digits are consecutive from 1 billion to 3.8 billion. The key is used to control the total data volume and hot data distribution.
- Inject 32 random characters for a value.
- Construct and inject 2.8 billion keys.
memtier_benchmark -s ${ip} -a ${passwd} -p ${port} -c 20 -t 20 -n 2500000 --command='hset __key__ mendke398d __data__ mebnejkehe __data__ fmebejdbnf __data__ j3i45u8923 __data__ j43245i908 __data__ jhiriu2349 __data__ 21021034ji __data__ jh23ui45j2 __data__ jiu5rj9234 __data__ j23io45u29 __data__' -d 50 --key-maximum=900000000 --key-minimum=100000000 --key-prefix='ewfdjkff43ksdh41fuihikucl' --command-key-pattern=P --pipeline=100
- String
- A key consists of 19 characters in the format of string prefix + 9 digits. The digits are consecutive from 100 million to 300 million. The key is used to control the total data volume and hot data distribution.
- Inject 500 to 2,000 random characters for a value. The average value is 1,250 bits.
- Construct and inject 400 million keys.
memtier_benchmark -s ${ip} -a ${passwd} -p ${port} -c 20 -t 20 -n 520000 -d 1250 --key-maximum=300000000 --key-minimum=100000000 --key-prefix='miqjkfdjiu' --key-pattern=P:P --ratio=1:0 --pipeline=100
After data is injected, there were 3,809,940,889 (about 3.8 billion) keys. Obtain the total data volume on the GeminiDB Redis API console and calculate the data compression ratio. The compressed storage space was 155 GB, and the compression ratio was 13.8%.
CAUTION:- About 4 billion data records were generated by memtier_benchmark of the current version. Data distribution among different categories is not affected.
- A random character string constructed by memtier_benchmark contains many consecutive characters, so the compression ratio was low. The data compression ratio is about 30% to 50% in actual production.
- Hash
- Pressure test commands
Perform pressure tests on GeminiDB Redis clusters deployed on three ECSs, separately. The pressure test tasks are as follows:
- On ECS 1, run the HGETALL command for hashes and set a range for keys to allow access to hot data only.
memtier_benchmark -s ${ip} -a ${passwd} -p ${port} -c 20 -t 30 --test-time 1200 --random-data --randomize --distinct-client-seed --command='hgetall __key__' --key-maximum=600000000 --key-minimum=200000000 --key-prefix='ewfdjkff43ksdh41fuihikucl' --out-file=./output_filename
- Run the GET command for type data 2 and set a range for keys to allow access to hot data only.
memtier_benchmark -s ${ip} -a ${passwd} -p ${port} -c 70 -t 30 --test-time 1200 --random-data --randomize --distinct-client-seed --key-maximum=2400000000 --key-minimum=1000000000 --key-prefix='cefkljrithuin123894873h4523bhj4b2jkjh2iu13bnfdhsbnkfhsdjkh' --ratio=0:1 --out-file=./output_filename
- Run the GET command for type data 3 and set a range for keys to allow access to hot data only.
memtier_benchmark -s ${ip} -a ${passwd} -p ${port} -c 10 -t 30 --test-time 1200 --random-data --randomize --distinct-client-seed --key-maximum=300000000 --key-minimum=100000000 --key-prefix='miqjkfdjiu' --ratio=0:1 --out-file=./output_filename
The number of connections (the product of c and t) was adjusted to modify the number of clients and configuration of each instance, so as to achieve a QPS of 1,600,000 and a read request traffic of 1.5 Gbit/s. Remain the service volume unchanged and evaluate the performance of GeminiDB Redis API.
- On ECS 1, run the HGETALL command for hashes and set a range for keys to allow access to hot data only.
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