Show / Hide Table of Contents

    Настройка потокового доступа к документам (FILESTREAM)

    Для настройки потокового доступа СОД к документам (FILESTREAM) необходимо выполнить следующую последовательность действий, описанных в данном разделе:

    1. Включить поддержку FILESTREAM в диспетчере конфигурации MS SQL Server.

    2. Переключить имеющийся экземпляр СОД в режим работы с FILESTREAM, либо создать новый экземпляр с соответствующим флагом.

    Включение FILESTREAM (БД расположена на одном сервере с экземпляром СОД)

    FILESTREAM не включается автоматически при установке или обновлении SQL Server. FILESTREAM необходимо включить с помощью Диспетчера конфигурации SQL Server и среды SQL Server Management Studio.

    В данном разделе приведена последовательность действий по включению FILESTREAM в соответствии с Инструкцией по включению FILESTREAM на официальном сайте Microsoft.

    Действия в Диспетчере конфигурации SQL Server

    В меню Пуск выберите пункт Все программы -> Microsoft SQL Server \<version> -> Средства настройки и выберите пункт Диспетчер конфигурации SQL Server.

    filestream1.png

    В списке служб щелкните правой кнопкой мыши "Службы SQL Server" и выберите "Открыть".

    filestream2.png

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

    Щелкните правой кнопкой мыши экземпляр и выберите пункт "Свойства".

    В диалоговом окне "Свойства: SQL Server" перейдите на вкладку FILESTREAM (1).

    Установите флажок Enable FILESTREAM for Transact-SQL access (Разрешить FILESTREAM при доступе через Transact-SQL) (2).

    Установите флажок Enable FILESTREAM for file I/O streaming access (Разрешить FILESTREAM при потоковом доступе ввода-вывода) Введите имя общего ресурса Windows в поле Windows share name. (3).

    Нажмите кнопку ОК (4) для сохранения настроек и окончания редактирования свойств FILESTREAM.

    filestream3.png

    Примечание

    Отмечать флажок "Allow remote clients to have streaming access to FILESTREAM data" (Разрешить удаленным клиентам потоковый доступ к данным FILESTREAM) необходимо только в том случае, если SQL Server развёрнут на отдельном сервере (см. Включение FILESTREAM при использовании БД на удаленном сервере).

    Действия в SQL Server Management Studio

    В среде SQL Server Management Studio нажмите кнопку Создать запрос, чтобы открыть редактор запросов. В редакторе запросов введите следующий код Transact-SQL:

    EXEC sp_configure filestream_access_level, 2  
    RECONFIGURE  
    

    Нажмите кнопку Выполнить.

    Перезапустите службу SQL Server.

    Включение FILESTREAM (БД расположена на удаленном сервере)

    Выполните все действия, описанные в предыдущем пункте. Помимо этого, выполните следующее:

    1. Установите флажок "Allow remote clients to have streaming access to FILESTREAM data (Разрешить удаленным клиентам потоковый доступ к данным FILESTREAM) в меню свойств SQL Server на вкладке FILESTREAM.

    Настройка экземпляра СОД для работы с FILESTREAM

    Примечание

    Действия, описанные в данном разделе, должны выполняться ПОСЛЕ настройки FILESTREAM.

    Настройка поддержки Сервисом Обработки Документов включенного ранее FILESTREAM состоит из следующих этапов:

    1. Включение FILESTREAM на экземпляре СОД.

    Даже если FILESTREAM уже настроен, необходимо настроить экземпляр СОД для работы с ним. Существует две ситуации:

    • Создается новый экземпляр СОД.

    В данном случае при создании экземпляра СОД в командлете New-DssDocumentStoreInstance необходимо установить флаг -CreateFileStreamDb в положение 1. По умолчанию данный флаг не будет взведен, и FILESTREAM не будет использоваться, даже если он был включен ранее.

    • Экземпляр СОД уже создан (и используется).

    В данном случае необходимо переключить экземпляр в режим работы с FILESTREAM при помощи командлета SwitchDssDocumentStoreInstance.

    Пример:

    Switch-DssDocumentStoreInstance -SQLServerName win-srv -ApplicationName DocumentStore -DisplayName DocumentStore -UseFileStream 1 -DBName DocumentStoreFs
    
    Внимание!

    Данное действие создает новый экземпляр БД СОД, предназначенный для работы с FILESTREAM. При этом:

    • Старый экземпляр БД сохраняется вместе со всем содержимым.
    • Все настройки старого экземпляра БД будут перенесены на новый.
    • Файлы из БД старого экземпляра НЕ переносятся.
    • С момента взведения флага СОД продолжает работу ТОЛЬКО с новым экземпляром БД.

    2. Установка флага SmallFile в поле AdditionalDocumentInfo структуры PostDocumentInput при выполнении REST-запроса на загрузку документа в СОД.

    Если выполнены все предыдущие пункты данного раздела, запись документов все еще производится полностью в БД, т.к. флаг SmallFile в поле AdditionalDocumentInfo структуры PostDocumentInput по умолчанию не установлен или установлен в значение true, а значит все загружаемые в СОД документы считаются "маленькими".

    Для начала записи с использованием FILESTREAM установите для загружаемых в СОД документов, считаемых "большими", флаг SmallFile в значение false.

    Примечание

    Критерии установки флага SmallFile в значение true или false могут быть различными. Рекомендуется считать "маленькими" (SmallFile = true) документы размером до 10 Мбайт.

    Внимание!

    Если FILESTREAM не настроен или настроен некорректно, флаг SmallFile = false будет записан в состояние true, а загружаемый документ будет записан в БД без использования FILESTREAM.

    Back to top © ООО "КРИПТО-ПРО", 2000-2020