A data engineer is investigating a job failure that occurred only in the production environment. Which TWO features in Databricks help in comparing the production environment to the development environment?
Trap 1: Use the 'Cluster Logs' to compare the OS kernel versions of the…
Comparing OS kernel versions is rarely the solution for job failures, as Databricks manages the underlying runtime environment. If there is a disparity, it would be due to selecting different Databricks Runtime versions, not the specific OS kernel, which is abstracted away from the end user.
Trap 2: Enable the 'Debug Mode' on the Spark Driver to see raw system calls.
Debug mode for raw system calls is not a standard feature in Databricks and would not provide useful context for comparing environment configurations. This level of debugging is excessively low-level and does not address the high-level configuration differences that typically cause environment-specific pipeline failures.
Trap 3: Query the 'workspace_users' table to see who ran the job last.
Knowing who ran a job last does not help identify configuration differences. While auditing is useful for security, the technical investigation of why a job fails requires comparing settings, libraries, and code, not the identity of the user who triggered the last execution.
- A
Use the 'View as JSON' feature in the Jobs UI to compare job configurations.
Exporting and comparing job JSON configurations is an effective way to identify discrepancies in parameters, cluster sizes, or timeout settings. This allows engineers to systematically check for configuration drift between the development workspace and the production workspace, which is a common source of environment-specific failures.
- B
Use the 'Cluster Logs' to compare the OS kernel versions of the nodes.
Why it fails: Comparing OS kernel versions is rarely the solution for job failures, as Databricks manages the underlying runtime environment. If there is a disparity, it would be due to selecting different Databricks Runtime versions, not the specific OS kernel, which is abstracted away from the end user.
- C
Review the git branch history and configuration files in the CI/CD pipeline.
Checking the CI/CD pipeline ensures that the exact code and configuration being deployed to production matches what was tested in development. This identifies issues where different branches were accidentally merged or where environment-specific variables were incorrectly injected into the production job, causing unexpected runtime behavior.
- D
Enable the 'Debug Mode' on the Spark Driver to see raw system calls.
Why it fails: Debug mode for raw system calls is not a standard feature in Databricks and would not provide useful context for comparing environment configurations. This level of debugging is excessively low-level and does not address the high-level configuration differences that typically cause environment-specific pipeline failures.
- E
Query the 'workspace_users' table to see who ran the job last.
Why it fails: Knowing who ran a job last does not help identify configuration differences. While auditing is useful for security, the technical investigation of why a job fails requires comparing settings, libraries, and code, not the identity of the user who triggered the last execution.