Pokud jste již Redis nastavili, zůstal bych u toho, protože je velmi rychlý a snadno se spravuje. MemCached a Redis jsou velmi podobné, když se používají pro ukládání do mezipaměti, ale hlavní rozdíl je v tom, že Redis lze nastavit tak, aby přetrvával na disku na pozadí, což znamená, že pokud server selže, data v paměti lze znovu načíst.
Osobně bych MongoDb nepoužil pro persistenci relace z důvodu rychlosti, ale pokud bych používal MemCached, možná bych ji použil jako zálohu pro relace. např. Dojde k chybě zápisu dat relace do MemCached a Mongo, ale pouze čtení z MemCached a použití Mongo k obnovení.
Sečteno a podtrženo, myslím, že vaše volba použít Redis je nejlepší pro to, co jste popsal