title: Keeping data layer as separate deployments
body: <p>Is there a name for this architectural style in which data is stripped out of a service into separate deployments? Or does it resemble something?</p>
  
  <ol>
  <li>Every bounded context is composed of UI, one or several business services (BS) and one or several internal data providers (DP).</li>
  <li>BS are stateless and are not allowed to store data anywhere else than via REST API exposed by their DP. They must not "talk" to any other service.</li>
  <li>DP can use namespaces in databases running in a corporate cloud (for instance keyspace in Cassandra).</li>
  <li>DP may talk to external services (outside bounded context) through their gateways.</li>
  </ol>
  
  <p>I can see lots of problems in here and not that many benefits. Could you provide your non-biased opinion on this?</p>
  
  <p><a href="https://i.stack.imgur.com/3dMs2.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/3dMs2.png" alt="Architecture"></a></p>