Как быстрее записать в базу PosgresQl?
Быстрее всего - COPY запросом.
При том, сразу из csv файла, локального к СУБД.
Через приложение - сильно лучше тоже COPY. В PDO интерфейс для COPY, впрочем, ужасен.
Хуже - относительно большими insert
ещё хуже - кучей запросов в транзакции
кучей запросов вне общей общей транзакции - очевидно будет очень медленно.
Надеюсь, не циклом по одной модели за раз пишется.
Делайте batch insert штук по 1000-10000 (оптимальное кол-во подбирается опытным путем).