Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

10
  • 3
    Is it an option to store the changes themselves in an append-only manner and only reconstruct the full state of a call when needed? Commented Jan 26, 2021 at 7:43
  • Is noSql a hard requirement, or have you concidered using a database with support for transactions (postgresql.org/docs/current/tutorial-transactions.html)? Also, retry loops are indeed sloppy, look for an event queue pattern Commented Jan 26, 2021 at 10:23
  • +1 for Bart's suggestion. You can partition the changes by phone number for example. You can also have an hourly/daily process that processes all "closed" calls to reduce the amount of data stored. Commented Jan 26, 2021 at 16:58
  • @BartvanIngenSchenau I am trying to model most requests that way as much as possible, but there will be an occasional update that overwrites a value. Commented Jan 26, 2021 at 18:53
  • @s.lg It's not a hard requirement, just chosen for its horizontal scalability. Horizontal scalability is important in this application. Commented Jan 26, 2021 at 18:54