@ellz

Как лучше хранить изображения в базе данных MSSQL?

Есть web api на .net core 2. Во время запроса должна выполнится процедура и вернуть изображение из базы. Ответ на клиент приходить в JSON формате. Какой способ лучше, хранить изображение в VARBINARY или хранить изображения в папке Resours, а в БД только путь к изображению (потом подписывать адрес сервера к пути)?
  • Вопрос задан
  • 311 просмотров
Решения вопроса 1
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Хранить изображения в облаке (s3 или s3-совместимым), а в базе ссылки
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@procode
Разработчик
Второе.

Хранить ссылки - проще и быстрее

На самом деле реальная потребность в хранении бинарных данных в базе - не такое частое явление. Обычно можно обойтись ссылками
Ответ написан
Комментировать
jobgemws
@jobgemws
MS SQL Server and .NET Developer, DBA
Два варианта:
1) ссылками как и писали выше
2) бинарными последовательностями (второе нужно если БД постоянно куда то перемещаются или общий вес всех изображений достаточно мал по сравнению со всеми остальными данными внутри самой БД). Также второй вариант есть смысл рассматривать, если вы храните не просто картинку, а что-то вроде распознавания объектов на картинке, тогда проще держать все вместе.
И не забывайте, что при первом варианте нужно будет побеспокоиться не только о резервных копиях, но и о консистентности этих копий к резервным копиям самой БД. Чтобы не получилось так, что восстанавливая БД в другом месте на определенный момент времени, ссылки были на совсем другие изображения
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы