Plan your instance
Diese Seite ist noch nicht in deiner Sprache verfügbar. Englische Seite aufrufen
STACKIT offers maximum flexibility in conjunction with Redis. However, technical limitations require certain restrictions. To avoid technical debt and therefore downtimes and unwanted future migration, it is best practice to plan your Redis instance in advance.
Plan your needs
Section titled “Plan your needs”Before selecting your Redis instance size, you need to analyze your data patterns and requirements:
Data Volume Analysis
Section titled “Data Volume Analysis”Start by estimating your current and projected data size. As a rule of thumb, calculate with a factor of 2 to 2.5 for data growth in the next two years.
Query Patterns
Section titled “Query Patterns”Examine how your application interacts with the database. Applications with high read-to-write ratios may benefit from different sizing strategies than write-heavy workloads. Also consider if your application is more read or write heavy.
Limitations
Section titled “Limitations”You can consult Architecture of Redis for the limitations in flexibility. For a quick reference you can consult this table:
| Parameter | Downgrade possible | Upgrade possible | Downtime |
|---|---|---|---|
| type (single/replica) | - | ||
| vCPU | ✓ | ✓ | |
| RAM | ✓ | ✓ | |
| disk | ✓ | ✓ |
You can make changes to ACL and disk threshold settings without any limitations and without downtime.
Best Practices
Section titled “Best Practices”You need to keep the limitations in mind. This parahraph helps you to make good assumptions and choices to set up an instance.
You set vertical and horizontal scaling with the available plans. A plan determines the number of vCPUs, the size of RAM and disk and whether your instance runs on a single node or as a Galera cluster on 3 nodes.
Instance type
Section titled “Instance type”If you plan to set up an instance for production use, we strongly recommend a plan with 3 nodes (replica).
At first you need to distinguish if short downtimes are acceptable. If yes, you can start with a small plan and upgrade it, when you consistently reach 80% of either cpu or ram consumption. If downtime isn’t acceptable, you need to estimate your needs.
As a rule of thumb you may use this ruleset:
- Read-heavy: 1-2 cpus sufficient
- Write-heavy or aggregations: 4+ cpus
- Minimum: 125% of data size
- Optimal: 150%+ of active data size
- Rule of thumb: 4GB RAM at minimum, better 8GB for production
As a rule of thumb you may use this ruleset:
- Write-heavy: 3000-10000+ IOPS
- Mixed workload: 2000-5000 IOPS
Please note, that Redis is an in-memory-database. So the disk is only used for writing the persistence file.
Storage-size
Section titled “Storage-size”If downtime is acceptable, then it is safe to start with a smaller disk size. As a rule of thumb, start with your data size and multiplied by 3 again for the growth factor.
Version
Section titled “Version”Start with the highest version your client applications support. Please note that also minor version differences prevent some clients to connect.