Mautic Crunching mysqld - suggestions/help

We are running a highly active client at the moment, they have high traffic coming into their site and app which is updating mautic constantly, there are around 6 campaigns that are running and around 15+ different segments.

I have tried to optimize the segment updates according to what is mission critical on a minute basis and the heavier segments late at night when there is less activity, however we are seeing extremenly high CPU usage as you can see from the video below.

My server confirguration is linux with 4 dedicated CPU and 16GB of RAM.

Any thoughts on how to imrpove things ? Would moving the DB to an RDS help out ?

Screen Recording 2021-11-29 at 11.25.17