Хранение информации



Хранение Изображений в Базе Данных

Стоит ли хранить изображения в БД  Ноябрь 6, 2020 – 02:07

Стоит ли хранить изображения в БДУ меня частенько спрашивают про то, где лучше хранить изображения в базе данных или в виде обычных файлов, а путь держать уже в базе данных. Конечно, 100% однозначного ответа не существует, однако, своё видение я в этой статье изложу.

На мой взгляд, преимущество хранения изображений в базе данных всего одно: отсутствие противоречий. Например, Вы создали какую-то запись в таблице, у которой есть путь к изображению. А потом это изображение случайно было удалено, в итоге, запись уже без изображения, хотя путь к нему всё равно имеется. Вот этого недостатка хранение изображений в базе данных позволяет избежать.

Теперь разберём явные минусы хранения изображений в БД:

  • Изображение находится в BLOB, а это набор байтов. И чтобы этот набор байтов показать пользователю в виде изображения, придётся хорошенько попотеть с тем же header.
  • Изображения - достаточно ёмкие элементы, извлечь которые задача не из лёгких для всегда ограниченной памяти сервера.
  • Файловая система заточена под работу с файлами, поэтому она гораздо быстрее обработает то же изображение, чем MySQL будет его извлекать из таблицы, а Вы потом ещё будете создавать изображение из байтов.

Исходя из всего этого, мой ответ на вопрос - не стоит. Храните в виде обычных файлов, а пути к ним сохраняйте уже в базе данных.

  • Михаил Русаков

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт!

Добавляйтесь ко мне в друзья ВКонтакте: .
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: .

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:
  2. Текстовая ссылка:

Source: myrusakov.ru


Обучение разработке под kubernetes на javakube

Похожие публикации:

  1. Хранение Сессий в Базе Данных
  2. Хранение Паролей в Базе Данных
  3. Хранение Времени в Базе Данных