Devi avere un indice su entrambi i campi
ALTER TABLE alert_hit ADD INDEX `IDX-alert_id-timestamp` (`alert_id`, `timestamp`);
Anche MySQL utilizzerà l'indice multi colonna fino al primo campo per il quale è presente una condizione di intervallo nella clausola WHERE, quindi in questo caso l'ordine è importante e timestamp
dovrebbe essere l'ultimo nell'indice.
Come suggerito da @spencer7593 selezionando COUNT(1)
invece di count(id)
potrebbe anche essere migliore.