какой анализ вы делаете перед тем, как поместить его в базу данных? У меня складывается впечатление, что это довольно просто, когда в каждой записи содержится одна таблица - если нет, то мои извинения.
Сжатие сводится к удалению дублирования, и в файле журнала большая часть дублирования происходит между записями, а не внутри каждой записи, поэтому сжатие каждой записи по отдельности не будет большим выигрышем.
Это не в моей голове, так что не стесняйтесь стрелять в него в огне, но я хотел бы разбить стол на несколько небольших столов, содержащих отдельные части входа. В этом случае запись журнала будет состоять в основном из отметки времени (как тип DATE, а не строки), а также набора индексов для других таблиц (например, запрос IP, тип запроса, запрошенный URL, тип браузера и т. Д.)
Конечно, это может быть компромиссом, поскольку это сделает базу данных более сложной в обслуживании, но, с другой стороны, это позволит выполнять содержательные запросы, такие как «показать мне все уникальные IP-адреса, которые запрашивали страницу X в последняя неделя ".