Az archív szinten lévő blobok olvasásához először rehidratálnia kell a blobot egy online (gyakori, ritka vagy hideg) szintre. A blobokat kétféleképpen lehet rehidratálni:
Ha a blobréteg beállítása művelettel az archív szintről a gyakori, ritka elérésű vagy ritka elérésű szintre módosítja a réteget .
Blob rehidratálásakor megadhatja a művelet prioritását standard vagy magas prioritásúra. A standard prioritású rehidratálási művelet végrehajtása akár 15 órát is igénybe vehet. A magas prioritású műveletek elsőbbséget élveznek a standard prioritású kérésekkel szemben, és egy órán belül befejeződhetnek a 10 GB-nál kisebb méretű objektumok esetében. Amíg a művelet függőben van, a rehidratálási prioritást a Standard értékről a Magas értékre módosíthatja.
Az Azure Event Grid konfigurálható úgy, hogy eseményt aktiváljon, ha a rehidratálás befejeződött, és az alkalmazáskódot válaszként futtatja. Ha tudni szeretné, hogyan kezelheti az Azure-függvényt futtató eseményeket a blobrehidratálási művelet befejezésekor, olvassa el az Azure-függvény futtatása blobrehidratálási eseményre válaszul című témakört.
A blobok rehidratálásával kapcsolatos további információkért lásd az archív réteg blobrehidratálását.
Blob rehidratálása másolási művelettel
Ha egy blobot online szintre másolással szeretne rehidratálni az archív rétegből, használja az Azure Portalt, a PowerShellt, az Azure CLI-t vagy az Azure Storage-ügyfélkódtárak egyikét. Ne feledje, hogy ha egy archivált blobot online szintre másol, a forrás- és célbloboknak eltérő névvel kell rendelkezniük.
Az archivált blob online célszintre másolása ugyanazon a tárfiókon belül támogatott. A 2021-02-12-es szolgáltatásverziótól kezdve az archivált blobokat átmásolhatja egy másik tárfiókba, amennyiben a célfiók ugyanabban a régióban található, mint a forrásfiók.
A másolási művelet befejezése után a célblob megjelenik az archív szinten. A célblob ezután rehidratálva lesz a másolási műveletben megadott online szintre. Amikor a célblob teljesen rehidratálva van, elérhetővé válik az új online szinten.
Blob rehidratálása ugyanarra a tárfiókra
Az alábbi példák bemutatják, hogyan másolhat egy archivált blobot egy olyan blobba, amely ugyanabban a tárfiókban található gyakori elérésű rétegben található.
A tárfiók navigációs ablaktábláján válassza a Storage böngészőt.
A tárolóböngészőben keresse meg az archivált blob helyét, jelölje be a blob mellett megjelenő jelölőnégyzetet, majd kattintson a Másolás gombra.
Lépjen arra a tárolóra, ahová a rehidratált blobot helyezni szeretné, majd válassza a Beillesztés gombot.
Megjelenik az Archív blob beillesztése párbeszédpanel.
Feljegyzés
Ha a Beillesztés gombot a forrásblob helyével megegyező helyen választja ki, akkor a Cél blobnév mezőben megjelenő alapértelmezett név numerikus utótagot tartalmaz. Ez biztosítja, hogy a forrás- és célblobok neve eltérő legyen. Ezt a nevet módosíthatja, ha azt szeretné, hogy a név eltérjön a forrásblob nevéétől.
Az Archív blob beillesztése párbeszédpanelen válasszon egy hozzáférési szintet és egy rehidratálási prioritást. Ezután válassza a Beillesztés lehetőséget a blob rehidratálásához.
Fontos
Ne törölje a forrásblobot rehidratálás közben.
Ha egy archivált blobot egy online szintre szeretne másolni a PowerShell használatával, hívja meg a Start-AzStorageBlobCopy parancsot, és adja meg a célszintet és a rehidratálási prioritást. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
# 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
Ha egy archivált blobot online szintre szeretne másolni az Azure CLI-vel, hívja meg az az storage blob copy start parancsot, és adja meg a célszintet és a rehidratálási prioritást. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
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
n/a
Blob rehidratálása egy másik tárfiókba ugyanabban a régióban
Az alábbi példák bemutatják, hogyan másolhat egy archivált blobot egy másik tárfiók gyakori elérésű rétegbeli blobjába.
Feljegyzés
A cél- és forrásfióknak ugyanabban a régióban kell lennie.
A tárfiók navigációs ablaktábláján válassza a Storage böngészőt.
A tárolóböngészőben keresse meg az archivált blob helyét, jelölje be a blob mellett megjelenő jelölőnégyzetet, majd kattintson a Másolás gombra.
Lépjen a céltárfiókra, és a navigációs panelen válassza a Storage böngészőt.
Lépjen arra a tárolóra, ahová a rehidratált blobot helyezni szeretné, majd válassza a Beillesztés gombot.
Megjelenik az Archív blob beillesztése párbeszédpanel.
Az Archív blob beillesztése párbeszédpanelen válasszon egy hozzáférési szintet és egy rehidratálási prioritást. Ezután válassza a Beillesztés lehetőséget a blob rehidratálásához.
Fontos
Ne törölje a forrásblobot rehidratálás közben.
Ha egy archivált blobot egy másik tárfiók online rétegében lévő blobba szeretne másolni a PowerShell-lel, győződjön meg arról, hogy telepítette az Az.Storage modul 4.4.0-s vagy újabb verzióját. Ezután hívja meg a Start-AzStorageBlobCopy parancsot, és adja meg a cél online szintet és a rehidratálási prioritást. Meg kell adnia egy közös hozzáférésű jogosultságkódot (SAS) az archivált forrásblob olvasási engedélyeivel.
Az alábbi példa bemutatja, hogyan másolhat egy archivált blobot egy másik tárfiók gyakori elérésű rétegére. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
$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
Ha egy archivált blobot egy másik tárfiók online rétegében lévő blobba szeretne másolni az Azure CLI-vel, győződjön meg arról, hogy a 2.35.0-s vagy újabb verziót telepítette. Ezután hívja meg az az storage blob copy start parancsot, és adja meg a cél online szintet és a rehidratálási prioritást. Meg kell adnia egy közös hozzáférésű jogosultságkódot (SAS) az archivált forrásblob olvasási engedélyeivel.
Az alábbi példa bemutatja, hogyan másolhat egy archivált blobot egy másik tárfiók gyakori elérésű rétegére. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
# 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
n/a
Rehidratálás másodlagos régióból
Ha úgy konfigurálta a tárfiókot, hogy írásvédett georedundáns tárolást (RA-GRS) használjon, akkor a másodlagos régióban található archivált blobot átmásolhatja egy másik, ugyanabban a másodlagos régióban található tárfiók online rétegére.
A másodlagos régióból való rehidratáláshoz használja az előző szakaszban ismertetett útmutatást (Blob rehidratálása egy másik tárfiókba ugyanabban a régióban). Fűzze hozzá az utótagot -secondary a forrásvégpont fióknevéhez. Ha például a Blob Storage elsődleges végpontja az myaccount.blob.core.windows.net, akkor a másodlagos végpont az myaccount-secondary.blob.core.windows.net. A tárfiók fiókhozzáférés-kulcsai megegyeznek az elsődleges és a másodlagos végpontok esetében is.
Ha egy blobot úgy szeretne rehidratálni, hogy a réteget az archívumról a gyakori vagy ritka elérésűre módosítja, használja az Azure Portalt, a PowerShellt vagy az Azure CLI-t.
Ha egy blob rétegét archívumról gyakori vagy ritka elérésűre szeretné módosítani az Azure Portalon, kövesse az alábbi lépéseket:
Keresse meg a rehidratálandó blobot az Azure Portalon.
Válassza az Oldal jobb oldalán található Továbbiak gombot.
Válassza a Változási szint lehetőséget.
Válassza ki a célelérési szintet a hozzáférési szint legördülő listájából.
A Rehidratálás prioritás legördülő listájában válassza ki a kívánt rehidratálási prioritást. Ne feledje, hogy a rehidratálási prioritás magasra állítása általában gyorsabb rehidratálást eredményez, de nagyobb költséggel jár.
Válassza ki a Mentés gombot.
Ha a PowerShell használatával szeretné módosítani egy blob rétegét az archívumról a gyakori vagy ritka elérésűre, a blob BlobClient tulajdonságával adjon vissza egy .NET-hivatkozást a blobra, majd hívja meg a SetAccessTier metódust ezen a hivatkozáson. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
# 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")
Ha az Azure CLI használatával szeretné módosítani egy blob szintjét az archívumról a gyakori vagy ritka elérésűre, hívja meg az az storage blob set-tier parancsot. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
az storage blob set-tier \
--account-name <storage-account> \
--container-name <container> \
--name <archived-blob> \
--tier Hot \
--rehydrate-priority Standard \
--auth-mode login
Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows parancshéj (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ("") helyett dupla idézőjelekkel ("") foglalja össze. Ez a példa nem tartalmaz SAS-jogkivonatot, mert feltételezi, hogy a Microsoft Entra ID használatával adta meg az engedélyezési hitelesítő adatokat. Az AzCopy használatának első lépései című cikkből megtudhatja, hogyan adhat meg hitelesítési hitelesítő adatokat a tárolási szolgáltatásnak.
Ha egy tárolóban vagy mappában lévő archivált blobokat a gyakori vagy ritka elérésű szintre szeretné rehidratálni, számba kell adni a blobokat, és mindegyiken meghívni a Blobréteg beállítása műveletet. Az alábbi példa bemutatja, hogyan hajthatja végre ezt a műveletet:
Amíg a blob rehidratálódik, az Azure Portal, a PowerShell vagy az Azure CLI használatával ellenőrizheti annak állapotát és rehidratálási prioritását. Az állapottulajdonság a rehidratálási művelet célrétegétől függően rehidratát-függőben lévő vagy rehidratát-függőben lévő vagy rehidratát-függőben lévő értéket adhat vissza. A rehidratálás prioritási tulajdonsága Standard vagy High értéket ad vissza.
Ne feledje, hogy egy archivált blob rehidratációja akár 15 órát is igénybe vehet, és a blob állapotának ismételt lekérdezésével megállapíthatja, hogy a rehidratálás befejeződött-e, nem hatékony. Ha az Azure Event Grid használatával rögzíti a rehidratálás befejezésekor aktiválódott eseményt, jobb teljesítményt és költségoptimalizálást kínál. Ha tudni szeretné, hogyan futtathat Azure-függvényt, ha egy esemény blobrehidrációt aktivál, tekintse meg az Azure-függvény blobrehidratálási eseményre adott válaszát.
Ha ellenőrizni szeretné egy függőben lévő rehidratálási művelet állapotát és prioritását az Azure Portalon, jelenítse meg a blob változásszint-párbeszédpaneljét :
Ha a rehidratálás befejeződött, az Azure Portalon láthatja, hogy a teljesen rehidratált blob most megjelenik a célzott online szinten.
Egy függőben lévő rehidratálási művelet állapotának és prioritásának a PowerShell-lel való ellenőrzéséhez hívja meg a Get-AzStorageBlob parancsot, és ellenőrizze a blob ArchiveStatus és RehydratePriority tulajdonságait. Ha a rehidratálás másolási művelet, ellenőrizze ezeket a tulajdonságokat a célblobon. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
Ha ellenőrizni szeretné egy függőben lévő rehidratálási művelet állapotát és prioritását az Azure CLI-vel, hívja meg az az storage blob show parancsot, és ellenőrizze a cél blob rehidratációsStatus és rehidratálásPriority tulajdonságait. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
Függőben lévő művelet rehidratálási prioritásának módosítása
Amíg egy standard prioritású rehidratálási művelet függőben van, a blob rehidratálási prioritási beállítását a Standard értékről a Magas értékre módosíthatja a blob gyorsabb rehidratálásához.
Függőben lévő művelet esetén a rehidratálás prioritási beállítása nem csökkenthető magasról Standard értékre. Ne feledje, hogy a rehidratálási prioritás módosítása számlázási hatással lehet. További információ: Blob rehidratáció az archív rétegből.
Függőben lévő Blobréteg beállítása művelet rehidratálási prioritásának módosítása
Ha módosítani szeretné a rehidratálási prioritást, amíg egy standard prioritású Set Blob Tier művelet függőben van, használja az Azure Portalt, a PowerShellt, az Azure CLI-t vagy az Azure Storage-ügyfélkódtárak egyikét.
Ha módosítani szeretné egy függőben lévő művelet rehidratálási prioritását az Azure Portalon, kövesse az alábbi lépéseket:
Keresse meg azt a blobot, amelynek a rehidratálási prioritását módosítani szeretné, és válassza ki a blobot.
Válassza a Réteg módosítása gombot.
A Réteg módosítása párbeszédpanelen állítsa a hozzáférési szintet a rehidratáló blob (gyakori vagy ritka elérésű) cél online hozzáférési szintjére. Az Archív állapot mező a cél online szintet jeleníti meg.
A Rehydrate priority legördülő listában állítsa a prioritást Magas értékre.
Válassza a Mentés lehetőséget.
Ha módosítani szeretné egy függőben lévő művelet rehidratálási prioritását a PowerShell használatával, győződjön meg arról, hogy telepítette az Az.Storage modul 3.12.0-s vagy újabb verzióját. Ezután kérje le a blob tulajdonságait a szolgáltatásból. Erre a lépésre azért van szükség, hogy a legújabb tulajdonságbeállításokkal rendelkező objektummal rendelkezzen. Végül a blob BlobClient tulajdonságával adjon vissza egy .NET-hivatkozást a blobra, majd hívja meg a SetAccessTier metódust ezen a hivatkozáson.
# 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."
}
}
Ha módosítani szeretné egy függőben lévő művelet rehidratálási prioritását az Azure CLI-vel, először győződjön meg arról, hogy telepítette az Azure CLI 2.29.2-es vagy újabb verzióját. Az Azure CLI telepítésével kapcsolatos további információkért lásd : Az Azure CLI telepítése.
Ezután hívja meg az az storage blob set-tier parancsot a --rehydrate-priority Magas paraméterrel. A célszintnek (gyakori vagy ritka elérésű) a rehidratálási művelethez eredetileg megadott szintnek kell lennie. Ne felejtse el lecserélni a szögletes zárójelek helyőrzőit a saját értékeire:
# 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
n/a
Függőben lévő Blob másolása művelet rehidratálási prioritásának módosítása
Amikor az archivált blobot online szintre másolva rehidratál egy blobot, az Azure Storage azonnal létrehozza a célblobot az archív szinten. A célblob ezután rehidratálva lesz a célszintre a másolási műveletben megadott prioritással. Az archivált blob másolási művelettel történő rehidratálásával kapcsolatos további információkért lásd : Archivált blob másolása online szintre.
Ha a másolási műveletet az archív szintről egy standard prioritású online szintre szeretné végrehajtani, használja a PowerShellt, az Azure CLI-t vagy az Azure Storage-ügyfélkódtárak egyikét. További információ: Blob rehidratálása másolási művelettel. Ezután a rehidratálási prioritás standardról magasra történő módosításához a függőben lévő rehidratáláshoz hívja meg a blobszint beállítását a célblobon, és adja meg a célszintet.
Miután elindította a másolási műveletet, az Azure Portalon láthatja, hogy a forrás- és a célblob is az archív szinten van. A célblob standard prioritással rehidratálódik.
A cél blob rehidratálási prioritásának módosításához kövesse az alábbi lépéseket:
Válassza ki a célblobot.
Válassza a Réteg módosítása gombot.
A Réteg módosítása párbeszédpanelen állítsa a hozzáférési szintet a rehidratáló blob (gyakori vagy ritka elérésű) cél online hozzáférési szintjére. Az Archív állapot mező a cél online szintet jeleníti meg.
A Rehydrate priority legördülő listában állítsa a prioritást Magas értékre.
Válassza a Mentés lehetőséget.
A célblob tulajdonságainak lapja most azt mutatja, hogy magas prioritású rehidratáló.
Miután elindította a másolási műveletet, ellenőrizze a cél blob tulajdonságait. Látni fogja, hogy a célblob az archív szinten van, és Standard prioritással rehidratál.
# 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
Ezután hívja meg a SetAccessTier metódust a PowerShellen keresztül, hogy a célblob rehidratálási prioritását magasra módosítsa a függőben lévő Blobréteg beállítása művelet rehidratálási prioritásának módosítása című cikkben leírtak szerint. A célszintnek (gyakori vagy ritka elérésű) a rehidratálási művelethez eredetileg megadott szintnek kell lennie. Ellenőrizze újra a tulajdonságokat annak ellenőrzéséhez, hogy a blob most magas prioritású rehidratálva van-e.
Miután elindította a másolási műveletet, ellenőrizze a cél blob tulajdonságait. Látni fogja, hogy a célblob az archív szinten van, és Standard prioritással rehidratál.
Ezután hívja meg az az storage blob set-tier parancsot a --rehydrate-priority Magas paraméterrel, a függőben lévő Blobréteg beállítása művelet rehidratálási prioritásának módosítása című szakaszban leírtak szerint. A célszintnek (gyakori vagy ritka elérésű) a rehidratálási művelethez eredetileg megadott szintnek kell lennie. Ellenőrizze újra a tulajdonságokat annak ellenőrzéséhez, hogy a blob most magas prioritású rehidratálva van-e.
n/a
Lásd még
a blobadatok gyakori, ritka elérésű és archív hozzáférési szintjei.