Анатолий K: я если честно запутался уже что есть старое и что есть меленное. glob и всякие там opendir старые и быстрые, RecursiveDirectoryIterator медленнее но дает возможность писать более читабельный код.
Александр: это да, но по сути ничего не меняется. У нас все так же используются все партиции, нагрузка на базу остается прежней, все так же все индексы должны висеть в памяти а штуки типа уникальных индексов уже сильно усложняются. Профит сомнительный при значительном увеличении сложности.
Сергей Иванов: это понятно, просто мне кажется что тут партиционирование не нужно вовсе. Если бы скажем мы вели учет заказов или что-то в этом духе, логи какие-то, тут да, можно было бы получить какой-то профит. А так...
Александр: это преждевременная оптимизация. Если вам так интересно - нагенерьте фикстурками данных в таблицу в те самые пару миллионов и проверьте как себя ведет база данных.
В целом если у вас в рамках вашей логики будут учавствовать в запросах все таблицы, то смысла делить таблицу на партиции нету особо.
Доктрина по умолчанию не поддерживает партиционирование, для этого нужно написать довольно много кастылей, но организовать это дело можно. Да и не вижу смысла в этом. Партиционирование полезно в основном тогда, когда у нас устаревают данные быстро и нужно как-то это дело разбивать.