do many of the statistical queries use the whole month's data?
have you considered partitioning the log table by day? if you can
reduce the number of rows involved in the table-scans by partitioning
it'll be help performance.
I am summarising by hour, day, week and month. So I guess partitioning by day would help for the daily and hourly summaries.
Thanks for the suggestions everyone, I'll look into all these ideas.
cheers