1

I'm using postgresql and neo4j as backend data stores for my application (More about Polyglot Persistence in http://martinfowler.com/bliki/PolyglotPersistence.html ). Both Neo4j and Postgresql support backup mechanisms.

Neo4j(Online backup) : http://docs.neo4j.org/chunked/stable/operations-backup.html

Postgres(Point In Time Recovery(PITR) backup): http://www.postgresql.org/docs/9.1/static/continuous-archiving.html

The problem here is how to take backups of these two stores such that on recovery you get back a consistent state even at the cost of losing some data. Any ideas/suggestions are welcome.

new_sys_admin
  • 315
  • 2
  • 5
  • 15
  • Do you mean consistent with *each other*, i.e. getting a copy of both stores at the same moment in time? – Craig Ringer Apr 04 '14 at 04:50
  • @Craig : Thanks for your reply. I'm a co-developer on this application. You're right, we're looking for a way to get a copy of both stores at the same point in time. Because we maintain transaction level consistency across data stores via means of an 'uber' unit of work, getting a snapshot of all stores at a single point in time will allow a recoverable backup to be taken. Posted on behalf of user3496525 – Shashank Shekhar Apr 04 '14 at 05:42
  • Only easy way I can think of is to take a filesystem snapshot on a filesystem shared by both DBs. But forcing both onto one FS will have performance impacts and may not be practical. – Craig Ringer Apr 04 '14 at 07:16
  • Are you using two-phase commits between the two? – jjanes Apr 04 '14 at 15:05
  • @jjanes Yes. We use two-phase commit. – new_sys_admin Apr 05 '14 at 03:57

0 Answers0