По тому что в большинстве своем это длительный процесс. Создаём где-то в фоне задачу, которая выкачивает нужные объекты, пакует архив и загружает во временный s3, отдавая ссылку на файл. В php не делать скачивание и запаковку - отдать задачу серверу. Если это все происходит в AWS то это можно сделать на lambda, sqs, или даже с применением stepFunctions. Можно много чего придумать. Там есть несколько ETL сервисов, можно подумать в эту сторону. Всегда есть вариант использования просто виртуалки. В любом случае синхронно это не слелать