Время обработки хеш-карты не должно значительно увеличиваться по мере роста. Возможно, ваша карта искажается из-за неподходящей функции хеширования или слишком большого заполнения. Если вы не используете больше оперативной памяти, чем вы можете получить из системы, вам не нужно разбивать вещи.
Что я видел в Java при запуске огромных хеш-карт (или любой коллекции) с большим количеством объектов в памяти, так это то, что виртуальная машина сходит с ума при попытке запустить сборщик мусора. Он доходит до того, что 90% времени тратится на то, чтобы JVM запускала сборщик мусора, что занимает некоторое время и обнаруживает, что почти каждый объект имеет ссылку.
Я предлагаю профилировать ваше приложение, и если это сборщик мусора, то увеличение пространства кучи и настройка сборщика мусора. Кроме того, это поможет, если вы сможете приблизить необходимый размер ваших хеш-карт и обеспечить достаточно большие выделения (см. Параметры initialCapacity и loadFactor в конструкторе).