Один из наших Java-проектов нуждается в избыточной системе хранилища данных, которая обладает высокой надежностью, чтобы в случае сбоя одного из механизмов баз данных приложение все равно могло считывать и записывать данные в другие хранилища. После восстановления неисправного узла новые данные автоматически синхронизируются обратно.
Мы думали о смешанной среде, такой как база данных PostgreSQL в качестве основного узла, другая база данных PostgreSQL на другом сервере в качестве вторичного узла и т. Д. база данных файлов HSQL рядом с серверным приложением в качестве третьего узла.
Нам нравится использовать слой JPA (возможно, Hibernate) в верхней части этой системы. Из-за постоянства я думал о прозрачном драйвере JDBC, который скрывает все детали репликации. Я нашел эти проекты в Интернете до сих пор:
Ни одно из этих решений не выглядит многообещающим. HA-JDBC устарел, и кажется, что Tungsten в первую очередь для MySQL. Я даже не нашел примеров использования их с JPA.
Есть ли другие решения для нас? Может быть, мы должны подойти к проблеме по-другому?