TL;DR: Если коротко - абсолютно верный ответ дал
Sanes, то есть проект будет хорошо работать если его сделает разбирающийся в своей области специалист.
Longread: Скажем так: разница между реализациями на разных технологиях будет, и весьма серьезная, но вы как заказчик и пользователь готового продукта ее не заметите (в идеальном мире). В реальности более компетентный исполнитель даже на менее подходящем стеке сделает качественнее. С другой стороны важно не только (и не столько) качество реализации, сколько распространенность технологии и наличие спецов с не запредельным ценником на обслуживание системы. По этому лучший выбор - спецы, хорошо реализующие проекты (с портфолио) на неэкзотичной технологии.
Все остальные вопросы вы задаете не по адресу, а большинство из них выдает полную некомпетентность в вопросе и вызывают улыбку (без обид, таких вопросов здесь реально очень много, просто в основном мало кто понимает что нужно искать на самом деле, вместо перебора модных слов).
Например достаточно странно тут:
...несколько миллионов статичных сгенерированных страниц... данные из базы будут комбинироваться и выводиться в зависимости от типа страницы.
Статикой тут даже не пахнет.
Какой тип сервера выбрать apache или nginx?
Понятно что речь идет о выборе софта (который на самом деле тоже сильно зависит от нюансов проекта, а кроме того еще и может комбинироваться), но слово "тип" не применимо в данном контексте и больше подходит к описанию железа или ОС.
Какую БД использовать для оптимальной и бесперебойной работы
Тип бд никак не влияет на бесперебойность работы (если не брать какой-то откровенный треш или нестабильные релизы), а производительность зависит от правильного подбора архитектуры, где есть КУЧА нюансов, таких как отношение количества запросов на запись и чтение, индексы нужного типа, необходимость в процедурах/триггерах, еще куча всяких вещей которые для вас, как для неспециалиста неочевидны или неизвестны.
нужно ли кэширование базы?
на 90% уверен что да, нужно, но все зависит от специфики и нюансов, вполне возможно что у вас кеш будет вечно холодный или вечно протухший, кроме того кэш - инструмент оптимизации, то есть сначала пишется логика, а за тем решают где и что можно закешировать без ущерба консистентности и актуальности.
Какие технологии использовать для бэк-части проекта (логика вывода данных, запросы к БД)?
Выше осветил данный вопрос.
Как и на чем лучше написать админку (или есть готовые решения/фрэймворки)?
Если вы не пишете ее самостоятельно, то ответ тот же что и для пункта выше, кроме того КРАЙНЕ РЕДКО админка пишется на технологии отличной от фронта.