Much of the database structure is based on Riot's API's DTOs.
Consider simplifying the schema and comparing benchmarks for various use-cases against the present layout.
One example of something that appears to serve little use is the ParticipantIdentity table, which connects matches (MatchDetail) with players (Summoner).
Do note that some (considerably large!) DTOs are not stored at the moment, such as Timeline data, which should be looked at before undertaking this.
Much of the database structure is based on Riot's API's DTOs.
Consider simplifying the schema and comparing benchmarks for various use-cases against the present layout.
One example of something that appears to serve little use is the ParticipantIdentity table, which connects matches (MatchDetail) with players (Summoner).
Do note that some (considerably large!) DTOs are not stored at the moment, such as Timeline data, which should be looked at before undertaking this.