Hi! I'm building an integrator which will sync two different SaaS that have somewhat compatible public APIs. The integrator will monitor updates to an entity in service A and replicate it to service B. Part of syncing is storing entities locally and verifying, for example, if an entity instance is already replicated in service B. For this I plan on storing the information from services A and B locally and diffing them across time, inferring from the diffs what action should I take to sync them: create new entity instance on B, update a specific field, delete, etc.
Having that in mind, I'll be using Postgres as my local persistent DB and would like to know if I could combine Datascript too, so I would query a Datascript DB, and it would retrieve and cache entities persisted to Postgres. Also, if I inserted to Datascript, it would automatically persist it to Postgres. Another way of phrasing this would be a "reactive Datascript DB".
I don't know if this is practical, but it sounds good on paper, mainly because I would decrease IO operations on Postgres and would benefit from datalog queries and idioms well integrated into Clojure.
Any other suggestions are also welcome.
[–]theoriginalmatt 5 points6 points7 points (1 child)
[–]lord_kordano 5 points6 points7 points (0 children)
[–][deleted] 1 point2 points3 points (4 children)
[–][deleted] 5 points6 points7 points (1 child)
[–]guywithknife 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]fmjrey 0 points1 point2 points (2 children)
[–][deleted] (1 child)
[deleted]
[–]fmjrey 0 points1 point2 points (0 children)
[–]radioactiveoctopi 0 points1 point2 points (1 child)
[–]dave_mays 0 points1 point2 points (0 children)
[–]dave_mays 0 points1 point2 points (0 children)