Cloud-Native Applications in Java
上QQ阅读APP看书,第一时间看更新

Database aggregation

Aggregation at the data tier. In this approach, data is pre-aggregated into an operational data store (ODS) typically a document database. This approach is useful for scenarios where there is additional business inference on the aggregated data that is difficult to compute in real time through a microservice, and hence can be pre-computed by an analytical engine:

Benefits

The benefits of using the database aggregation pattern are as follows:

  • Additional enrichment of data by analytical jobs is possible. For example, in a customer 360° view, based on the customer portfolio aggregated in the ODS, additional analytics can be applied for next-best-action (NBA) scenarios.
  • More flexible and capable as compared to the earlier approaches, and finer control on the data model can be exercised.

Trade-offs

The trade-offs associated with the database aggregation pattern are as follows:

  • Higher complexity
  • Data duplication and more data storage requirements
  • Additional ETL or change data capture (CDC) tools required to send the data from the system of a record to a central ODS store