Memulihkan file yang dihapus di OneLake

OneLake secara otomatis melindungi data Anda dengan menggunakan penghapusan sementara, yang menyimpan file yang dihapus selama tujuh hari sebelum penghapusan permanen. Perlindungan bawaan ini membantu Anda memulihkan dari penghapusan yang tidak disengaja atau kesalahan pengguna tanpa perlu memulihkan dari cadangan.

Setelah tujuh hari, file yang dihapus sementara dihapus secara permanen dan tidak dapat dipulihkan.

Anda membayar data yang dihapus sementara dengan tarif yang sama dengan data aktif.

Memulihkan file yang dihapus sementara

Anda dapat memulihkan file yang dihapus sementara dengan menggunakan Azure Storage Explorer, Azure PowerShell, atau REST API Azure Storage. Anda memerlukan akses tulis ke file untuk memulihkannya.

Memulihkan file dengan menggunakan Azure Storage Explorer

Azure Storage Explorer menyediakan antarmuka visual untuk menelusuri dan memulihkan file yang dihapus sementara.

Untuk memulihkan file dengan menggunakan Azure Storage Explorer, pastikan Anda memiliki:

Gunakan langkah-langkah berikut untuk memulihkan file:

  1. Buka Azure Storage Explorer dan sambungkan ke ruang kerja OneLake Anda.

  2. Buka lakehouse atau item data yang berisi file yang dihapus.

  3. Pilih tombol dropdown di samping bilah jalur, lalu pilih Blob aktif dan dihapus sementara alih-alih blob Aktif default.

  4. Telusuri ke folder yang berisi file yang dihapus.

  5. Klik kanan file yang dihapus sementara, lalu pilih Batalkan penghapusan.

  6. File dipulihkan ke lokasi aslinya dan segera tersedia.

Memulihkan file dengan menggunakan PowerShell

Gunakan Azure PowerShell untuk mencantumkan dan memulihkan file yang dihapus sementara secara terprogram.

Untuk memulihkan file dengan menggunakan PowerShell, pastikan Anda memiliki:

Gunakan skrip berikut untuk mencantumkan file yang dihapus secara lunak di jalur tertentu.

# 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

Gunakan skrip berikut untuk memulihkan file yang dihapus sementara:

# 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

Untuk contoh PowerShell lainnya, lihat Memulihkan blob dan direktori yang dihapus sementara dengan menggunakan PowerShell.

Memulihkan file dengan menggunakan REST API

Anda juga dapat memulihkan file yang dihapus sementara dengan menggunakan REST API dan SDK Azure Blob Storage. Operasi Batal hapus Blob memulihkan konten dan metadata blob yang dihapus sementara.

Untuk informasi selengkapnya, lihat Batal menghapus BLob REST API.