Можно ли хранить данные в redis?
Redis можно настроить сбрасывать данные на диск по определенным условиям (время, количество записей и т.п.)
Теоретически данные нужные можно хранить там, но надо понимать что Redis это все-таки "горячее" хранилище. 
Можно там хранить данные но я бы все-таки использовал более надежное хранилище.
Самый простой вариант - Redis + MySQL, при этом в Redis хранить только данные которые нужны сейчас, остальное - в MySQL

Еще, как вариант, если это какие-то графики/метрики - можно использовать специализированную БД для временных данных, например InfluxDB и другие
Можно. 

Я в нескольких проектах(игры) использую Redis в качестве единственной базы данных. Некоторые экземпляры работают уже по 5 лет и полет вполне нормальный.

С определенной периодичностью Redis скидывает данные на диск. У меня это зависит от кол-ва изменений в базе за определенные промежутки времени.

У меня изначально была проблема с производительностью. Мне не хватало скорости редис. Слишком большое кол-во запросов было к базе. Я написал обертку на руби и стал складывать и читать данные из 8 баз редис, запущенных на одном физическом сервере. В современных версиях редиса такое шардирование уже есть из коробки.

Даже такая работа редис, когда данные размазаны на несколько баз не вызвала проблем за несколько лет эксплуатации.

У редис есть одна особенность, которая отсутствует у реляционных баз данных. Если вам надо удалить большое кол-во записей из базы(скажем несколько десятков миллионов), то сделать это придется с помощью десятков миллионов запросов к базе. В реляционной базе - пришлось бы выполнить одну команду. Поэтому чтобы не положить базу редис от такой нагрузки - приходится чистить базу с помощью отдельного скрипта, который создает постоянную небольшую нагрузку.