Redis is an in memory database and not suitable for use cases which require persisting data.
When data exceeds available RAM budget and you can't afford Redis on Flash or sharding
When you need complex relational joins, foreign keys, or multi-table ACID transactions
When your query patterns require full-text search without a module like RediSearch
When data must survive without any persistence risk (safety-critical systems)
When strong consistency across distributed nodes is mandatory (Redis Cluster is AP, not CP)