Сохранение изображений: MongoDb vs File System - программирование
Подтвердить что ты не робот

Сохранение изображений: MongoDb vs File System

Мне нужно хранить большое количество изображений (примерно с 10 000 изображений в день). Средний размер от 1 до 10 МБ для каждого изображения.

Я могу хранить эти изображения в MongoDB, используя библиотеку GridFS, или просто сохраняя преобразование Base64 в виде строки.

Мой вопрос в том, что MongoDB подходит для такой полезной нагрузки или лучше использовать файловую систему?

Большое спасибо,

4b9b3361

Ответ 1

MongoDB GridFS имеет множество преимуществ перед нормальной файловой системой, и он определенно способен справиться с объемом данных, которые вы описываете, поскольку вы можете масштабировать с помощью осколочного кластера монго. Я не сохранил эти бинарные данные сам по себе, но я не думаю, что существует реальная разница между двоичными данными и текстом. Итак: да, он подходит для полезной нагрузки.

Ответ 2

Реализация запросов и операций с сохраняемыми файловыми объектами проще с помощью GridFS. Кроме того, GridFS обслуживает резервное копирование/репликацию/масштабирование. Тем не менее, работа с файлами выполняется быстрее с помощью файловой системы + Nginx, чем GridFS + Nginx (смотрите здесь: https://www.coffeepowered.net/2010/02/17/serving-files-out-of-gridfs/). Однако медленная скорость работы GridFS может использоваться при использовании осколков