Archivace objektu BLOB
Archivní úroveň je offline vrstva pro ukládání dat objektů blob, ke kterým se používá zřídka. Úroveň archivu nabízí nejnižší náklady na úložiště, ale vyšší náklady na načtení dat a latenci v porovnání s online úrovněmi (horká a studená). Data musí zůstat v archivní úrovni po dobu minimálně 180 dní nebo musí platit poplatky za předčasné odstranění. Další informace o archivní úrovni najdete v tématu archivní úroveň přístupu.
Když je objekt BLOB v archivní úrovni, nedá se číst ani upravovat. Chcete-li číst nebo stahovat objekt BLOB v archivní úrovni, je nutné nejprve ho znovu naprogramovat do online úrovně, ať horká nebo studená. Data v archivní úrovni mohou trvat až 15 hodin v závislosti na prioritě, kterou zadáte pro operaci dehydratace. Další informace o dosazování objektů BLOB najdete v tématu Přehled funkce pro vysazování objektů BLOB z archivní úrovně.
Upozornění
Objekt BLOB v archivní úrovni je offline — , takže ho nejde číst ani upravovat, — dokud ho znovu neodstraníte. Proces dehydratace může trvat několik hodin a má přidružené náklady. Před přesunutím dat do archivní úrovně zvažte, jestli je možné, aby data objektu BLOB v režimu offline ovlivnila vaše pracovní postupy.
ke správě archivace dat můžete použít Azure Portal, PowerShell, rozhraní příkazového řádku Azure nebo jednu z klientských knihoven Azure Storage.
Při nahrávání archivovat objekty blob
Pokud chcete archivovat jeden nevětší objekty BLOB při nahrávání, vytvořte objekt BLOB přímo v archivní úrovni.
Pokud chcete archivovat objekt BLOB nebo sadu objektů BLOB při nahrávání z Azure Portal, postupujte podle těchto kroků:
Přejděte do cílového kontejneru.
Vyberte tlačítko Nahrát.
Vyberte soubor nebo soubory, které chcete nahrát.
Rozbalte část Upřesnit a nastavte úroveň přístupu na možnost Archivovat.
Vyberte tlačítko Nahrát.
Archivace existujícího objektu BLOB
Existující objekt blob můžete přesunout do archivní úrovně jedním ze dvou způsobů:
Můžete změnit úroveň objektu BLOB pomocí operace nastavit vrstvu objektu BLOB . Nastavením úrovně objektu BLOB se přesune jeden objekt BLOB z jedné úrovně na druhý.
Mějte na paměti, že když přesunete objekt blob do archivní úrovně s nastavením úrovně objektu BLOB, nebudete moct číst ani upravovat data objektu blob, dokud nevrátíte objekt BLOB. Pokud bude pravděpodobně nutné číst nebo upravovat data objektu BLOB před uplynutím intervalu předčasného odstranění, zvažte použití operace kopírování objektu BLOB k vytvoření kopie objektu BLOB v archivní úrovni.
Objekt BLOB v online vrstvě můžete zkopírovat do archivní úrovně pomocí operace kopírování objektu BLOB . Můžete zavolat operaci kopírování objektu BLOB pro zkopírování objektu BLOB z online úrovně (horké nebo studené) do archivní úrovně. Zdrojový objekt BLOB zůstane ve vrstvě online a můžete dál číst nebo upravovat jeho data v online úrovni.
Archivace stávajícího objektu BLOB změnou jeho úrovně
K přesunu objektu BLOB z horké nebo studené vrstvy do archivní úrovně použijte operaci nastavit vrstvu objektu BLOB . Operace nastavit úroveň objektu BLOB je nejvhodnější pro situace, kdy nebudete potřebovat přístup k archivovaným datům před uplynutím intervalu předčasného odstranění.
Operace nastavit úroveň objektu BLOB mění úroveň jednoho objektu BLOB. Aby bylo možné přesunout sadu objektů blob do archivní úrovně s optimálním výkonem, společnost Microsoft doporučuje provést operaci hromadného archivace. Operace hromadného archivace odešle službě v rámci jedné transakce dávku Nastavení volání úrovně objektu BLOB do služby. Další informace najdete v tématu Hromadná archivace.
Pokud chcete přesunout existující objekt blob na úroveň archivu v Azure Portal, postupujte takto:
Přejděte do kontejneru objektu BLOB.
Vyberte objekt blob, který se má archivovat.
Vyberte tlačítko změnit úroveň .
V rozevíracím seznamu úroveň přístupu vyberte možnost Archivovat .
Vyberte Uložit.
Archivace stávajícího objektu BLOB s operací kopírování
Pomocí operace kopírování objektu BLOB zkopírujte objekt BLOB z horké nebo studené vrstvy do archivní úrovně. Zdrojový objekt BLOB zůstane na horké nebo studené úrovni, zatímco cílový objekt BLOB se vytvoří v archivní úrovni.
Operace kopírování objektu BLOB je nejvhodnější pro situace, kdy možná budete muset před uplynutím intervalu předčasného odstranění číst nebo upravit Archivovaná data. K datům zdrojového objektu blob můžete přistupovat, aniž byste museli znovu vymezit archivovaný objekt BLOB.
Hromadná archivace
Když přesunete velký počet objektů blob do archivní úrovně, použijte k zajištění optimálního výkonu operaci Batch. Operace dávky odešle službě několik volání rozhraní API s jednou žádostí. Dílčí operace podporované operací Batch objektu BLOB zahrnují příkaz Odstranit objekt BLOB a nastavit úroveň objektu BLOB.
k archivaci objektů blob pomocí dávkové operace použijte jednu z Azure Storage klientských knihoven. Následující příklad kódu ukazuje, jak provést základní operaci Batch s klientskou knihovnou .NET:
static async Task BulkArchiveContainerContents(string accountName, string containerName)
{
string containerUri = string.Format("https://{0}.blob.core.windows.net/{1}",
accountName,
containerName);
// Get container client, using Azure AD credentials.
BlobUriBuilder containerUriBuilder = new BlobUriBuilder(new Uri(containerUri));
BlobContainerClient blobContainerClient = new BlobContainerClient(containerUriBuilder.ToUri(),
new DefaultAzureCredential());
// Get URIs for blobs in this container and add to stack.
var uris = new Stack<Uri>();
await foreach (var item in blobContainerClient.GetBlobsAsync())
{
uris.Push(blobContainerClient.GetBlobClient(item.Name).Uri);
}
// Get the blob batch client.
BlobBatchClient blobBatchClient = blobContainerClient.GetBlobBatchClient();
try
{
// Perform the bulk operation to archive blobs.
await blobBatchClient.SetBlobsAccessTierAsync(blobUris: uris, accessTier: AccessTier.Archive);
}
catch (RequestFailedException e)
{
Console.WriteLine(e.Message);
}
}
Podrobnou ukázkovou aplikaci, která ukazuje, jak změnit úrovně pomocí dávkové operace, najdete v tématu AzBulkSetBlobTier.