Другое решение, позволяющее сохранить всю структуру ваших файлов, но при этом обеспечить способ создания «символических ссылок», может заключаться в следующем, но, как и в другом ответе, цена может быть настолько малой, что не стоит усилий по ее реализации.
В аналогичной настройке я решил просто сохранить md5 каждого загруженного файла в таблице, а затем через год вернуться назад и посмотреть, сколько дубликатов было загружено и сколько хранилища можно было бы сохранить.В то время будет легко оценить, стоит ли реализовывать решение для символьных ссылок.
Недостатком поддержки всего этого в табличном хранилище является то, что вы получаете ограниченный API-запрос для ваших больших двоичных объектов.Вместо этого я бы предложил использовать метаданные на блобах для создания ссылок.(при использовании REST-метаданных метаданные превращаются в обычные заголовки).
Так что для дублирующих BLOB-объектов просто оставьте один из них и сохраните заголовок ссылки, указывающий, где находятся данные.*
на данный момент большой двоичный объект теперь не принимает данные, но все еще присутствует в хранилище и будет возвращен при перечислении больших двоичных объектов.
Тогда при доступе к данным вам просто нужно будет проверить, есть ли у большого двоичного объекта "link "набор метаданных или с помощью rest, проверьте, присутствует ли заголовок x-ms-meta-link, а затем вместо этого прочитайте данные.
blob.Container.GetBlockBlobReference(blob.Metadata["link"]).DownloadTextAsync()
или любой другой метод доступа к данным.
Выше приведены только основы, и я уверен, что вы можете выяснить остальное, если это будет использовано.