You need to identify the chatty entities which are spamming the database, and exclude them in configuration.yaml (or find a way to make them less chatty.) There’s a lot of information on how to do that, including this link: How to reduce your database size and extend the life of your SD card
Also consider your purge_keep_days. With long- and short-term statistics now available, you might be able to get by keeping the “live” data for fewer days.
If you really want to find out what the problem entities are, the easiest way is to install something like DB Browser and open a copy of the database. There are a number of posts suggesting some good SQL statements to try, but be aware that the database has changed a bit over the past year or so. Here’s one to get you started:
SELECT
sm.entity_id,
COUNT(*) AS row_count
FROM states AS s
JOIN states_meta AS sm
ON s.metadata_id = sm.metadata_id
GROUP BY sm.entity_id
ORDER BY row_count DESC;
Also take a look at your statistics table. You might decide you don’t need all those data kept forever as long-term statistics.
Remember that every time you add a device, HA is going to record every state change for whatever keep_days you specified, and possibly keep some LTS, too. That would be a good time to review the entities created and add any you don’t need to keep to the Recorder exclude list.
For example, you just added the System Monitor integration. Do you know how frequently it updates? Do you know how many entities it’s updating each time? Which ones do you really need to keep a history of?