- What's New
- Function Overview
- Product Bulletin
- Service Overview
-
GeminiDB Redis API
- Service Overview
- Getting Started with GeminiDB Redis API
-
Working with GeminiDB Redis API
- IAM Permissions Management
- Billing Management
- Buying an Instance
-
Connecting to an Instance
- Connection Modes
- Connecting to GeminiDB Redis Instances Through DAS
- Connecting to GeminiDB Redis Instances over a Private Network
- Connecting to GeminiDB Redis Instances over a Public Network
- Configuring a Private Domain Name
- Configuring a Public Domain Name
- Configuring Security Group Rules for Nodes
- Binding and Unbinding an EIP
- Viewing the IP Address and Port Number
- Configuring an SSL Connection
- Connecting to a instance Using SSL
- Changing a Node Security Group
- Enabling or Disabling Private Network Access for a Load Balancer
- Instance Statuses
- Instance Lifecycle Management
- Instance Changes
- Audit
- Monitoring and Alarm Configuration
- Data Backup
- Data Restoration
- Memory Acceleration
-
Data Migration
- Overview of the Redis Data Migration Solution
- Verifying Redis Data Consistency After Migration
- Migrating the Alibaba Cloud Database Redis/Tair To GeminiDB Redis
- From On-Premises Redis to GeminiDB Redis API
- Migration from an RDB to a GeminiDB Redis Instance Using a Migration Tool
- Restoring RDB Files to GeminiDB Redis API (Recommended)
- 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
-
FAQs
- Most Asked Questions
-
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 Applications Need to Be Changed for Client Connection?
- 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?
- 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 Query Using the Keys Command?
- 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?
- 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?
- 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?
- 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?
- 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?
- Backup and Restoration
-
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
-
GeminiDB Influx API
- Service Overview
- Getting Started with GeminiDB Influx API
-
Working with GeminiDB Influx API
- Permissions Management
- Instance Lifecycle
- Instance Modifications
- Connection Management
- Migrating Data
- Database Commands
- Cold and Hot Data Separation
- Data Backup
- Data Restoration
-
Parameter Template Management
- Creating a Parameter Template
- Modifying 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 a Parameter Template Description
- Deleting a Parameter Template
- Monitoring and Alarm Reporting
- Audit on Instance Operations
- Billing Management
-
FAQs
-
Product Consulting
- What Do I Need to Note When Using GeminiDB Influx?
- What Does the Availability of GeminiDB Influx Instances Mean?
- Does GeminiDB Influx Can Convert Multiple Columns to Multiple Rows?
- How Much Data Can GeminiDB Influx Hold?
- Can I Access GeminiDB Influx 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?
- Billing
- Database Connection
- Backup and Restoration
- Regions and AZs
- Instance Freezing, Release, Deletion, and Unsubscription
-
Product Consulting
- Change History
-
GeminiDB Cassandra API
- Service Overview
- 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
- Enterprise Project
- Billing Management
-
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 Do I Set Paging Query with Java?
- Database Connection
- Backup and Restoration
- Instance Freezing, Release, Deletion, and Unsubscription
- GeminiDB DynamoDB Instances
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Quick Start
-
APIs v3
- 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
- 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
- Backups and Restorations
-
Parameter Templates
- Obtaining Parameter Templates
- Creating a Parameter Template
- Modifying Parameters in a Parameter Template
- Applying a Parameter Template
- Modifying Parameters of a Specified Instance
- Querying Instance Parameter Settings
- Obtaining Parameters of a Specified Parameter Template
- Deleting a Parameter Template
- Tags
- Quotas
- Disaster Recovery
- API v3 (Unavailable Soon)
- Permission Policies and Supported Actions
- Appendixes
- Change History
- SDK Reference
Usage Specifications and Suggestions
This section describes the GeminiDB Influx instance specifications and provides suggestions for using GeminiDB Influx from the aspects of naming, TAG, FIELD, and query to solve common problems such as incorrect usage, low efficiency, and difficult maintenance.
Terms and Definition
- Rule: a convention that must be followed when you use GeminiDB Influx API.
- Suggestion: a convention that must be considered when you use GeminiDB Influx API.
Description
- Retention Policy (RP): includes information such as the data retention period and number of backups.
- Data objects: database, RP, MEASUREMENT, TAG, and FIELD
Naming
- Rules
- The name of a database object must start with a lowercase letter and consist of letters or digits. The length of the name cannot exceed 32 bytes.
- The name of a database object contains a maximum of 120 characters in the format of <Database name>.<RP name>.<MEASUREMENT name>.
- The name of the database object cannot use the system reserved keyword.
The system reserved keywords include: ALL,ALTER,ANY,AS,ASC,BEGIN,BY,CREATE,CONTINUOUS,DATABASE,DATABASES,DEFAULT,DELETE,DESC,DESTINATIONS,DIAGNOSTICS,DISTINCT,DROP,DURATION,END,EVERY,EXPLAIN,FIELD,FOR,FROM,GRANT,GRANTS,GROUP,GROUPS,IN,INF,INSERT,INTO,KEY,KEYS,KILL,LIMIT,SHOW,MEASUREMENT,MEASUREMENTS,NAME,OFFSET,ON,ORDER,PASSWORD,POLICY,POLICIES,PRIVILEGES,QUERIES,QUERY,READ,REPLICATION,RESAMPLE,RETENTION,REVOKE,SELECT,SERIES,SET,SHARD,SHARDS,SLIMIT,SOFFSET,STATS,SUBSCRIPTION,SUBSCRIPTIONS,TAG,TO,USER,USERS,VALUES,WHERE,WITH,WRITE,WARM
- The name of a database object cannot contain Chinese characters or the following special characters: ["].$,/\0*?~#:|'
- The database name cannot be the same as the database name used by systems such as _internal, _kapacitor, _heimdall, _vision and opentsdb.
- TAG names cannot be updated or renamed.
- Suggestions
- Shorter TAG names can save more resources because each tag name has an index which is stored in the memory.
- The names of TAG KEY and FIELD KEY cannot be the same.
TAG
- Rules
- Fields that use the InfluxQL function (such as MAX, MIN, and COUNT) are stored as FIELDs.
- TAG supports only the character string type. If the stored value is not of the character string type, the value is stored as FIELD.
- Suggestions
- TAG can distinguish data better than the MEASUREMENT name does.
- Design the TIME precision as required. Lower precision can bring better performance.
- The field often used as a search criterion is stored as a TAG.
- The field that uses GROUP BY is stored as a TAG.
FIELD
- Rule: The type of each field must be the same.
- Suggestion: The number of FIELDs should not be too large. Each FIELD is calculated independently. Too many FIELDs may cause the fuzzy query to fail.
Query
- Rules
- Do not run SELECT * FROM to query data.
- The query statement must contain the time range restriction.
- Before bringing a service online, perform a load test to measure the performance of the database in peak hours.
- Suggestions
- During the query, select only the fields that need to be returned.
- Shorter time range can bring better query performance.
- The more accurate the TAG value is, the better the query performance is. Use a single time series for query, that is, specify all TAG values or more TAG values.
- Add fill(none) after group by time intervals in queries. The function of fill(none) is that no timestamp or value is returned for an interval without data points. If there is sparse data, the number of returned query results can be greatly reduced.
- If nested queries are used, place the filter for querying time range in the outermost query.
Delete
Suggestion: Do not use the DELETE method to delete data. Set a proper retention period (RP) as required so that data can be automatically deleted.
Others
- Rule: Select instance specifications based on the service time series scale, number of client connections, and number of retention policies. For details, see Instance Specifications.
If the database load exceeds the specification limit, unpredictable problems may occur. In severe cases, the database may be unavailable.
- Suggestion: Use ELB to connect to the database. For details, see Connecting to an Instance Using a Load Balancer Address (Recommended).
- Suggestion: After cold storage is enabled, do not write the data if data within a period of time has been transferred into cold storage. Otherwise, an error may occur.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.