Составной первичный ключ в этом случае выглядит лучше, поскольку ключ становится индексом покрытия. И почему вы думаете, что это потребует расколов? Поле автоинкремента должно быть первым в составном первичном ключе в InnoDB, то есть все новые строки будут добавлены в конец.
И автоинкрементное поле в InnoDB уникально по всей таблице даже в составном первичном ключе, в отличие от того, что в MyIsam, где оно перезапускается для каждой новой оставшейся части первичного ключа.