Запустите EXE-файл командной строки в Azure, указав путь к большому двоичному объекту Azure

#azure #azure-web-app-service #azure-blob-storage

#azure #azure-web-app-service #azure-blob-storage

Вопрос:

У меня есть веб-приложение Azure, которое хранит документы в большом двоичном объекте Azure «контейнер X».

Теперь мы хотим запустить «задание» для создания специализированных отчетов для этих документов.

Это включает в себя запуск EXE-файла, который принимает путь к документу в качестве аргумента, позволяя ему генерировать отчет о файловой системе и загружать его в большой двоичный объект Azure «контейнер Y».

Например: generate-report.exe document.doc генерирует report.txt .

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

Ответ №1:

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

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

Если вы только создаете свое приложение, вы можете напрямую получить доступ к содержимому больших двоичных объектов через REST API (или один из различных языковых SDK, которые включают API).

Ответ №2:

Чтение файла из большого двоичного объекта может быть выполнено в виде потока, который впоследствии может быть использован для создания текстового файла также внутри веб-приложения. Вы также можете создавать веб-задания в Web app для выполнения этой задачи в серверной части.
https://azure.microsoft.com/en-in/documentation/articles/storage-dotnet-how-to-use-blobs/