Blob Arşivle

Arşiv katmanı, nadiren erişilen blob verilerini depolamak için çevrimdışı bir katmandır. Arşiv katmanı, en düşük depolama maliyetlerini sunar, ancak çevrimiçi katmanlarla (sık ve seyrek erişimli) karşılaştırıldığında daha yüksek veri alımı maliyeti ve gecikme süresi sağlar. Verilerin arşiv katmanında en az 180 gün kalması veya erken bir silme ücretine tabi olması gerekir. Arşiv katmanı hakkında daha fazla bilgi için bkz. Arşiv erişim katmanı.

Blob arşiv katmanındaysa okunamaz veya değiştirilemez. Arşiv katmanında bir blobu okumak veya indirmek için, önce onu sık erişimli veya seyrek erişimli bir çevrimiçi katmana yeniden yazmanız gerekir. Arşiv katmanındaki verilerin, yeniden doldurma işlemi için belirttiğiniz önceliğe bağlı olarak yeniden doldurulması 15 saate kadar sürebilir. Blob yeniden doldurma hakkında daha fazla bilgi için bkz. Arşiv katmanından blob yeniden doldurma 'Ya genel bakış.

Dikkat

Arşiv katmanındaki bir blob çevrimdışı olduğu için — — yeniden doldurma işlemi yapılıncaya kadar okunamaz veya değiştirilemez. Yeniden doldurma işlemi birkaç saat sürebilir ve ilişkili maliyetleri vardır. Arşiv katmanına veri taşımadan önce, blob verilerinin çevrimdışına alınması iş akışlarınızı etkileyebilir.

veri arşivlemeyi yönetmek için Azure portal, PowerShell, azure clı veya azure Depolama istemci kitaplıklarından birini kullanabilirsiniz.

Karşıya yükleme sırasında Blobları Arşivle

Karşıya yükleme sırasında bir veya daha fazla blobu arşivlemek için blobu doğrudan arşiv katmanında oluşturun.

Azure portal karşıya yükleme sırasında blob veya blob kümesi arşivlemek için aşağıdaki adımları izleyin:

  1. Hedef kapsayıcıya gidin.

  2. Karşıya Yükle düğmesini seçin.

  3. Karşıya yüklenecek dosyayı veya dosyaları seçin.

  4. Gelişmiş bölümünü genişletin ve erişim katmanını Arşiv olarak ayarlayın.

  5. Karşıya Yükle düğmesini seçin.

    Blobların Azure portal arşiv katmanına nasıl yükleneceğini gösteren ekran görüntüsü

Mevcut bir blobu Arşivle

Mevcut bir blobu arşiv katmanına iki şekilde taşıyabilirsiniz:

  • Blob katmanını Ayarla işlemiyle bir Blobun katmanını değiştirebilirsiniz. BLOB katmanını ayarla , tek bir blobu bir katmandan diğerine taşıdır.

    Blob katmanını ayarla bir blob 'u arşiv katmanına taşıdığınızda blob 'u yeniden açıncaya kadar blob verilerini okuyamayacağınızı veya değiştiremeyeceğiniz göz önünde bulundurun. Erken silme aralığı geçmeden önce Blobun verilerini okumanız veya değiştirmeniz gerekebilir, sonra arşiv katmanında Blobun kopyasını oluşturmak için bir BLOB kopyalama işlemi kullanmayı düşünün.

  • BLOB kopyalama işlemine sahip bir çevrimiçi katmandaki blobu arşiv katmanına kopyalayabilirsiniz. Bir blobu çevrimiçi bir katmandan (sık erişimli veya seyrek erişimli) arşiv katmanına kopyalamak için BLOB kopyalama işlemini çağırabilirsiniz. Kaynak blobu çevrimiçi katmanda kalır ve çevrimiçi katmandaki verilerini okumaya veya değiştirmeye devam edebilirsiniz.

Katmanını değiştirerek mevcut bir blobu arşivleme

Bir blobu sık erişimli veya seyrek katmandan arşiv katmanına taşımak için BLOB katmanını ayarla işlemini kullanın. BLOB katmanını ayarla işlemi, erken silme aralığı geçmeden önce arşivlenmiş verilere erişmeniz gerekmeyen senaryolar için idealdir.

BLOB katmanını ayarla işlemi, tek bir Blobun katmanını değiştirir. En iyi performansa sahip bir blob kümesini arşiv katmanına taşımak için Microsoft, toplu Arşiv işlemi gerçekleştirmeyi önerir. Toplu Arşiv işlemi, hizmete tek bir işlemde BLOB katmanı çağrıları kümesi toplu işi gönderir. Daha fazla bilgi için bkz. toplu arşiv.

Mevcut bir Blobun Azure portal arşiv katmanına taşımak için şu adımları izleyin:

  1. Blob kapsayıcısına gidin.

  2. Arşivlemek için blobu seçin.

  3. Katmanı Değiştir düğmesini seçin.

  4. Erişim katmanı açılan menüsünde Arşiv ' i seçin.

  5. Kaydet’i seçin.

    Bir Blobun katmanının Azure portal arşivlemek için nasıl ayarlanacağını gösteren ekran görüntüsü

Var olan bir blobu kopyalama işlemi ile arşivleme

Sık erişimli veya seyrek katmandan arşiv katmanına blob kopyalamak için BLOB kopyalama işlemini kullanın. Kaynak blobu, hedef blobu arşiv katmanında oluşturulduğu sırada, sık erişimli veya seyrek erişimli katmanda kalır.

BLOB kopyalama işlemi, erken silme aralığı geçmeden önce arşivlenmiş verileri okumanız veya değiştirmeniz gerekebilecek senaryolar için idealdir. Arşivlenmiş blob 'u yeniden doldurma gerekmeden kaynak Blobun verilerine erişebilirsiniz.

Yok

Toplu Arşiv

Çok sayıda blobu arşiv katmanına taşırken en iyi performans için bir toplu işlem kullanın. Toplu işlem, hizmete tek bir istekle birden çok API çağrısı gönderir. BLOB Batch işlemi tarafından desteklenen alt Işlemler BLOB 'U Sil ve BLOB katmanını ayarla' yı içerir.

blob 'ları bir toplu işlemle arşivlemek için Azure Depolama istemci kitaplıklarından birini kullanın. Aşağıdaki kod örneği, .NET istemci kitaplığı ile temel bir toplu işlemin nasıl gerçekleştirileceğini göstermektedir:

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);
    }
}

Bir toplu işlem ile katmanların nasıl değiştirileceğini gösteren derinlemesine bir örnek uygulama için bkz. Azbulksetblobtier.

Ayrıca bkz.