Redundância de BD em aplicação JPA

Boa tarde pessoal,

Gostaria de saber se vocês já trabalharam em algum projeto utilizando redundância de banco de dados em uma aplicação utilizando JPA.
A minha idéia inicial seria utilizar dois Bancos de dados.
Caso um banco venha a falhar o outro banco assumirá.

Já dei uma lida também e vi muita gente falando em armazenamento em memória (cache).

Alguém tem idéia de como posso implementar?