Поделиться через


Восстановление удаленных файлов в OneLake

OneLake автоматически защищает данные с помощью обратимого удаления, который сохраняет удаленные файлы в течение семи дней до окончательного удаления. Эта встроенная защита помогает восстановиться после случайного удаления или ошибок пользователей без необходимости восстановления из резервных копий.

Через семь дней временно удаленные файлы удаляются окончательно и не могут быть восстановлены.

Вы оплачиваете временно удаленные данные по той же ставке, что и активные данные.

Восстановите мягко удаленные файлы

Вы можете восстановить обратимо удаленные файлы с помощью обозревателя службы хранилища Azure, Azure PowerShell или REST API службы хранилища Azure. Для их восстановления требуется доступ на запись к файлам.

Восстановление файлов с помощью обозревателя службы хранилища Azure

Обозреватель службы хранилища Azure предоставляет визуальный интерфейс для просмотра и восстановления обратимо удаленных файлов.

Чтобы восстановить файлы с помощью обозревателя службы хранилища Azure, убедитесь, что у вас есть:

Чтобы восстановить файлы, выполните следующие действия.

  1. Откройте обозреватель службы хранилища Azure и подключитесь к рабочей области OneLake.

  2. Перейдите к lakehouse или элементу данных, который содержал удаленные файлы.

  3. Нажмите кнопку раскрывающегося списка рядом с строкой пути, а затем выберите активные и мягко удаленные BLOB-объекты вместо активных BLOB-объектов по умолчанию.

  4. Перейдите к папке, содержащей удаленный файл.

  5. Щелкните правой кнопкой мыши по мягко удаленному файлу и выберите Отменить.

  6. Файл восстанавливается в исходном расположении и сразу же доступен.

Восстановление файлов с помощью PowerShell

Используйте Azure PowerShell для создания списка и восстановления обратимо удаленных файлов программным способом.

Чтобы восстановить файлы с помощью PowerShell, убедитесь, что у вас есть:

Используйте следующий скрипт для перечисления обратимо удаленных файлов в заданном пути.

# 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 см. в статье Восстановление мягко удаленных BLOB-объектов и каталогов с помощью PowerShell.

Восстановление файлов с помощью REST API

Вы также можете восстановить мягко удаленные файлы с помощью REST API и SDK хранилища BLOB-объектов Azure. Операция восстановления удаленного объекта BLOB возвращает содержимое и метаданные мягко удаленного BLOB-объекта.

Дополнительные сведения см. в разделе Undelete BLOB REST API.