Как грамотно организовать работу с большим количеством интенсивно обновляемых данных?
=======================================================================================

 Суть проблемы: есть набор данных объемом в несколько сотен тысяч строк (десятков мегабайт), если разместить их в таблицу БД MySQL. Эти данные нужно получать со стороннего источника несколько раз в минуту, на лету производить переформатирование и некоторую аналитику, затем сохранять у себя - закешированные данные должны быть доступны в любой момент времени.   
  

Пробовал сделать классическим способом, с сохранением в таблицу MySQL. Но как и следовало ожидать, в таком случае работа идет весьма неэффективно - очень долгий инсерт, даже если разбивать его на несколько этапов. Я не успеваю сохранить данные в базу до следующего вызова скрипта обновления (интервал между вызовами несколько секунд), из-за чего вызовы скриптов начинают "догонять" друг друга. Защиту от параллельных вызовов сделать конечно можно, но в таком случае данные окажутся в неактуальном состоянии (актуальность данных критически важна).  
  

Пока остановился на решении с Redis, сохранении данных в оперативной памяти. В целом все работает, но является ли этот способ лучшим решением проблемы? Оперативная память тоже не бесплатная и не бесконечная. Подскажите, кто сталкивался. 

 Текущая скорость SSD тебе позволит обрабатывать сотни мегабайт в секунду. Любой многопоточный обработчик Node JS на Raspberry Pi будет чувствовать себя хорошо.   
  

То, что вы написали будет себя хорошо чувствовать на любом хостинге за доллар.