Untuk membaca blob yang ada di tingkat arsip, Anda harus terlebih dahulu merehidrasi blob ke tingkat online (panas, dingin, atau dingin). Anda dapat merehidrasi blob dengan salah satu dari dua cara:
Dengan menyalinnya ke blob baru di tingkat panas, dingin, atau dingin dengan operasi Salin Blob .
Dengan mengubah tingkatnya dari arsip ke tingkat panas, dingin, atau dingin dengan operasi Atur Tingkat Blob.
Ketika Anda rehydrate gumpalan, Anda dapat menentukan prioritas untuk operasi untuk prioritas standar atau prioritas tinggi. Operasi rehidrasi dapat memakan waktu hingga 15 jam untuk diselesaikan. Operasi prioritas tinggi diprioritaskan di atas permintaan prioritas standar dan dapat selesai dalam waktu kurang dari satu jam untuk objek di bawah ukuran 10 GB. Anda dapat mengubah prioritas rehidrasi dari Standar ke Tinggi saat operasi tertunda.
Anda dapat mengonfigurasi Azure Event Grid untuk mengaktifkan peristiwa saat rehidrasi selesai dan menjalankan kode aplikasi sebagai tanggapan. Untuk mempelajari cara menangani peristiwa yang menjalankan Fungsi Azure saat operasi rehidrasi blob selesai, lihat Menjalankan Fungsi Azure sebagai respons terhadap peristiwa rehidrasi blob.
Untuk merehidrasi blob dari tingkat arsip dengan menyalinnya ke tingkat online, gunakan portal Azure, PowerShell, Azure CLI, atau salah satu pustaka klien Azure Storage. Perlu diingat bahwa ketika Anda menyalin blob yang diarsipkan ke tingkat online, blob sumber dan tujuan harus memiliki nama yang berbeda.
Menyalin blob yang diarsipkan ke tingkat tujuan online didukung dalam akun penyimpanan yang sama. Dimulai dengan versi layanan 2021-02-12, Anda dapat menyalin blob yang diarsipkan ke akun penyimpanan yang berbeda, selama akun tujuan berada di wilayah yang sama dengan akun sumber.
Setelah operasi salin selesai, blob tujuan muncul di tingkat arsip. Blob tujuan kemudian direhidrasi ke tingkat online yang Anda tentukan dalam operasi salinan. Ketika blob tujuan direhidrasi sepenuhnya, blob tersebut akan tersedia di tingkat online baru.
Merehidrasi blob ke akun penyimpanan yang sama
Contoh berikut menunjukkan cara menyalin blob yang diarsipkan ke blob di tingkat panas di akun penyimpanan yang sama.
Navigasi ke akun penyimpanan di portal Microsoft Azure.
Di panel navigasi untuk akun penyimpanan, pilih Browser penyimpanan.
Di browser penyimpanan, navigasikan ke lokasi blob yang diarsipkan, pilih kotak centang yang muncul di samping blob, lalu pilih tombol Salin .
Navigasi ke kontainer tempat Anda ingin menempatkan blob yang direhidrasi, lalu pilih tombol Tempel .
Kotak dialog Tempelkan blob arsip muncul.
Catatan
Jika Anda memilih tombol Tempel saat berada di lokasi yang sama dengan blob sumber, maka nama default yang muncul di bidang Nama blob tujuan berisi akhiran numerik. Ini memastikan bahwa blob sumber dan tujuan memiliki nama yang berbeda. Anda dapat mengubah nama ini jika Diinginkan selama nama berbeda dari nama blob sumber.
Dalam kotak dialog Tempel blob arsip, pilih tingkat akses dan prioritas rehidrasi. Lalu, pilih Tempel untuk merehidrasi blob.
Penting
Jangan hapus blob sumber saat sedang rehidrasi.
Untuk menyalin blob yang diarsipkan ke tingkat online dengan PowerShell, panggil perintah Start-AzStorageBlobCopy dan tentukan tingkat target dan prioritas rehidrasi. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
# Initialize these variables with your values.
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$srcContainerName = "<source-container>"
$destContainerName = "<dest-container>"
$srcBlobName = "<source-blob>"
$destBlobName = "<dest-blob>"
# Get the storage account context
$ctx = (Get-AzStorageAccount `
-ResourceGroupName $rgName `
-Name $accountName).Context
# Copy the source blob to a new destination blob in hot tier with Standard priority.
Start-AzStorageBlobCopy -SrcContainer $srcContainerName `
-SrcBlob $srcBlobName `
-DestContainer $destContainerName `
-DestBlob $destBlobName `
-StandardBlobTier Hot `
-RehydratePriority Standard `
-Context $ctx
Untuk menyalin blob yang diarsipkan ke tingkat online dengan CLI Azure, lakukan perintah az storage blob copy start dan tentukan tingkat target dan prioritas rehidrasi. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
az storage blob copy start \
--source-container <source-container> \
--source-blob <source-blob> \
--destination-container <dest-container> \
--destination-blob <dest-blob> \
--account-name <storage-account> \
--tier hot \
--rehydrate-priority standard \
--auth-mode login
T/A
Merehidrasi blob ke akun penyimpanan yang berbeda di wilayah yang sama
Contoh berikut menunjukkan cara menyalin blob yang diarsipkan ke blob di tingkat panas di akun penyimpanan yang berbeda.
Catatan
Tujuan dan akun sumber harus berada di wilayah yang sama.
Navigasi ke akun penyimpanan di portal Microsoft Azure.
Di panel navigasi untuk akun penyimpanan, pilih Browser penyimpanan.
Di browser penyimpanan, navigasikan ke lokasi blob yang diarsipkan, pilih kotak centang yang muncul di samping blob, lalu pilih tombol Salin .
Navigasi ke akun penyimpanan tujuan, dan di panel navigasi, pilih Browser penyimpanan.
Navigasi ke kontainer tempat Anda ingin menempatkan blob yang direhidrasi, lalu pilih tombol Tempel .
Kotak dialog Tempelkan blob arsip muncul.
Dalam kotak dialog Tempel blob arsip, pilih tingkat akses dan prioritas rehidrasi. Lalu, pilih Tempel untuk merehidrasi blob.
Penting
Jangan hapus blob sumber saat sedang rehidrasi.
Untuk menyalin blob yang diarsipkan ke blob di tingkat online di akun penyimpanan yang berbeda dengan PowerShell, pastikan Anda telah menginstal modul Az.Storage, versi 4.4.0 atau yang lebih tinggi. Selanjutnya, panggil perintah Start-AzStorageBlobCopy dan tentukan tingkat online serta prioritas rehidrasi target. Anda harus menentukan tanda tangan akses bersama (SAS) dengan izin baca untuk blob sumber yang diarsipkan.
Contoh berikut menunjukkan cara menyalin blob yang diarsipkan ke tingkat panas di akun penyimpanan yang berbeda. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
$rgName = "<resource-group>"
$srcAccount = "<source-account>"
$destAccount = "<dest-account>"
$srcContainer = "<source-container>"
$destContainer = "<dest-container>"
$srcBlob = "<source-blob>"
$destBlob = "<destination-blob>"
# Get the destination account context
$destCtx = New-AzStorageContext -StorageAccountName $destAccount -UseConnectedAccount
# Get the source account context
$srcCtx = New-AzStorageContext -StorageAccountName $srcAccount -UseConnectedAccount
# Get the SAS URI for the source blob
$srcBlobUri = New-AzStorageBlobSASToken -Container $srcContainer `
-Blob $srcBlob `
-Permission rwd `
-ExpiryTime (Get-Date).AddDays(1) `
-FullUri `
-Context $srcCtx
# Start the cross-account copy operation
Start-AzStorageBlobCopy -AbsoluteUri $srcBlobUri `
-DestContainer $destContainer `
-DestBlob $destBlob `
-DestContext $destCtx `
-StandardBlobTier Hot `
-RehydratePriority Standard
Untuk menyalin blob yang diarsipkan ke blob di tingkat online di akun penyimpanan yang berbeda dengan Azure CLI, pastikan Anda telah menginstal versi 2.35.0 atau yang lebih tinggi. Selanjutnya, panggil perintah az storage blob copy start dan tentukan tingkat online serta prioritas rehidrasi target. Anda harus menentukan tanda tangan akses bersama (SAS) dengan izin baca untuk blob sumber yang diarsipkan.
Contoh berikut menunjukkan cara menyalin blob yang diarsipkan ke tingkat panas di akun penyimpanan yang berbeda. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
# Specify the expiry interval
end=`date -u -d "1 day" '+%Y-%m-%dT%H:%MZ'`
# Get a SAS for the source blob
srcBlobUri=$(az storage blob generate-sas \
--account-name <source-account> \
--container <source-container> \
--name <archived-source-blob> \
--permissions rwd \
--expiry $end \
--https-only \
--full-uri \
--as-user \
--auth-mode login | tr -d '"')
# Copy to the destination blob in the hot tier
az storage blob copy start \
--source-uri $srcBlobUri \
--account-name <dest-account> \
--destination-container <dest-container> \
--destination-blob <dest-blob> \
--tier Hot \
--rehydrate-priority Standard \
--auth-mode login
T/A
Rehidrasi dari wilayah sekunder
Jika Anda telah mengonfigurasi akun penyimpanan untuk menggunakan penyimpanan geo-redundan akses baca (RA-GRS), maka Anda dapat menyalin blob yang diarsipkan yang terletak di wilayah sekunder ke tingkat online di akun penyimpanan berbeda yang terletak di wilayah sekunder yang sama.
Untuk merehidrasi dari wilayah sekunder, gunakan panduan yang sama yang disajikan di bagian sebelumnya (Rehidrasi blob ke akun penyimpanan yang berbeda di wilayah yang sama). Tambahkan akhiran -secondary ke nama akun titik akhir sumber. Misalnya, jika titik akhir utama untuk penyimpanan Blob adalah myaccount.blob.core.windows.net, maka titik akhir sekunder adalah myaccount-secondary.blob.core.windows.net. Kunci akses akun untuk akun penyimpanan Anda sama untuk titik akhir utama dan sekunder.
Untuk mengubah tingkat blob dari arsip menjadi panas atau dingin di portal Microsoft Azure, ikuti langkah-langkah berikut:
Temukan blob yang akan direhidrasi di portal Microsoft Azure.
Pilih tombol Lainnya di sisi kanan halaman.
Pilih Ubah tingkat.
Pilih tingkat akses target dari tarik-turun Tingkat akses.
Dari tarik-turun Prioritas rehidrasi, pilih prioritas rehidrasi yang diinginkan. Ingatlah bahwa menyetel prioritas rehidrasi ke Tinggi biasanya menghasilkan rehidrasi yang lebih cepat, tetapi juga menimbulkan biaya yang lebih besar.
Pilih tombol Simpan.
Untuk mengubah tingkat blob dari arsip ke panas atau dingin dengan PowerShell, gunakan properti BlobClient blob untuk mengembalikan referensi .NET ke blob, lalu panggil metode SetAccessTier pada referensi tersebut. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
# Initialize these variables with your values.
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$containerName = "<container>"
$blobName = "<archived-blob>"
# Get the storage account context
$ctx = (Get-AzStorageAccount `
-ResourceGroupName $rgName `
-Name $accountName).Context
# Change the blob's access tier to hot with Standard priority.
$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$blob.BlobClient.SetAccessTier("Hot", $null, "Standard")
Untuk mengubah tingkat blob dari arsip menjadi panas atau dingin dengan CLI Azure, panggil perintah az storage blob set-tier. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
az storage blob set-tier \
--account-name <storage-account> \
--container-name <container> \
--name <archived-blob> \
--tier Hot \
--rehydrate-priority Standard \
--auth-mode login
Untuk mengubah tingkat blob dari arsip ke panas atau dingin dengan AzCopy, gunakan perintah azcopy set-properties dan atur -block-blob-tier parameter ke tingkat yang diinginkan, dan --rehydrate-priority ke standard atau high. Secara default, parameter ini diatur ke standard. Untuk mempelajari selengkapnya tentang trade off dari setiap opsi, lihat Prioritas rehidrasi.
Penting
Kemampuan untuk mengubah tingkat blob dengan menggunakan AzCopy saat ini dalam PRATINJAU.
Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.
Catatan
Contoh ini menyertakan argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal (''). Contoh ini juga tidak berisi token SAS karena mengasumsikan bahwa Anda telah memberikan kredensial otorisasi dengan menggunakan ID Microsoft Entra. Lihat artikel Mulai Menggunakan AzCopy untuk mempelajari cara agar Anda dapat memberikan informasi masuk otorisasi ke layanan penyimpanan.
Untuk merehidrasi blob yang diarsipkan dalam kontainer atau folder ke tingkat panas atau dingin, hitung melalui blob dan panggil operasi Atur Tingkat Blob pada masing-masing blob. Contoh berikut menunjukkan kepada Anda cara melakukan operasi ini:
Untuk menghidrasi kembali sejumlah besar blob sekaligus, panggil operasi Blob Batch untuk memanggil Set Blob Tier sebagai operasi massal.
Untuk contoh kode yang menunjukkan cara melakukan operasi batch, lihat AzBulkSetBlobTier.
Memeriksa status operasi rehidrasi
Saat blob merehidrasi, Anda dapat memeriksa status dan prioritas rehidrasinya menggunakan portal Microsoft Azure, PowerShell, atau CLI Azure. Properti status dapat mengembalikan rehydrate-pending-to-hot atau rehydrate-pending-to-cool, bergantung pada tingkat target untuk operasi rehidrasi. Properti prioritas rehidrasi mengembalikan Standar atau Tinggi.
Perlu diingat bahwa rehidrasi blob yang diarsipkan dapat memakan waktu hingga 15 jam, dan polling status blob berulang kali untuk menentukan apakah rehidrasi selesai tidak efisien. Menggunakan Azure Event Grid untuk mengambil peristiwa yang terjadi saat rehidrasi selesai menawarkan performa dan pengoptimalan biaya yang lebih baik. Untuk mempelajari cara menjalankan Azure Function saat peristiwa dipicu pada rehidrasi blob, lihat Menjalankan Fungsi Azure sebagai respons terhadap peristiwa rehidrasi blob.
Untuk memeriksa status dan prioritas operasi rehidrasi yang tertunda di portal Microsoft Azure, tampilkan dialog Ubah tingkat untuk blob:
Ketika rehidrasi selesai, Anda dapat melihat di portal Microsoft Azure bahwa blob yang sepenuhnya disalin sekarang muncul di tingkat online yang ditargetkan.
Untuk memeriksa status dan prioritas operasi rehidrasi yang tertunda dengan PowerShell, panggil perintah Get-AzStorageBlob, dan periksa properti ArchiveStatus dan RehydratePriority dari blob. Jika rehidrasi adalah operasi salin, periksa properti ini pada blob tujuan. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
Untuk memeriksa status dan prioritas operasi rehidrasi yang tertunda dengan CLI Azure, lakukan perintah az storage blob show, dan periksa properti rehydrationStatus dan rehydratePriority dari blob tujuan. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
Mengubah prioritas rehidrasi dari operasi yang tertunda
Sementara operasi rehidrasi prioritas standar tertunda, Anda dapat mengubah pengaturan prioritas rehidrasi untuk gumpalan dari Standar ke Tinggi untuk menghidrasi kembali blob itu lebih cepat.
Pengaturan prioritas rehidrasi tidak dapat diturunkan dari Tinggi ke Standar untuk operasi yang tertunda. Perlu diingat bahwa memperbarui pengaturan prioritas rehidrasi mungkin memiliki dampak penagihan. Untuk informasi selengkapnya, lihat Rehidrasi blob dari tingkat arsip.
Mengubah prioritas rehidrasi untuk operasi Set Blob Tier yang tertunda
Untuk mengubah prioritas rehidrasi sementara operasi Set Blob Tier prioritas standar tertunda, gunakan portal Microsoft Azure, PowerShell, Azure CLI, atau salah satu pustaka klien Azure Storage.
Untuk mengubah prioritas rehidrasi untuk operasi yang tertunda dengan portal Microsoft Azure, ikuti langkah-langkah berikut:
Navigasikan ke blob tempat Anda ingin mengubah prioritas rehidrasi, dan pilih gumpalan.
Pilih tombol Ubah tingkat.
Dalam dialog Ubah tingkat, atur tingkat akses ke tingkat akses online target untuk blob rehidrasi (panas atau dingin). Bidang status Arsip menunjukkan tingkat online target.
Pada dropdown prioritas Rehydrate, tetapkan prioritas ke High.
Pilih Simpan.
Guna mengubah prioritas rehidrasi untuk operasi yang tertunda dengan PowerShell, pastikan Anda telah menginstal modul Az.Storage, versi 3.12.0 atau yang lebih baru. Selanjutnya, dapatkan properti blob dari layanan. Langkah ini diperlukan untuk memastikan bahwa Anda memiliki objek dengan pengaturan properti terbaru. Terakhir, gunakan properti BlobClient blob untuk mengembalikan referensi .NET ke blob, lalu panggil metode SetAccessTier pada referensi tersebut.
# Get the blob from the service.
$rehydratingBlob = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $ctx
# Verify that the current rehydration priority is Standard.
if ($rehydratingBlob.BlobProperties.RehydratePriority -eq "Standard")
{
# Change rehydration priority to High, using the same target tier.
if ($rehydratingBlob.BlobProperties.ArchiveStatus -eq "rehydrate-pending-to-hot")
{
$rehydratingBlob.BlobClient.SetAccessTier("Hot", $null, "High")
"Changing rehydration priority to High for blob moving to hot tier."
}
if ($rehydratingBlob.BlobProperties.ArchiveStatus -eq "rehydrate-pending-to-cool")
{
$rehydratingBlob.BlobClient.SetAccessTier("Cool", $null, "High")
"Changing rehydration priority to High for blob moving to cool tier."
}
}
Guna mengubah prioritas rehidrasi untuk operasi yang tertunda dengan Azure CLI, pertama pastikan Anda telah menginstal Azure CLI, versi 2.29.2 atau yang lebih baru. Untuk informasi selengkapnya tentang menginstal Azure CLI, lihat Cara menginstal Azure CLI.
Selanjutnya, panggil perintah az storage blob set-tier dengan parameter --rehydrate-priority diatur ke Tinggi. Tingkat target (panas atau dingin) harus tingkat yang sama dengan yang awalnya Anda tentukan untuk operasi rehidrasi. Ingatlah untuk mengganti nol signifikan dalam tanda kurung sudut dengan nilai Anda sendiri:
# Update the rehydration priority for a blob moving to the hot tier.
az storage blob set-tier \
--account-name <storage-account> \
--container-name <container> \
--name <blob> \
--tier Hot \
--rehydrate-priority High \
--auth-mode login
# Show the updated property values.
az storage blob show \
--account-name <storage-account> \
--container-name <container> \
--name <blob> \
--query '[rehydratePriority, properties.rehydrationStatus]' \
--output tsv \
--auth-mode login
T/A
Mengubah prioritas rehidrasi untuk operasi Set Blob Tier yang tertunda
Saat Anda merehidrasi blob dengan menyalin blob yang diarsipkan ke tingkat online, Azure Storage segera membuat blob tujuan di tingkat arsip. Blob tujuan kemudian direhidrasi ke tingkat target dengan prioritas yang ditentukan pada operasi salinan. Untuk informasi selengkapnya tentang rehidrasi gumpalan yang diarsipkan dengan operasi salinan, lihat Salin blob yang diarsipkan ke tingkat online.
Untuk melakukan operasi salin dari tingkat arsip ke tingkat online dengan prioritas Standar, gunakan PowerShell, Azure CLI, atau salah satu pustaka klien Azure Storage. Untuk informasi lebih lanjut, lihat Rehydrate blob dengan operasi salinan. Selanjutnya, untuk mengubah prioritas rehidrasi dari Standar ke Tinggi untuk rehidrasi yang tertunda, hubungi Set Blob Tier pada blob tujuan dan tentukan tingkat target.
Setelah memulai operasi salin, Anda akan melihat di portal Azure, bahwa blob sumber dan tujuan berada di tingkat arsip. Blob tujuan rehidrasi dengan prioritas Standar.
Untuk mengubah prioritas rehidrasi untuk blob tujuan, ikuti langkah-langkah berikut:
Pilih blob tujuan.
Pilih tombol Ubah tingkat.
Dalam dialog Ubah tingkat, atur tingkat akses ke tingkat akses online target untuk blob rehidrasi (panas atau dingin). Bidang status Arsip menunjukkan tingkat online target.
Pada dropdown prioritas Rehydrate, tetapkan prioritas ke High.
Pilih Simpan.
Halaman properti blob tujuan sekarang menunjukkan bahwa itu rehidrasi dengan prioritas Tinggi.
Setelah Anda memulai operasi salinan, periksa properti blob tujuan. Anda akan melihat bahwa blob tujuan berada di tingkat arsip dan merehidrasi dengan prioritas Standar.
# Initialize these variables with your values.
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$destContainerName = "<container>"
$destBlobName = "<destination-blob>"
# Get the storage account context
$ctx = (Get-AzStorageAccount `
-ResourceGroupName $rgName `
-Name $accountName).Context
# Get properties for the destination blob.
$destinationBlob = Get-AzStorageBlob -Container $destContainerName `
-Blob $destBlobName `
-Context $ctx
$destinationBlob.BlobProperties.AccessTier
$destinationBlob.BlobProperties.ArchiveStatus
$destinationBlob.BlobProperties.RehydratePriority
Selanjutnya, hubungi metode SetAccessTier melalui PowerShell untuk mengubah prioritas rehidrasi untuk blob tujuan ke High,seperti yang dijelaskan dalam Ubah prioritas rehidrasi untuk operasi Set Blob Tier yang tertunda. Tingkat target (panas atau dingin) harus tingkat yang sama dengan yang awalnya Anda tentukan untuk operasi rehidrasi. Periksa properti lagi untuk memverifikasi bahwa gumpalan sekarang rehidrasi dengan prioritas tinggi.
Setelah Anda memulai operasi salinan, periksa properti blob tujuan. Anda akan melihat bahwa blob tujuan berada di tingkat arsip dan merehidrasi dengan prioritas Standar.
Selanjutnya, panggil perintah az storage blob set-tier dengan --rehydrate-priority parameter yang diatur ke Tinggi, seperti yang dijelaskan dengan Mengubah prioritas rehidrasi untuk operasi Set Blob Tier yang tertunda. Tingkat target (panas atau dingin) harus tingkat yang sama dengan yang awalnya Anda tentukan untuk operasi rehidrasi. Periksa properti lagi untuk memverifikasi bahwa gumpalan sekarang rehidrasi dengan prioritas tinggi.