title: Using Step Function for Synchronizing Primay Data Source with Secondary Data Sources and trigger Actions based on Data Updates
body: <p>I have an application which acts as Data Layer and is responsible for performing all the CRUD operation on the database. Due to availability issue, we maintain Redis cache over it, which will ultimately act as the secondary data source. Hitting primary data sources frequently leads to throttling and latency issues.</p>
  
  <p>Certain actions also gets triggered on the basis of updates published to the DataBase.</p>
  
  <p>I am trying to abstract out the secondary data source updates and actions triggered on the basis of these updates from the data access layer to <a href="https://i.stack.imgur.com/ttwF2.jpg" rel="nofollow noreferrer">serverless architecture</a>. </p>
  
  <p>Is the step-function best suited for the mentioned usecase? Or I should think of different architecture?</p>
  
  <p><a href="https://i.stack.imgur.com/Tfmtu.jpg" rel="nofollow noreferrer">Current Architecture</a></p>