хранение изображений на сервере sql

Я пытаюсь собрать дизайн БД для хранения изображений. Многие из вас, возможно, имели опыт разработки базы данных для хранения изображений и связанных с этим проблем.

В конечном итоге в базе данных могут храниться сотни тысяч изображений. Я планирую использовать базу данных SQL Server 2008 и структуру сущностей. Планируется использовать тип данных FILESTREAM для хранения изображений. Ниже приведен список атрибутов, которые я рассматривал для хранения каждого изображения в БД.

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

Вещи, которые я пытаюсь выяснить: 1) Мне любопытно, не упустил ли я какой-либо другой важный атрибут изображения. 2) Какие могут быть последствия при резервном копировании базы данных, поскольку изображения хранятся в файловой системе из-за использования типа данных FILESTREAM?

Спасибо! Чан


person pencilslate    schedule 09.08.2009    source источник
comment
Можете ли вы дать нам обновление? Как дела пошли?   -  person Eric Schneider    schedule 13.08.2012


Ответы (3)


1) Я могу сделать здесь дикое предположение, но если ваши изображения будут цифровыми фотографиями, вы можете рассмотреть возможность хранения Exif атрибуты метаданных, которые генерируют все (если не 99%) цифровые камеры.

2) Не влияет на выполнение резервного копирования с файловым потоком, SQL Server выполняет здесь всю тяжелую работу. Данные файлового потока будут частью .BAK-файла вашей базы данных, поэтому вам не нужно делать какие-либо другие резервные копии файловой системы.

Что вы, возможно, не учли, так это то, что FILESTREAM является новой функцией и, следовательно, не может использоваться с некоторыми другими функциями сервера sql, такими как:

  • зеркалирование базы данных
  • Репликация (не может реплицировать столбцы файлового потока)
  • снимки базы данных
person Nick Kavadias    schedule 10.08.2009

backup будет хранить в нем образы для обеспечения согласованности транзакций. что касается атрибутов, это зависит от ваших потребностей. я не могу думать ни о каких других атрибутах, которые вам не хватает.

person Mladen Prajdic    schedule 09.08.2009

Я бы также добавил кодировку (jpeg, gif, png, bmp...), тип MIME (image/png) и так далее, поэтому вам не нужно каждый раз анализировать имя файла; также размер файла (если вам нужно его отобразить).

person Sklivvz    schedule 10.08.2009
comment
Тип изображения означает кодировку, я думаю: P (что он уже сохраняет для каждого изображения) - person Am1rr3zA; 10.08.2009
comment
да сэр! Тип изображения предназначался для кодирования. Я мог бы привести пример для ясности. - person pencilslate; 11.08.2009