Поделиться через


Сравнение параметров для хранения больших двоичных объектов (SQL Server)

Рассматриваются и сравниваются параметры, доступные для хранения файлов и документов в SQL Server.

В этом разделе

  • Хранение файлов в базе данных — преимущества и ожидания

  • FILESTREAM

  • Таблицы FileTable

  • Сравнение FILESTREAM и таблиц FileTable

  • Сравнение FILESTREAM и удаленного хранилища больших двоичных объектов (RBS)

  • Дополнительные сведения

Хранение файлов в базе данных — преимущества и ожидания

Большая часть корпоративных данных является по своей природе неструктурированной и обычно хранится в виде файлов и документов в файловой системе. Большая часть этих данных производится, управляется и используется приложениями, осуществляющими доступ к файлам через API-интерфейсы Windows. Обычно компании хранят эти данные в файловой системе, а метаданные для них — в реляционной базе данных.

Интеграция неструктурированных данных в реляционную базу данных дает большие преимущества. К таким преимуществам относятся следующие.

  • Возможности интегрированного хранения и управления данными, например резервное копирование.

  • Интегрированные службы, такие как полнотекстовый поиск и семантический поиск в данных и метаданных.

  • Простота администрирования и управления политиками для неструктурированных данных.

Однако в большинстве случаев нет смысла хранить такие неструктурированные данные в реляционных базах данных. До сих пор не было возможности запускать существующие приложения Windows поверх реляционных систем. Переписывать работающие приложения (Microsoft Word, Adobe Reader и т. д.) для обеспечения возможности работать поверх API-интерфейсов реляционной базы данных непрактично. Этим приложениям просто нужно, чтобы данные были доступны через API-интерфейсы Windows. Иными словами, имеются следующие ожидания.

  • Приложения Windows не поддерживают транзакции в базах данных и не требуют их.

  • Приложения Windows требуют совместимости с API-интерфейсами файловой системы для данных из файлов и каталогов.

[В начало]

FILESTREAM

В SQL Server уже имеется функция FILESTREAM, обеспечивающая эффективное хранение, управление и потоковую передачу неструктурированных данных, хранящихся в виде файлов в файловой системе. Тем не менее для решения FILESTREAM требуется дополнительное программирование, оно не удовлетворяет требованиям полной совместимости с приложениями Windows, описанным выше.

[В начало]

Таблицы FileTable

Функция FileTable строится поверх существующих возможностей FILESTREAM, позволяя корпоративным клиентам хранить неструктурированные данные файлов и иерархии папок в базе данных SQL Server, и выполняет требования по доступу к данным без транзакций и совместимости приложений Windows с данными, хранящимися в файлах.

[В начало]

Сравнение FILESTREAM и таблиц FileTable

Компонент

Файловый сервер и решение для базы данных

Решение FILESTREAM

Решение FileTable

Одно решение для задач управления

Отсутствует

Да

Да

Один набор служб: поиск, отчеты, запросы и т. д.

Нет

Да

Да

Интегрированная модель безопасности

Нет

Да

Да

Обновление на месте для данных FILESTREAM

Да

Нет

Да

Иерархия каталогов и файлов сохраняется в базе данных

Нет

Нет

Да

Совместимость с приложениями Windows

Да

Нет

Да

Реляционный доступ к атрибутам файлов

Нет

Нет

Да

[В начало]

Сравнение FILESTREAM и удаленного хранилища больших двоичных объектов (RBS)

Сравнение этих двух средств см. в статье в блоге группы RBS: SQL Server Remote BLOB Store and FILESTREAM feature comparison.

[В начало]

Дополнительные сведения

[В начало]