Ваши причины хранить капли размером менее 0,3 МБ в базе данных? - PullRequest
0 голосов

[1], [2] и многие другие ссылки дают заключение, что большие двоичные объекты размером менее 0,3-1 МБ должны храниться в базе данных, а большие двоичные объекты - более 1 МБ - в файловой системе (возможно, через FILESTREAM).

FACEBOOK.com хранит 6,5 (30 с уменьшенными и уменьшенными версиями) миллиардов изображений в файловой системе [3].

Белая книга Рэндала [2] обосновывает это:
alt text

Что ж, это не убеждает меня в необходимости хранить капли в базе данных, а только в том факте, что к ним не нужно обращаться / передавать их через T-SQL, а скорее через Win32.

Другие причины, которые я читал, также не выглядят мне убедительными.

По каким причинам вы храните BLOB-объекты в базе данных, а не в файловой системе?

[1]
Рэй Барли Использование FILESTREAM для хранения больших двоичных объектов в файловой системе NTFS в SQL Server 2008
http://www.mssqltips.com/tip.asp?tip=1489
[2]
Пол С. Рэндал
Хранилище FILESTREAM в SQL Server 2008
http://msdn.microsoft.com/en-us/library/cc949109(SQL.100).aspx
[3]
Статья в блоге Джеймса Гамильтона. Facebook: Игла в стоге сена: эффективное хранение миллиардов фотографий
http://perspectives.mvdirona.com/2008/06/30/FacebookNeedleInAHaystackEfficientStorageOfBillionsOfPhotos.aspx

1 Ответ

3 голосов
/ 08 декабря 2010

Хранение таких данных в базе данных, а не в файловой системе, может иметь много преимуществ:

Целостность данных - вы можете применять к ним ограничения

Поддержка транзакций

Управляемость- параметры резервного копирования и восстановления

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

Безопасность - вы получаете детальные средства управления безопасностью, которые выне для файловой системы

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

Аудит - вы можете записывать и отслеживать изменения в данных

Я ожидаю, что есть много, много других причин, но это те, которые впервые пришли в голову.

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