<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Transitioning from ADF to Databricks Workflows: Best Practices in a Multi-Workspace (dev-prod) in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/transitioning-from-adf-to-databricks-workflows-best-practices-in/m-p/155571#M54276</link>
    <description>&lt;P&gt;Hi Community,&lt;/P&gt;&lt;P&gt;We have a data processing framework running on Azure Databricks with Unity Catalog, and we're evaluating options to consolidate our orchestration entirely within the Databricks ecosystem.&lt;/P&gt;&lt;P&gt;CURRENT ARCHITECTURE:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;~20 use cases, each containing 3-6 Python notebooks organized by business domain&lt;/LI&gt;&lt;LI&gt;A shared Python utility package (with&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;init&lt;/STRONG&gt;.py) used across all use cases&lt;/LI&gt;&lt;LI&gt;Two Databricks workspaces: Development and Production&lt;/LI&gt;&lt;LI&gt;Unity Catalog for data governance and storage&lt;/LI&gt;&lt;LI&gt;Azure Data Factory for orchestrating notebook execution (task ordering, dependencies)&lt;/LI&gt;&lt;LI&gt;Azure DevOps CI/CD pipelines (one per use case) deploying notebooks to workspaces via Terraform templates&lt;/LI&gt;&lt;LI&gt;Environment-specific configs (Key Vault names, service connections, catalog references) managed through ADO variable groups and YAML templates&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;WHAT WE WANT TO ACHIEVE:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Replace ADF orchestration with native Databricks orchestration (Lakeflow Jobs / Pipelines)&lt;/LI&gt;&lt;LI&gt;Manage environment-specific parameters (dev/prod catalog names, Key Vault, etc.) cleanly across workspaces&lt;/LI&gt;&lt;LI&gt;Keep our shared Python utility package working across all use cases without duplication&lt;/LI&gt;&lt;LI&gt;Zero changes to existing notebook code&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;QUESTIONS:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Orchestration: What is the recommended Databricks-native approach to replace ADF for orchestrating notebook execution with task dependencies? We need both sequential and parallel task support.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Project structure: With ~20 use cases, what is the recommended way to organize job/pipeline definitions? One monolithic config vs. modular per-use-case definitions?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Shared library code: Our notebooks import from a shared Python package. What is the best way to handle this - sync the entire repo, or package it as a wheel?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Cross-workspace promotion: For promoting from dev to prod workspace, what authentication method works best - Service Principal with OAuth (M2M) or PAT tokens? Any Unity Catalog permission considerations?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;CI/CD: We currently use Azure DevOps plus Terraform for deploying notebook code and job definitions to both workspaces. For those who have made a similar migration - does it make sense to replace Azure DevOps with a Databricks-native deployment approach, or do most teams keep an external CI/CD tool alongside Databricks orchestration?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Incremental migration: Can we migrate one use case at a time while others still run via the legacy ADF setup, without conflicts?&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Any real-world experience, recommended approaches, or reference architectures would be very helpful. Is there any tutorial available for it then please provide the link also.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
    <pubDate>Mon, 27 Apr 2026 13:38:53 GMT</pubDate>
    <dc:creator>Darshan137</dc:creator>
    <dc:date>2026-04-27T13:38:53Z</dc:date>
    <item>
      <title>Transitioning from ADF to Databricks Workflows: Best Practices in a Multi-Workspace (dev-prod)</title>
      <link>https://community.databricks.com/t5/data-engineering/transitioning-from-adf-to-databricks-workflows-best-practices-in/m-p/155571#M54276</link>
      <description>&lt;P&gt;Hi Community,&lt;/P&gt;&lt;P&gt;We have a data processing framework running on Azure Databricks with Unity Catalog, and we're evaluating options to consolidate our orchestration entirely within the Databricks ecosystem.&lt;/P&gt;&lt;P&gt;CURRENT ARCHITECTURE:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;~20 use cases, each containing 3-6 Python notebooks organized by business domain&lt;/LI&gt;&lt;LI&gt;A shared Python utility package (with&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;init&lt;/STRONG&gt;.py) used across all use cases&lt;/LI&gt;&lt;LI&gt;Two Databricks workspaces: Development and Production&lt;/LI&gt;&lt;LI&gt;Unity Catalog for data governance and storage&lt;/LI&gt;&lt;LI&gt;Azure Data Factory for orchestrating notebook execution (task ordering, dependencies)&lt;/LI&gt;&lt;LI&gt;Azure DevOps CI/CD pipelines (one per use case) deploying notebooks to workspaces via Terraform templates&lt;/LI&gt;&lt;LI&gt;Environment-specific configs (Key Vault names, service connections, catalog references) managed through ADO variable groups and YAML templates&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;WHAT WE WANT TO ACHIEVE:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Replace ADF orchestration with native Databricks orchestration (Lakeflow Jobs / Pipelines)&lt;/LI&gt;&lt;LI&gt;Manage environment-specific parameters (dev/prod catalog names, Key Vault, etc.) cleanly across workspaces&lt;/LI&gt;&lt;LI&gt;Keep our shared Python utility package working across all use cases without duplication&lt;/LI&gt;&lt;LI&gt;Zero changes to existing notebook code&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;QUESTIONS:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Orchestration: What is the recommended Databricks-native approach to replace ADF for orchestrating notebook execution with task dependencies? We need both sequential and parallel task support.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Project structure: With ~20 use cases, what is the recommended way to organize job/pipeline definitions? One monolithic config vs. modular per-use-case definitions?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Shared library code: Our notebooks import from a shared Python package. What is the best way to handle this - sync the entire repo, or package it as a wheel?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Cross-workspace promotion: For promoting from dev to prod workspace, what authentication method works best - Service Principal with OAuth (M2M) or PAT tokens? Any Unity Catalog permission considerations?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;CI/CD: We currently use Azure DevOps plus Terraform for deploying notebook code and job definitions to both workspaces. For those who have made a similar migration - does it make sense to replace Azure DevOps with a Databricks-native deployment approach, or do most teams keep an external CI/CD tool alongside Databricks orchestration?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Incremental migration: Can we migrate one use case at a time while others still run via the legacy ADF setup, without conflicts?&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Any real-world experience, recommended approaches, or reference architectures would be very helpful. Is there any tutorial available for it then please provide the link also.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
      <pubDate>Mon, 27 Apr 2026 13:38:53 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/transitioning-from-adf-to-databricks-workflows-best-practices-in/m-p/155571#M54276</guid>
      <dc:creator>Darshan137</dc:creator>
      <dc:date>2026-04-27T13:38:53Z</dc:date>
    </item>
  </channel>
</rss>

