OneLake は論理的な削除を使用してデータを自動的に保護します。論理的な削除では、削除されたファイルは完全に削除されるまで 7 日間保持されます。 この組み込み保護は、バックアップから復元する必要なく、誤った削除やユーザー エラーから回復するのに役立ちます。
7 日後、論理的に削除されたファイルは完全に削除され、回復できません。
論理的に削除されたデータに対しては、アクティブ データと同じ料金で支払います。
ソフト削除されたファイルを復元する
論理的に削除されたファイルは、Azure Storage Explorer、Azure PowerShell、または Azure Storage REST API を使用して復元できます。 ファイルを復元するには、ファイルへの書き込みアクセス権が必要です。
Azure Storage Explorer を使用してファイルを復元する
Azure Storage Explorer には、論理的に削除されたファイルを参照および復元するためのビジュアル インターフェイスが用意されています。
Azure Storage Explorer を使用してファイルを復元するには、次の内容があることを確認します。
- コンピューターにインストールされている Azure Storage Explorer
- OneLake ワークスペースへの接続。 手順については、「 OneLake で Azure Storage Explorer を使用する」を参照してください。
ファイルを復元するには、次の手順に従います。
Azure Storage Explorer を開き、OneLake ワークスペースに接続します。
削除されたファイルを含むレイクハウスまたはデータ項目に移動します。
ドロップダウン ボタンをパス バーの横で選択し、既定の アクティブな BLOB の代わりに アクティブおよびソフト削除された BLOB を選択します。
削除されたファイルを含むフォルダーを参照します。
ソフト削除されたファイルを右クリックし、復元を選択します。
ファイルは元の場所に復元され、すぐに使用できます。
PowerShell を使用してファイルを復元する
Azure PowerShell を使用して、論理的に削除されたファイルをプログラムで一覧表示および復元します。
PowerShell を使用してファイルを復元するには、次の機能があることを確認します。
- Azure PowerShell Az.Storage モジュール がインストールされている
- OneLake に対する認証。 手順については、「 PowerShell を使用して OneLake に接続する」を参照してください。
次のスクリプトを使用して、特定のパス内の論理的に削除されたファイルを一覧表示します。
# Connect to OneLake
$ctx = New-AzStorageContext -StorageAccountName "onelake" -UseConnectedAccount -endpoint "fabric.microsoft.com"
# List soft-deleted blobs in a container (workspace)
$workspaceName = "your-workspace-name"
$path = "your-lakehouse.Lakehouse/Files/"
Get-AzStorageBlob -Container $workspaceName -Context $ctx -Prefix $path -IncludeDeleted |
Where-Object { $_.IsDeleted } |
Select-Object Name, DeletedTime, RemainingDaysBeforePermanentDelete
論理的に削除されたファイルを復元するには、次のスクリプトを使用します。
# Connect to OneLake
$ctx = New-AzStorageContext -StorageAccountName "onelake" -UseConnectedAccount -endpoint "fabric.microsoft.com"
# Restore a specific blob
$workspaceName = "your-workspace-name"
$blobPath = "your-lakehouse.Lakehouse/Files/deleted-file.parquet"
Get-AzStorageBlob -Container $workspaceName -Context $ctx -Blob $blobPath -IncludeDeleted |
Where-Object { $_.IsDeleted } |
Restore-AzStorageBlob
PowerShell のその他の例については、「 PowerShell を使用して論理的に削除された BLOB とディレクトリを復元する」を参照してください。
REST API を使用してファイルを復元する
Azure Blob Storage REST API と SDK を使用して、論理的に削除されたファイルを復元することもできます。 削除の取り消し操作では、論理的に削除された BLOB の内容とメタデータが復元されます。
詳細については、「 BLOB REST API の削除の取り消し」を参照してください。