Azure WebApp для хранения файлов - PullRequest
1 голос
/ 27 апреля 2019

Я обновляю систему, в которой все ее файлы хранятся на сервере sql.

Она переходит с первого сервера на веб-приложение Azure.

Мои вопросы:

  1. Я думаю, что я должен использовать хранилище для этих файлов.Это правильно или в Azure есть лучший вариант, который мне следует использовать?
  2. Существует ли быстрый способ переноса файлов из sql в этот BLOB-объект?
  3. Для целей хранения, могу ли язаписать файл в большой двоичный объект и затем сохранить гиперссылку на этот файл?
  4. Промежуточная среда обновляется последними данными из производства, когда они выпускают, есть ли способ перенести большой двоичный объект в другой ресурс?группа, когда они это делают?

Ответы [ 2 ]

1 голос
/ 27 апреля 2019

Чтобы ответить на ваши вопросы:

Я думаю, что я должен использовать хранилище для этих файлов.Это правильно или в Azure есть лучший вариант, который я должен использовать?

Это правильно.Хранение BLOB-объектов предназначено только для этой цели.

Существует ли быстрый способ переноса файлов из sql в этот BLOB-объект?

Я не знаю ни одного автоматизированного способасделать это.Что вам нужно сделать, это прочитать двоичные данные из базы данных SQL, а затем создать поток из них и загрузить этот поток.Вы можете использовать Azure Storage SDK для загрузки.

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

В разделев нормальных условиях рекомендуется подход, однако, учитывая, что вам необходимо создать промежуточную среду, которая будет копией производственной среды (включая предполагаемую базу данных), я бы порекомендовал вам хранить в вашей базе данных 2 вещи: blob container name и blob name (или вы можете сохранить относительный URL, например <container-name>/<blob-name>).Предполагая, что вы храните имя учетной записи хранения где-то в файле конфигурации, вы можете динамически создать URL-адрес, используя шаблон https://<account-name>.blob.core.windows.net/<container-name>/<blob-name>.

Промежуточная среда обновляется с использованием последних данных из производства, когда они выпускают версию,Есть ли способ перенести большой двоичный объект хранилища в другую группу ресурсов, когда они делают это?

Хранилище Azure предоставляет функциональность Copy Blobs, с помощью которой можно копировать большие двоичные объекты из одного контейнера больших двоичных объектов в один и тот же илидругая учетная запись хранения.Это можно использовать для копирования данных из производственной среды в промежуточную среду.

1 голос
/ 27 апреля 2019
  1. Да, я бы использовал blob.
  2. Самым быстрым способом было бы быстрое сценарий PowerShell или Cli или консольное приложение для извлечения файлов из базы данных и загрузки их в BLOB-объекты.
  3. Я не храню всю гиперссылку на файл в базе данных, только путь. Таким образом, учетная запись хранения и контейнер могут быть конфигурациями среды.
  4. Я бы рекомендовал не делать этого ... мы обнаружили, что с тех пор, как мы начали делать автоматическое непрерывное развертывание, у нас не было причины двигаться назад, что исключило много усилий. Тем не менее, AzCopy - это утилита, которая позволяет вам выполнять копирование больших двоичных объектов на стороне сервера между учетными записями хранилища (наряду со многими другими типами источника и места назначения, если это необходимо). Это должно делать то, что вам нужно.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...