Добавление к прекрасному ответу Стюарта: BLOB-объекты могут хранить что угодно, с размерами до 200 ГБ. Если вам нужно / вы хотите сохранить долговечную структуру каталогов, вы можете смонтировать VHD всего за несколько строк кода. Это том NTFS, с которым ваше приложение может взаимодействовать, как и любой другой диск.
В вашем случае VHD не подходит, потому что ваше веб-приложение должно было бы подключить VHD и быть единственным автором. И если у вас есть более одного экземпляра веб-роли (что было бы, если бы вы хотели SLA и хотели бы масштабировать), у вас мог быть только один писатель. В этом случае отдельные капли подходят НАМНОГО лучше.
Как сказал Стюарт, это очень нормальная и распространенная модель. И снова, имея всего несколько строк кода, вы можете вызвать хранилище sdk, чтобы скопировать файл из хранилища BLOB-объектов на локальный диск вашего экземпляра. Затем вы можете обработать файл, используя обычные операции ввода-вывода. Когда ваш отчет завершен, еще несколько строк кода позволяют скопировать отчет в новый большой двоичный объект (скорее всего, в хорошо известном контейнере, в котором веб-роль знает, что искать).
Вы можете сделать еще один шаг и вставить в таблицу Azure строки, разделенные клиентом, с ключом строки, идентифицирующим отдельный загруженный файл, и 3-м полем, представляющим URI для завершенного отчета. Это упрощает отображение веб-приложения клиентом завершенных отчетов.