В учетной записи хранилища Azure загружены большие двоичные объекты Azure, которые необходимо копировать, чтобы заблокировать большие двоичные объекты, чтобы их можно было переключить с «холодного» уровня на «Архивный».Страницы больших двоичных объектов создаются сервером SQL (до 2016 года) BACKUP TO URL.
Я говорил об этом с Microsoft, и они предложили AzCopy с BLOB-файлом Azure в качестве ступеньки, например, Page blob -> block blob (хранилище файлов) -> block blob (хранилище BLOB-объектов).Все это прекрасно работает в инструментах Azure на базе AzCopy или с графическим интерфейсом, но мне нужно автоматизировать его и обеспечить некоторую устойчивость.
Проблема у меня в том, что я не могу получить облако Страница Blob для копирования в облако Блок Blob, независимо от того, как я его разыграл.Это урезанный пример, показывающий (отсутствие) прогресса и как я это делаю.Я заверну это в Задачу <> на производстве, но не могу заставить .StartCopy работать.Есть идеи?
CredentialEntity ce = Utils.GetBlobCredentials();
StorageCredentials sc = new StorageCredentials(ce.Name, ce.Key);
CloudStorageAccount storageAccount =
new CloudStorageAccount(new StorageCredentials(ce.Name, ce.Key), true);
CloudBlobClient cloudBlobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer sourceContainer = cloudBlobClient.GetContainerReference(@"archive");
CloudBlobContainer targetContainer = cloudBlobClient.GetContainerReference(@"xfer");
CloudPageBlob source = sourceContainer.GetPageBlobReference("test.bak");
CloudBlockBlob target = targetContainer.GetBlockBlobReference("new.bak");
//target.StartCopy(source);
//target.StartCopyAsync()