I'm building an application which lets users view a large amount of data about a single single entity (lets say it displays a users health profile for the day) via a single webpage. The data comes from an external API in a single JSON response, which is requested when a user views a profile page.
I have no control over the data coming in, but I would like to store this unnormalised data in my own database each time a user page is viewed. The idea is to build a history of each profile, so I can display a 'progress over time' of a users health profile.
I also want to report, gather statistics, and display leaderboards from the data, i.e. "User who has ran the most kms this week", or "User with the fastest 200m freestyle this month".
I have read about CQRS but never used it. I remember reading that it's useful for situations where you are storing large chunks of unnormalised data from a single source into a database, which seems very similar to my situation.
It would be great to hear from someone with experience using CQRS. Does this seem like a valid use case? Or am I adding unneeded complexity to my system?