Edit: Я неправильно понял вариант использования. Как правило, как и на большинство вопросов, ответ - «в зависимости от обстоятельств». Вы можете обратиться к следующему руководству для сравнения.
Как разрабатывать схемы данных для базы данных MongoDB, во многом зависит от того, как вы к ней обращаетесь.
Если у вас есть такая сущность, как веб-страница, которая всегда содержит определенный набор изображений. И вам всегда нужно загружать их вместе, первый подход предпочтительнее, так как вы можете запросить базу данных только один раз, чтобы получить все необходимые данные.
Если ваши изображения относятся ко многим другим документам, вы захотите запрашивать изображения на основе отношения или некоторого условия, тогда второй вариант более подходит.
Если вы не хотите связывать изображения с какими-либо другими объектами, первый вариант применим для небольшого количества изображений в противном случае, исходя из предоставленных вами полей, я предполагаю, что первый вариант - иметь один документ для хранения изображений на неопределенный срок. Это плохая идея.
MongoDB имеет размер документа 16 МБ ограничение , поэтому однажды вы можете достичь предела, если сохраните много изображений.
Также много операций на уровне документа. В реальных условиях вы можете применить к изображениям операции фильтрации, сортировки, группировки, обновления и удаления. Это намного проще сделать, если они хранятся в виде документов.