Ignorando todo el debate NoSQL vs SQL, creo que el mejor enfoque es combinarlos. En otras palabras, use MySQL para algunas partes del sistema (búsquedas complejas, transacciones) y redis para otras (rendimiento, contadores, etc.).
En mi experiencia, los problemas de rendimiento relacionados con la escalabilidad (muchos usuarios...) eventualmente te obligan a agregar algún tipo de caché para eliminar la carga del servidor MySQL y redis/memcached es muy bueno en eso.