>решение в стиле говнокод: использовать сиквенс-функцию вместо автоинкремента, у которой ограничивать максимальное количество id в таблице, а последовательность айдишников зацикливать, и использовать insert ignore для затирания старых новыми.
да, решение сильно в стиле говнокод, и в данной ситуации не получится, тк есть нюансы, например пакеты делятся по какому-то признаку, и в каждом конкретном признаке количество пакетов может быть от одного до нескольких миллионов. кроме того, удаление должно производиться не случайным образом, а строго за заданный период времени (поступивших данных), т.е. грубо говоря должен чистится архив, удаление старых ненужных записей.