This blog post will resonate if you/your company fit into any of the following profiles:
You are a strong fit for this discussion if your data is already accessible through Databricks, but you use an External BI tool for visualization.
Unity Catalog is the central repository for your data, where you govern, monitor, and share it across your consumers. It governs your tables, views, functions, models, files (through Volumes), MCP servers, and Business Semantics too.
Databricks Unity Catalog
Business Semantics has two integrated components:
Metric Views in the Unity Catalog
Why this migration matters
Many organizations want to reduce the fragmentation between their data platform and their BI layer. Migrating dashboards into Databricks brings the semantic logic and the dashboard experience closer to the governed data foundation. In the Genie Code import flow, the generated dashboard is connected to metric views, and those metric views can later be promoted to Unity Catalog so they become reusable across dashboards, Genie Agents, and notebooks, with governance features such as access controls, lineage, and discoverability.
That matters because a migration isn't only about copying charts. It's about preserving business logic in a reusable, governed form.
Here, we detail a practical migration framework for Power BI and Tableau reports, as they are currently supported out of the box for an automated migration. The table below outlines the shape of the journey:
|
Phase |
Steps |
|
Plan |
(1) Pilot (2) Guardrails |
|
Prepare |
(3) Data prep & Exporting dashboards |
|
Import & refine |
(4) Import with Genie Code (5) Iterate with screenshots |
|
Productionize |
(6) Know the coverage (7) Promote to Unity Catalog (8) Validate (9) Define the right permissions model for your objects and implement policies for granular access control (10) Productionize and Go Live |
Choose a representative subset of dashboards that varies in complexity, so you learn where the process is smooth and where follow-up work is needed.
A good pilot typically includes:
The goal at this stage isn't scale. It is to understand migration patterns early, build confidence, and identify which dashboards will need further refinement.
Before preparing files or prompting Genie Code, align on the target operating model. This matters most in larger migrations, where different teams might otherwise create dashboards, metric views, and Genie assets with inconsistent permissions and naming.
Set guardrails in four areas first:
This is also where teams usually spot duplicate KPI logic, near-identical dashboards that can be merged, and shared semantic layers that should be migrated once and reused broadly.
A practical tip: Encode these conventions directly into your Genie Code instructions. You can tell Genie Code which catalog and schema to use, how to name assets, and when to prefer existing governed resources over creating new ones.
Start by selecting reports that query from the Databricks Unity Catalog. If your Power BI/Tableau reports do not query from it today, can you make it so that they can query from Databricks?
Here are some instructions on how you can connect to the data source and make it available/visible through Unity Catalog. Pick from one or more of the following connectivity options based on your source:
|
If your data is… |
Use |
What it does |
|
In a source system, and you want to ingest this to the lakehouse |
Ingests from enterprise apps, databases, cloud storage, message buses, and local files into Unity Catalog. |
|
|
Must stay where it lives |
Makes it visible from Unity Catalog without moving it. Watch latency on large inputs as queries still run against the source. |
|
|
Just static files |
Makes the files visible from Unity Catalog. |
Once your data is reachable, export your dashboards in two quick steps.
Step 1: Export from your BI tool
|
From |
Export as |
Reference |
|
Tableau |
.twb, .twbx, .tds, or .tdsx |
Check out the Tableau documentation for more information. |
|
Power BI |
.pbit |
Check out this documentation to learn more about this format. Make sure that you export the .pbit from the reports that were used to generate your semantic model in the first place from Power BI Desktop. |
Step 2: Save your exports to a Volume in Unity Catalog
Move the exported files to a Unity Catalog volume. Genie Code can import directly from there, and it's required for any file larger than 100 MB.
Note that if your report file has less than 100 MB, you can directly attach it to the Genie Code chat instead of uploading it to a Volume, or use the Import dashboard from file approach outlined in the next section.
Upload your dashboard files to a Volume in the Unity Catalog
Pre-requisites: Please validate these requirements before proceeding with the migration.
There are two ways to start the import:
Import dashboard from file
The hands-on flow would be:
Using /importBI through Genie Code
From here, Genie Code walks you through the migration:
Genie Code confirming the target catalog and schema for the Metric Views
Key considerations
Treat migration as an iterative workflow, not a one-shot conversion. Expect to prompt again after the first pass. Work through the migration plan step by step, checking whether each pattern is converted correctly and adding clues where one needs more guidance.
Start with the semantic layer: If your report depends on a shared Tableau data source or a shared Power BI model, migrate the semantic layer first, before recreating the visuals.
Example prompt:
Then build the visuals: When you refine the visuals, screenshots of the original dashboard still help improve layout and formatting fidelity.
Example prompts:
Instructing Genie Code using Screenshots
A common mistake here is a single generic prompt like "make it better." You'll get more reliable results by asking for one class of adjustment at a time: layout, filters, calculations, formatting, or field naming.
The flow covers a meaningful slice of typical BI assets out of the box, but a few things need a human eye. Here are some insights based on multiple migrations executed by the Databricks team:
|
Migrates well |
Watch for |
|
Calculated fields and measures |
Chart types match only where a direct equivalent exists |
|
Data source connections |
No equivalent? It may fall back to a bar chart |
|
Charts and visualizations |
Widget positioning is approximate: expect layout tweaks |
|
Dashboard- and page-level filters |
Some level-of-detail expressions and drill-down behavior may not be fully covered yet |
Refer to the release notes for the latest feature coverage
After import, Genie Code creates metric views for your measures and dimensions, local to the dashboard by default, which is ideal while you iterate. Point it at a specific catalog (with the right permissions) and it can create them directly in Unity Catalog instead.
For production, promote local metric views to Unity Catalog so they're reusable across dashboards, Genie Agents, and notebooks under central governance.
This is the step that turns a dashboard migration into a governed analytics foundation, not just a dashboard-only conversion.
Before you scale migration across a larger estate, validate a few core areas carefully:
This final review is what separates a technically successful import from a truly production-ready rollout.
Ready-to-copy validation prompts:
To secure access to your objects and establish granular permissions, Databricks allows you to manage permissions and to implement policies at the Unity Catalog level using Row-Level Security (RLS) and Column-Level Masking (CLM).
Learn more about these concepts and make sure to implement them so that your semantic model is well governed:
And note that when you publish your dashboards in AI/BI, you get to choose whether your users will all see the same thing (through shared data permissions), or they will only see what they are entitled to see, as per their permissions in the Unity Catalog (individual data permission).
Learn more about publishing and sharing your dashboards here: Share a dashboard.
No migration tool is a silver bullet, so expect some final tweaks even after Genie Code's back-and-forth: matching your business or dev standards, visual and color updates, filter or parameter changes, custom logic, or materializations for speed.
Ready-to-copy Genie prompt:
"Ensure this migrated dashboard is Genie-enabled. If the default companion Genie Agent is too narrow, recommend whether I should link an existing Genie Agent or create a separate one for ad-hoc business questions beyond the dashboard visuals”.
Enable Genie for your AI/BI Dashboards
Dashboard users can talk to Genie while examining the charts to get detailed insights
Ready-to-copy instruction prompt:
"Add to instruction that whenever I create or populate a new dashboard, The Genie Code should automatically add a first canvas page called "About" containing a text widget with the dashboard description, an image widget placeholder, and the owner's name as a mailto: markdown link. The widget summarizing the dashboard's purpose should include the brief summary for each page with hyperlinks"
Refer to these for advanced customizations:
|
To |
Reference |
|
Apply advanced metric view patterns |
Advanced Metric view patterns: https://docs.databricks.com/aws/en/uc-semantics/metric-views/advanced-techniques Level of Detail expressions https://docs.databricks.com/aws/en/uc-semantics/metric-views/level-of-detail Reference measures repo https://github.com/databricks-solutions/uc-semantics-patterns |
|
Customize color palette |
Design Beautiful Dashboards in AI/BI (https://www.databricks.com/blog/design-beautiful-dashboards-aibi) |
|
Build custom visuals with VegaLite |
Create custom visuals: https://docs.databricks.com/aws/en/dashboards/manage/visualizations/custom-visualizations VegaLite examples: https://vega.github.io/vega-lite/examples/ |
|
Speed up common aggregations |
Materialize Metric Views: https://docs.databricks.com/aws/en/uc-semantics/metric-views/materialization |
Migrating dashboards to Databricks AI/BI does not have to be a long, manual conversion project.
As BI tools continue to evolve, organizations will need to migrate their older reports and dashboards. The questions that need to be answered while deciding the best way forward are:
The product is evolving quickly, and the migration target keeps strengthening as AI/BI and Business Semantics add richer capabilities.
So treat your migration as an iterative modernization effort, not a static task. Start with the fastest path to a trusted dashboard, reuse governed assets where possible, and keep refining the semantic layer as new capabilities arrive.
Our platform is moving really fast, and techniques that still need workarounds today may become first-class migration patterns by the time your next wave lands. Stay tuned!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.