Файл будет перезагружаться при каждом выполнении сценария PHP, просто из-за того, что он не сохраняет предыдущее состояние.Когда вы говорите о большом файле, о скольких записях / байтах мы говорим?
Чтобы ускорить чтение такого файла, вы можете поместить его на RAM-диск (если используете Linux), что намного быстреечем SSD.Или прочитайте его и сохраните эквивалент CSV с фиксированной длиной записи.Фиксированная длина записи позволит вам переходить к сегментам по вашему желанию и легко получать количество записей.
Таким образом, если длина вашей записи стала 90 байтов / символов, и вы хотите, чтобы записи были от 100 до 109, вы открыли бы файл для чтения, fseek в положение 9000 (90 * 100) и захватили следующие 900 символов.