0

I've recently started learning about microservice architecture. API gateway is a pattern usually proposed for aggregating data from different microservices which own their data stores. However I wasn't able to find anything about being able to do that in a configurable way.

Scenario: Customers should be able to define reports that use aggregated data from different microservices. This should be configurable by not changing the underlying source code.

Possible solution in monolithic architecture:

  • Based on customer needs custom SQL Query kept in JSON file is prepared that feeds data to Reporting Framework.

Possible solution in microservice architecture I can think of:

  • Having another Reporting microservice using events for synchronization on top of a Data warehouse where we keep information from other microservices. Then we can use simmilar solution as in the monolithic app.

Is there any other way of achieving this? If not are there any patterns ,frameworks , things to consider that can be useful in this scenario ?

Regards

  • 1
    Your solution is pretty close to the right one - generally speaking the right approach is for your microservices to raise relevant events and for something to aggregate those events into the appropriate data structures for reporting. – Ant P Nov 13 '18 at 14:06
  • @AntP Have you seen somewhere an implementation example of such an approach ? – Mateusz Migała Nov 21 '18 at 9:44
2

At our company we are using peekdata.io Data Gateway API and Report Builder that let’s us expose data from several our databases to end users and developers internaly. I think it solves your problem or at least, I would look for a similar solution. We can change and grow the data structures internally, while the users can use the data without changes to them. Have a look, maybe it is not something you are looking for after all.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.