Fabric Lakehouses have been around for a while, but they still offer no native way to back them up or restore them. Fortunately, the way Lakehouses are structured makes it possible to build your own backup process.

A Lakehouse is split into two areas: Files and Tables. The Files area is straightforward, you can download and back up these items directly. The Tables are powered by Delta tables, which are made up of two key components: the underlying parquet data files and the transaction log that tracks changes. All these files are stored in OneLake and they’re fully accessible to be copied or archived elsewhere. With this in mind, you can manually create reliable backups by simply copying the Lakehouse’s underlying files.

For this walkthrough, I’ll take an existing Lakehouse, download its files, and then restore it to another Lakehouse.

The Lakehouse contains:

  • Files: people.csv and supermarket_visits.json
  • Tables: People and SupermarketVisits

Screenshot of a data explorer interface showing a Lakehouse structure. On the left panel, a Lakehouse folder contains sections for Tables and Files. Under Tables, there are two items: “People” and “SupermarketVisits.” The Files section lists two files: “people.csv” and “supermarket_visits.json.” The breadcrumb navigation at the top reads: “Fabric - Jon > Lakehouse > Files.”

To get started, let’s download the Lakehouse’s files. I find Azure Storage Explorer to be the best tool for the job, it connects directly to the Lakehouse’s OneLake file system and pulls down everything you need. To connect, grab the OneLake URL for your Lakehouse.

'URL: https:onelake.dfs.fabric.micros...'

Then, open Azure Storage Explorer and connect using ‘ADLS Gen2 container or directory’.

Screenshot of the “Connect to Azure Storage” interface showing the “Select Resource” panel. Options listed include: Subscription, Storage account or service, Blob container or directory, ADLS Gen2 container or directory (highlighted), File share, Queue, Table, and Local storage emulator.

Finally, paste the link into the ‘Blob container or directory URL’ box.

Screenshot of the “Connect to Azure Storage” interface showing the “Enter Connection Info” step. The display name is set to “Lakehouse.” The field labeled “Blob container or directory URL” contains a URL starting with “https://onelake.dfs.fabric.microsoft.com” followed by a blacked-out section. A warning message at the bottom states: “The endpoint suffix is not a known blob or DFS suffix. Make sure the URL is correct before continuing.”

Navigate to the root folder and copy the following folders to the desired location, these three folders contain everything required for the Lakehouse.

  • Files
  • TableMaintenance
  • Tables

Screenshot of a file directory interface showing three folders named “Files,” “TableMaintenance,” and “Tables.” Columns include “Access Tier,” “Access Tier Last Modified,” and “Last Modified,” with all folders displaying the same last modified date and time: 27/11/2025 09:46.

Now that we have a snapshot of all the Lakehouse files, we can restore them into a new environment.

To begin the restore process, create a new Lakehouse. Once created, connect to it in Azure Storage Explorer using the same steps as before.

Next, overwrite the Files, TableMaintenance and Tables folders in the new Lakehouse with the corresponding folders from the original Lakehouse. Replacing these restores the Lakehouse.

Screenshot of a data explorer interface showing a Lakehouse structure named “Lakehouse_Restore.” The left panel lists folders: Tables (with subfolders dbo, People, and SupermarketVisits) and Files. The right panel displays two files: “people.csv” and “supermarket_visits.json.” The breadcrumb navigation at the top reads: “Fabric - Jon > Lakehouse_Restore > Files.”

This entire workflow can be automated with PowerShell. That will likely be the focus of my next blog post, so stay tuned.

 

 

Tags: , , , ,