Хорошо хранить изображения в БД или нет? - PullRequest
1 голос
/ 11 августа 2009

Что мне делать? У меня есть более 1600 изображений. Должен ли я хранить их непосредственно в приложении или хранить их в базе данных. Прямо сейчас я храню в приложении, и мое приложение зависает, поэтому, пожалуйста, помогите


Точная копия: Изображения пользователя: база данных или хранилище файловой системы?
Точный дубликат: Хранение изображений в базе данных: да или нет?
Точный дубликат: Должен ли я хранить свои изображения в базе данных или папках?
Точный дубликат: Будете ли вы хранить двоичные данные в базе данных или папках?
Точная копия: Хранить изображения в виде файлов или базы данных для веб-приложения?
Точный дубликат: Хранение небольшого количества изображений: blob или fs?
Точный дубликат: [сохранить изображение в файловой системе или базе данных?] [7]

Ответы [ 2 ]

1 голос
/ 11 августа 2009

Как и в большинстве вопросов, это не так просто, как кажется. В некоторых случаях целесообразно хранить изображения в базе данных.

  • Вы храните изображения, которые динамически меняется, скажем, счета и вы хотели получить счет как это было 1 января 2007 года?
  • Правительство хочет, чтобы вы поддерживали 6 лет истории Изображения хранятся в база данных не требует другая стратегия резервного копирования. Изображений хранится в файловой системе do
  • Проще контролировать доступ к изображения, если они находятся в базе данных. Свободные администраторы могут получить доступ к любой папке на диск. Требуется действительно решительный Админ, чтобы шпионить в базе данных, чтобы извлечь изображения

С другой стороны, есть проблемы, связанные

  • Требуется дополнительный код для извлечения и потоковое изображение
  • Задержка может быть медленнее, чем прямая доступ к файлу
  • Тяжелая загрузка на веб-сервере

Этот ответ цитируется как " Conrad "

0 голосов
/ 11 августа 2009

Как указывалось ранее, это зависит.

Одной из наиболее распространенных практик является выбор размера изображения. Для очень маленьких изображений, таких как миниатюры, значки и т. Д., Вы, безусловно, сохраняете их в БД и можете хранить их как поле объекта (например, контакт).

Для изображений среднего размера все же имеет смысл сохранять их в БД. Тем не менее, вы должны решить сами, что такое изображение среднего размера (мой порог составляет 1 МБ), и вы должны хранить изображение не как поле объекта: вы должны создать объект изображения и отношение к заинтересованному объекту ( скажи контакт).

Наконец, очень большие изображения не должны храниться в БД. Вы храните их на диске и сохраняете в БД их пути. Это необходимо из-за разной задержки и времени доступа жесткого диска к базе данных. Действительно, именно быстрый доступ к БД через индексы позволяет хранить в БД изображения среднего и малого размера, но с большими изображениями следует обращаться по-разному.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...