yesterday
Hello,
Iām using Databricks Asset Bundles (DABs) to orchestrate several workflows, and Iād like to update the root path where the bundle is stored.
Before making this change, I want to understand its impact:
Will changing the bundle root path remove or reset the existing workflow/job run history?
If so, is there a way to preserve the run history while changing the bundle location?
How does Databricks internally associate deployed jobs with their run history?
Where is this metadata stored, and is there documentation/articles that explains what happens in the backend?
If anyone has experience with this or can point me to an official source, Iād really appreciate it.
Thanks.
yesterday
Hi @YS1
I did some research on this topic and found a few official documents and insights that may help:
Changing the bundle root path itself wonāt remove or reset your job run history. Run history in Databricks is tied to the job_id that exists inside the workspace, not to where the Databricks Asset Bundle lives in your repo.
A DAB is just a local definition of assets. When you run databricks bundle deploy, the CLI updates (or creates) remote resources based on the job definition, but the run history stays attached to the same job as long as youāre still updating that existing job. The location of the bundle on disk isnāt part of that relationship.
Official docs on bundles:
https://learn.microsoft.com/en-us/azure/databricks/dev-tools/bundles/
If the bundle config changes in a way that causes the CLI to create a new job instead of updating the old one, then yes ā the new job starts with empty run history, simply because itās a new job_id. The old job and its run history remain in the workspace unless deleted.
Jobs API reference (showing the run/job association):
https://docs.databricks.com/api/workspace/jobs/listruns
Databricks also documents run history behavior and retention here:
https://learn.microsoft.com/en-us/azure/databricks/jobs/monitor
Internally, the system associates run history with the job through job_id ā run_id. For deeper analysis, you can also look into the system tables (āsystem.lakeflow.job_runsā and related tables) if theyāre enabled in your workspace:
https://learn.microsoft.com/en-us/azure/databricks/jobs/monitor#system-tables
So the key point is:
If you keep deploying to the same job (same job_id), you keep the run history. Changing the bundle root wonāt affect that. If you unintentionally create a new job, then the new one wonāt have historical runs ā but the old one stays intact.
yesterday
Hi @YS1
I did some research on this topic and found a few official documents and insights that may help:
Changing the bundle root path itself wonāt remove or reset your job run history. Run history in Databricks is tied to the job_id that exists inside the workspace, not to where the Databricks Asset Bundle lives in your repo.
A DAB is just a local definition of assets. When you run databricks bundle deploy, the CLI updates (or creates) remote resources based on the job definition, but the run history stays attached to the same job as long as youāre still updating that existing job. The location of the bundle on disk isnāt part of that relationship.
Official docs on bundles:
https://learn.microsoft.com/en-us/azure/databricks/dev-tools/bundles/
If the bundle config changes in a way that causes the CLI to create a new job instead of updating the old one, then yes ā the new job starts with empty run history, simply because itās a new job_id. The old job and its run history remain in the workspace unless deleted.
Jobs API reference (showing the run/job association):
https://docs.databricks.com/api/workspace/jobs/listruns
Databricks also documents run history behavior and retention here:
https://learn.microsoft.com/en-us/azure/databricks/jobs/monitor
Internally, the system associates run history with the job through job_id ā run_id. For deeper analysis, you can also look into the system tables (āsystem.lakeflow.job_runsā and related tables) if theyāre enabled in your workspace:
https://learn.microsoft.com/en-us/azure/databricks/jobs/monitor#system-tables
So the key point is:
If you keep deploying to the same job (same job_id), you keep the run history. Changing the bundle root wonāt affect that. If you unintentionally create a new job, then the new one wonāt have historical runs ā but the old one stays intact.
yesterday
@WiliamRosa Appreciate the detailed explanation ā this clears it up!
yesterday
Whenever you keep "job key name" in DAB, root folder should not have any impact. History is associated to the job irrespective of being deployed via DAB or updated manually. KR.
yesterday
@Coffee77 Got it ā thank you for confirming!
Passionate about hosting events and connecting people? Help us grow a vibrant local communityāsign up today to get started!
Sign Up Now