2. A data engineer wants to create a data entity from a couple of tables. The data entity must be
used by other data engineers in other sessions. It also must be saved to a physical location.
Which of the following data entities should the data engineer create?
â˘A. Table
â˘B. Function
â˘C. View
â˘D. Temporary view
3. A dataset has been defined using Delta Live Tables and includes an expectations clause:
CONSTRAINT valid_timestamp EXPECT (timestamp > '2020-01-01') ON VIOLATION DROP ROW
What is the expected behavior when a batch of data containing data that violates these
constraints is processed?
â˘A. Records that violate the expectation cause the job to fail.
â˘B. Records that violate the expectation are added to the target dataset and flagged as invalid in a
field added to the target dataset.
â˘C. Records that violate the expectation are dropped from the target dataset and recorded as
invalid in the event log.
â˘D. Records that violate the expectation are added to the target dataset and recorded as invalid in
the event log.
4. A data organization leader is upset about the data analysis teamâs reports being different from
the data engineering teamâs reports. The leader believes the siloed nature of their organizationâs
data engineering and data analysis architectures is to blame.
Which of the following describes how a data lakehouse could alleviate this issue?
â˘A. Both teams would autoscale their work as data size evolves
â˘B. Both teams would use the same source of truth for their work
â˘C. Both teams would reorganize to report to the same department
â˘D. Both teams would be able to collaborate on projects in real-time
â˘E. Both teams would respond more quickly to ad-hoc requests
5. Which of the following describes a scenario in which a data team will want to utilize cluster pools?
â˘A. An automated report needs to be refreshed as quickly as possible.
â˘B. An automated report needs to be made reproducible.
â˘C. An automated report needs to be tested to identify errors.
â˘D. An automated report needs to be version-controlled across multiple collaborators.
â˘E. An automated report needs to be runnable by all stakeholders.
6. Which of the following is hosted completely in the control plane of the classic Databricks
architecture?
â˘A. Worker node
â˘B. JDBC data source
â˘C. Databricks web application
â˘D. Databricks Filesystem
â˘E. Driver node
7. Which of the following benefits of using the Databricks Lakehouse Platform is provided by Delta
Lake?
â˘A. The ability to manipulate the same data using a variety of languages
â˘B. The ability to collaborate in real time on a single notebook
â˘C. The ability to set up alerts for query failures
â˘D. The ability to support batch and streaming workloads
â˘E. The ability to distribute complex data operations
8. Which of the following describes the storage organization of a Delta table?
â˘A. Delta tables are stored in a single file that contains data, history, metadata, and other
attributes.
â˘B. Delta tables store their data in a single file and all metadata in a collection of files in a
separate location.
â˘C. Delta tables are stored in a collection of files that contain data, history, metadata, and
other attributes.
â˘D. Delta tables are stored in a collection of files that contain only the data stored within the table.
â˘E. Delta tables are stored in a single file that contains only the data stored within the table.
9. Which of the following code blocks will remove the rows where the value in column age is greater
than 25 from the existing Delta table my_table and save the updated table?
â˘A. SELECT * FROM my_table WHERE age > 25;
â˘B. UPDATE my_table WHERE age > 25;
â˘C. DELETE FROM my_table WHERE age > 25;
â˘D. UPDATE my_table WHERE age <= 25;
â˘E. DELETE FROM my_table WHERE age <= 25;
10. A data engineer has realized that they made a mistake when making a daily update to a table.
They need to use Delta time travel to restore the table to a version that is 3 days old. However,
when the data engineer attempts to time travel to the older version, they are unable to restore
the data because the data files have been deleted.
Which of the following explains why the data files are no longer present?
â˘A. The VACUUM command was run on the table
â˘B. The TIME TRAVEL command was run on the table
â˘C. The DELETE HISTORY command was run on the table
â˘D. The OPTIMIZE command was nun on the table
â˘E. The HISTORY command was run on the table
11. Which of the following Git operations must be performed outside of Databricks Repos?
â˘A. Commit
â˘B. Pull
â˘C. Push
â˘D. Clone
â˘E. Merge
12. Which of the following data lakehouse features results in improved data quality over a traditional
data lake?
â˘A. A data lakehouse provides storage solutions for structured and unstructured data.
â˘B. A data lakehouse supports ACID-compliant transactions. Most Voted
â˘C. A data lakehouse allows the use of SQL queries to examine data.
â˘D. A data lakehouse stores data in open formats.
â˘E. A data lakehouse enables machine learning and artificial Intelligence workloads.
13. A data engineer needs to determine whether to use the built-in Databricks Notebooks versioning
or version their project using Databricks Repos.
Which of the following is an advantage of using Databricks Repos over the Databricks Notebooks
versioning?
â˘A. Databricks Repos automatically saves development progress
â˘B. Databricks Repos supports the use of multiple branches
â˘C. Databricks Repos allows users to revert to previous versions of a notebook
â˘D. Databricks Repos provides the ability to comment on specific changes
â˘E. Databricks Repos is wholly housed within the Databricks Lakehouse Platform
14. A data engineer has left the organization. The data team needs to transfer ownership of the data
engineerâs Delta tables to a new data engineer. The new data engineer is the lead engineer on the
data team.
Assuming the original data engineer no longer has access, which of the following individuals
must be the one to transfer ownership of the Delta tables in Data Explorer?
â˘A. Databricks account representative
â˘B. This transfer is not possible
â˘C. Workspace administrator
â˘D. New lead data engineer
â˘E. Original data engineer
15. A data analyst has created a Delta table sales that is used by the entire data analysis team. They
want help from the data engineering team to implement a series of tests to ensure the data is
clean. However, the data engineering team uses Python for its tests rather than SQL.
Which of the following commands could the data engineering team use to access sales in
PySpark?
â˘A. SELECT * FROM sales
â˘B. There is no way to share data between PySpark and SQL.
â˘C. spark.sql("sales")
â˘D. spark.delta.table("sales")
â˘E. spark.table("sales")
16. Which of the following commands will return the location of database customer360?
â˘A. DESCRIBE LOCATION customer360;
â˘B. DROP DATABASE customer360;
â˘C. DESCRIBE DATABASE customer360;
â˘D. ALTER DATABASE customer360 SET DBPROPERTIES ('location' = '/user'};
â˘E. USE DATABASE customer360;
17. A data engineer wants to create a new table containing the names of customers that live in
France.
They have written the following command:
A senior data engineer mentions that it is organization policy to include a table property
indicating that the new table includes personally identifiable information (PII).
Which of the following lines of code fills in the above blank to successfully complete the task?
â˘A. There is no way to indicate whether a table contains PII.
â˘B. "COMMENT PII"
â˘C. TBLPROPERTIES PII
â˘D. COMMENT "Contains PII"
â˘E. PII
18. Which of the following benefits is provided by the array functions from Spark SQL?
â˘A. An ability to work with data in a variety of types at once
â˘B. An ability to work with data within certain partitions and windows
â˘C. An ability to work with time-related data in specified intervals
â˘D. An ability to work with complex, nested data ingested from JSON files
â˘E. An ability to work with an array of tables for procedural automation
19. Which of the following commands can be used to write data into a Delta table while avoiding the
writing of duplicate records?
â˘A. DROP
â˘B. IGNORE
â˘C. MERGE
â˘D. APPEND
â˘E. INSERT
20. A data engineer needs to apply custom logic to string column city in table stores for a specific use
case. In order to apply this custom logic at scale, the data engineer wants to create a SQL user-
defined function (UDF). Which of the following code blocks creates this SQL UDF?
A.
â˘
B.
â˘
C.
â˘
D.
â˘
E.
21. A data analyst has a series of queries in a SQL program. The data analyst wants this program to
run every day. They only want the final query in the program to run on Sundays. They ask for help
from the data engineering team to complete this task.
Which of the following approaches could be used by the data engineering team to complete this
task?
â˘A. They could submit a feature request with Databricks to add this functionality.
â˘B. They could wrap the queries using PySpark and use Pythonâs control flow system to
determine when to run the final query.
â˘C. They could only run the entire program on Sundays.
â˘D. They could automatically restrict access to the source table in the final query so that it is only
accessible on Sundays.
â˘E. They could redesign the data model to separate the data used in the final query into a new
table.
22. A data engineer runs a statement every day to copy the previous dayâs sales into the table
transactions. Each dayâs sales are in their own file in the location "/transactions/raw".
Today, the data engineer runs the following command to complete this task:
After running the command today, the data engineer notices that the number of records in table
transactions has not changed.
Which of the following describes why the statement might not have copied any new records into
the table?
â˘A. The format of the files to be copied were not included with the FORMAT_OPTIONS keyword.
â˘B. The names of the files to be copied were not included with the FILES keyword.
â˘C. The previous dayâs file has already been copied into the table.
â˘D. The PARQUET file format does not support COPY INTO.
â˘E. The COPY INTO statement requires the table to be refreshed to view the copied rows.
23. A data engineer needs to create a table in Databricks using data from their organizationâs existing
SQLite database.
They run the following command:
Which of the following lines of code fills in the above blank to successfully complete the task?
â˘A. org.apache.spark.sql.jdbc
â˘B. autoloader
â˘C. DELTA
â˘D. sqlite
â˘E. org.apache.spark.sql.sqlite
24. A data engineering team has two tables. The first table march_transactions is a collection of all retail
transactions in the month of March. The second table april_transactions is a collection of all retail
transactions in the month of April. There are no duplicate records between the tables.
Which of the following commands should be run to create a new table all_transactions that contains all
records from march_transactions and april_transactions without duplicate records?
â˘A. CREATE TABLE all_transactions AS
SELECT * FROM march_transactions
INNER JOIN SELECT * FROM april_transactions;
â˘B. CREATE TABLE all_transactions AS
SELECT * FROM march_transactions
UNION SELECT * FROM april_transactions;
â˘C. CREATE TABLE all_transactions AS
SELECT * FROM march_transactions
OUTER JOIN SELECT * FROM april_transactions;
â˘D. CREATE TABLE all_transactions AS
SELECT * FROM march_transactions
INTERSECT SELECT * from april_transactions;
â˘E. CREATE TABLE all_transactions AS
SELECT * FROM march_transactions
MERGE SELECT * FROM april_transactions;
25. A data engineer only wants to execute the final block of a Python program if the Python variable
day_of_week is equal to 1 and the Python variable review_period is True.
Which of the following control flow statements should the data engineer use to begin this
conditionally executed code block?
â˘A. if day_of_week = 1 and review_period:
â˘B. if day_of_week = 1 and review_period = "True":
â˘C. if day_of_week == 1 and review_period == "True":
â˘D. if day_of_week == 1 and review_period:
â˘E. if day_of_week = 1 & review_period: = "True":
26. A data engineer is attempting to drop a Spark SQL table my_table. The data engineer wants to
delete all table metadata and data.
They run the following command:
DROP TABLE IF EXISTS my_table -
While the object no longer appears when they run SHOW TABLES, the data files still exist.
Which of the following describes why the data files still exist and the metadata files were deleted?
â˘A. The tableâs data was larger than 10 GB
â˘B. The tableâs data was smaller than 10 GB
â˘C. The table was external
â˘D. The table did not have a location
â˘E. The table was managed
27. A data engineer wants to create a data entity from a couple of tables. The data entity must be
used by other data engineers in other sessions. It also must be saved to a physical location.
Which of the following data entities should the data engineer create?
â˘A. Database
â˘B. Function
â˘C. View
â˘D. Temporary view
â˘E. Table
28. A data engineer is maintaining a data pipeline. Upon data ingestion, the data engineer notices
that the source data is starting to have a lower level of quality. The data engineer would like to
automate the process of monitoring the quality level.
Which of the following tools can the data engineer use to solve this problem?
â˘A. Unity Catalog
â˘B. Data Explorer
â˘C. Delta Lake
â˘D. Delta Live Tables
â˘E. Auto Loader
29. A Delta Live Table pipeline includes two datasets defined using STREAMING LIVE TABLE. Three
datasets are defined against Delta Lake table sources using LIVE TABLE.
The table is configured to run in Production mode using the Continuous Pipeline Mode.
Assuming previously unprocessed data exists and all definitions are valid, what is the expected
outcome after clicking Start to update the pipeline?
â˘A. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will persist to allow for additional testing.
â˘B. All datasets will be updated once and the pipeline will persist without any processing. The
compute resources will persist but go unused.
â˘C. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will be deployed for the update and terminated when the pipeline is stopped.
â˘D. All datasets will be updated once and the pipeline will shut down. The compute resources will
be terminated.
â˘E. All datasets will be updated once and the pipeline will shut down. The compute resources will
persist to allow for additional testing.
30. In order for Structured Streaming to reliably track the exact progress of the processing so that it
can handle any kind of failure by restarting and/or reprocessing, which of the following two
approaches is used by Spark to record the offset range of the data being processed in each
trigger?
â˘A. Checkpointing and Write-ahead Logs
â˘B. Structured Streaming cannot record the offset range of the data being processed in each
trigger.
â˘C. Replayable Sources and Idempotent Sinks
â˘D. Write-ahead Logs and Idempotent Sinks
â˘E. Checkpointing and Idempotent Sinks
31. Which of the following describes the relationship between Gold tables and Silver tables?
â˘A. Gold tables are more likely to contain aggregations than Silver tables.
â˘B. Gold tables are more likely to contain valuable data than Silver tables.
â˘C. Gold tables are more likely to contain a less refined view of data than Silver tables.
â˘D. Gold tables are more likely to contain more data than Silver tables.
â˘E. Gold tables are more likely to contain truthful data than Silver tables.
32. Which of the following describes the relationship between Bronze tables and raw data?
â˘A. Bronze tables contain less data than raw data files.
â˘B. Bronze tables contain more truthful data than raw data.
â˘C. Bronze tables contain aggregates while raw data is unaggregated.
â˘D. Bronze tables contain a less refined view of data than raw data.
â˘E. Bronze tables contain raw data with a schema applied.
33. Which of the following tools is used by Auto Loader process data incrementally?
â˘A. Checkpointing
â˘B. Spark Structured Streaming
â˘C. Data Explorer
â˘D. Unity Catalog
â˘E. Databricks SQL
34. A data engineer has configured a Structured Streaming job to read from a table, manipulate the
data, and then perform a streaming write into a new table.
The cade block used by the data engineer is below:
If the data engineer only wants the query to execute a micro-batch to process data every 5
seconds, which of the following lines of code should the data engineer use to fill in the blank?
â˘A. trigger("5 seconds")
â˘B. trigger()
â˘C. trigger(once="5 seconds")
â˘D. trigger(processingTime="5 seconds")
â˘E. trigger(continuous="5 seconds")
35. A dataset has been defined using Delta Live Tables and includes an expectations clause:
CONSTRAINT valid_timestamp EXPECT (timestamp > '2020-01-01') ON VIOLATION DROP ROW
What is the expected behavior when a batch of data containing data that violates these
constraints is processed?
â˘A. Records that violate the expectation are dropped from the target dataset and loaded into a
quarantine table.
â˘B. Records that violate the expectation are added to the target dataset and flagged as invalid in a
field added to the target dataset.
â˘C. Records that violate the expectation are dropped from the target dataset and recorded
as invalid in the event log.
â˘D. Records that violate the expectation are added to the target dataset and recorded as invalid in
the event log.
â˘E. Records that violate the expectation cause the job to fail.
36. A data engineer is working with two tables. Each of these tables is displayed below in its entirety.
The data engineer runs the following
query to join these tables together:
Which of the following will be returned
by the above query?
A
B
C
D
E
37. A data engineer and data analyst are working together on a data pipeline. The data engineer is
working on the raw, bronze, and silver layers of the pipeline using Python, and the data analyst is
working on the gold layer of the pipeline using SQL. The raw source of the pipeline is a streaming
input. They now want to migrate their pipeline to use Delta Live Tables.
Which of the following changes will need to be made to the pipeline when migrating to Delta Live
Tables?
â˘A. None of these changes will need to be made
â˘B. The pipeline will need to stop using the medallion-based multi-hop architecture
â˘C. The pipeline will need to be written entirely in SQL
â˘D. The pipeline will need to use a batch source in place of a streaming source
â˘E. The pipeline will need to be written entirely in Python
38. Which of the following must be specified when creating a new Delta Live Tables pipeline?
â˘A. A key-value pair configuration
â˘B. The preferred DBU/hour cost
â˘C. A path to cloud storage location for the written data
â˘D. A location of a target database for the written data
â˘E. At least one notebook library to be executed
39. Which of the following code blocks will remove the rows where the value in column age is greater
than 25 from the existing Delta table my_table and save the updated table?
â˘A. SELECT * FROM my_table WHERE age > 25;
â˘B. UPDATE my_table WHERE age > 25;
â˘C. DELETE FROM my_table WHERE age > 25;
â˘D. UPDATE my_table WHERE age <= 25;
â˘E. DELETE FROM my_table WHERE age <= 25;
40. Which of the following benefits of using the Databricks Lakehouse Platform is provided by Delta
Lake?
â˘A. The ability to manipulate the same data using a variety of languages
â˘B. The ability to collaborate in real time on a single notebook
â˘C. The ability to set up alerts for query failures
â˘D. The ability to support batch and streaming workloads
â˘E. The ability to distribute complex data operations
41. A data engineer has a single-task Job that runs each morning before they begin working. After
identifying an upstream data issue, they need to set up another task to run a new notebook prior
to the original task.
Which approach can the data engineer use to set up the new task?
â˘A. They can clone the existing task in the existing Job and update it to run the new notebook.
â˘B. They can create a new task in the existing Job and then add it as a dependency of the
original task.
â˘C. They can create a new task in the existing Job and then add the original task as a dependency
of the new task.
â˘D. They can create a new job from scratch and add both tasks to run concurrently.
42. A data engineer that is new to using Python needs to create a Python function to add two
integers together and return the sum?
Which code block can the data engineer use to complete this task?
â˘
A.
â˘
B.
â˘
C.
â˘
D.
43. A new data engineering team team has been assigned to an ELT project. The new data
engineering team will need full privileges on the table sales to fully manage the project.
Which of the following commands can be used to grant full permissions on the database to the
new data engineering team?
â˘A. GRANT ALL PRIVILEGES ON TABLE sales TO team;
â˘B. GRANT SELECT CREATE MODIFY ON TABLE sales TO team;
â˘C. GRANT SELECT ON TABLE sales TO team;
â˘D. GRANT USAGE ON TABLE sales TO team;
â˘E. GRANT ALL PRIVILEGES ON TABLE team TO sales;
44. A data engineer wants to schedule their Databricks SQL dashboard to refresh every hour, but they
only want the associated SQL endpoint to be running when it is necessary. The dashboard has
multiple queries on multiple datasets associated with it. The data that feeds the dashboard is
automatically processed using a Databricks Job.
Which of the following approaches can the data engineer use to minimize the total running time
of the SQL endpoint used in the refresh schedule of their dashboard?
â˘A. They can turn on the Auto Stop feature for the SQL endpoint.
â˘B. They can ensure the dashboard's SQL endpoint is not one of the included query's SQL
endpoint.
â˘C. They can reduce the cluster size of the SQL endpoint.
â˘D. They can ensure the dashboard's SQL endpoint matches each of the queries' SQL endpoints.
â˘E. They can set up the dashboard's SQL endpoint to be serverless.
45. A data analyst has a series of queries in a SQL program. The data analyst wants this program to
run every day. They only want the final query in the program to run on Sundays. They ask for help
from the data engineering team to complete this task.
Which of the following approaches could be used by the data engineering team to complete this
task?
â˘A. They could submit a feature request with Databricks to add this functionality.
â˘B. They could wrap the queries using PySpark and use Pythonâs control flow system to
determine when to run the final query.
â˘C. They could only run the entire program on Sundays.
â˘D. They could automatically restrict access to the source table in the final query so that it is only
accessible on Sundays.
â˘E. They could redesign the data model to separate the data used in the final query into a new
table.
46. Which of the following describes a benefit of creating an external table from Parquet rather than
CSV when using a CREATE TABLE AS SELECT statement?
â˘A. Parquet files can be partitioned
â˘B. CREATE TABLE AS SELECT statements cannot be used on files
â˘C. Parquet files have a well-defined schema
â˘D. Parquet files have the ability to be optimized
â˘E. Parquet files will become Delta tables
47. What is a benefit of creating an external table from Parquet rather than CSV when using a CREATE
TABLE AS SELECT statement?
â˘A. Parquet files can be partitioned
â˘B. Parquet files will become Delta tables
â˘C. Parquet files have a well-defined schema
â˘D. Parquet files have the ability to be optimized
48. A data engineer has created a new database using the following command:
CREATE DATABASE IF NOT EXISTS customer360;
In which location will the customer360 database be located?
â˘A. dbfs:/user/hive/database/customer360
â˘B. dbfs:/user/hive/warehouse
â˘C. dbfs:/user/hive/customer360
â˘D. dbfs:/user/hive/database
49. A data analyst has created a Delta table sales that is used by the entire data analysis team. They
want help from the data engineering team to implement a series of tests to ensure the data is
clean. However, the data engineering team uses Python for its tests rather than SQL.
Which command could the data engineering team use to access sales in PySpark?
â˘A. SELECT * FROM sales
â˘B. spark.table("sales")
â˘C. spark.sql("sales")
â˘D. spark.delta.table("sales")
50. A data engineer has been given a new record of data:
id STRING = 'a1'
rank INTEGER = 6
rating FLOAT = 9.4
Which SQL commands can be used to append the new record to an existing Delta table my_table?
â˘A. INSERT INTO my_table VALUES ('a1', 6, 9.4)
â˘B. INSERT VALUES ('a1', 6, 9.4) INTO my_table
â˘C. UPDATE my_table VALUES ('a1', 6, 9.4)
â˘D. UPDATE VALUES ('a1', 6, 9.4) my_table
51. A data architect has determined that a table of the following format is necessary:
Which code block is used by SQL DDL command to create an empty Delta table in the above
format regardless of whether a table already exists with this name?
â˘A. CREATE OR REPLACE TABLE table_name ( employeeId STRING, startDate DATE, avgRating
FLOAT )
â˘B. CREATE OR REPLACE TABLE table_name WITH COLUMNS ( employeeId STRING, startDate DATE,
avgRating FLOAT ) USING DELTA
â˘C. CREATE TABLE IF NOT EXISTS table_name ( employeeId STRING, startDate DATE, avgRating
FLOAT )
â˘D. CREATE TABLE table_name AS SELECT employeeId STRING, startDate DATE, avgRating FLOAT
52. A data engineer is running code in a Databricks Repo that is cloned from a central Git repository.
A colleague of the data engineer informs them that changes have been made and synced to the
central Git repository. The data engineer now needs to sync their Databricks Repo to get the
changes from the central Git repository.
Which Git operation does the data engineer need to run to accomplish this task?
â˘A. Clone
â˘B. Pull
â˘C. Merge
â˘D. Push
53. Which file format is used for storing Delta Lake Table?
â˘A. CSV
â˘B. Parquet
â˘C. JSON
â˘D. Delta
54. A data engineer has joined an existing project and they see the following query in the project
repository:
CREATE STREAMING LIVE TABLE loyal_customers AS
SELECT customer_id -
FROM STREAM(LIVE.customers)
WHERE loyalty_level = 'high';
Which of the following describes why the STREAM function is included in the query?
â˘A. The STREAM function is not needed and will cause an error.
â˘B. The table being created is a live table.
â˘C. The customers table is a streaming live table.
â˘D. The customers table is a reference to a Structured Streaming query on a PySpark DataFrame.
â˘E. The data in the customers table has been updated since its last run.
55. A data engineer has a single-task Job that runs each morning before they begin working. After
identifying an upstream data issue, they need to set up another task to run a new notebook prior
to the original task.
Which of the following approaches can the data engineer use to set up the new task?
â˘A. They can clone the existing task in the existing Job and update it to run the new notebook.
â˘B. They can create a new task in the existing Job and then add it as a dependency of the
original task.
â˘C. They can create a new task in the existing Job and then add the original task as a dependency
of the new task.
â˘D. They can create a new job from scratch and add both tasks to run concurrently.
â˘E. They can clone the existing task to a new Job and then edit it to run the new notebook.
56. An engineering manager wants to monitor the performance of a recent project using a
Databricks SQL query. For the first week following the projectâs release, the manager wants the
query results to be updated every minute. However, the manager is concerned that the compute
resources used for the query will be left running and cost the organization a lot of money beyond
the first week of the projectâs release.
Which of the following approaches can the engineering team use to ensure the query does not
cost the organization any money beyond the first week of the projectâs release?
â˘A. They can set a limit to the number of DBUs that are consumed by the SQL Endpoint.
â˘B. They can set the queryâs refresh schedule to end after a certain number of refreshes.
â˘C. They cannot ensure the query does not cost the organization money beyond the first week of
the projectâs release.
â˘D. They can set a limit to the number of individuals that are able to manage the queryâs refresh
schedule.
â˘E. They can set the queryâs refresh schedule to end on a certain date in the query
scheduler.
57. Which of the following benefits is provided by the array functions from Spark SQL?
â˘A. An ability to work with data in a variety of types at once
â˘B. An ability to work with data within certain partitions and windows
â˘C. An ability to work with time-related data in specified intervals
â˘D. An ability to work with complex, nested data ingested from JSON files
â˘E. An ability to work with an array of tables for procedural automation
58. In order for Structured Streaming to reliably track the exact progress of the processing so that it
can handle any kind of failure by restarting and/or reprocessing, which of the following two
approaches is used by Spark to record the offset range of the data being processed in each
trigger?
â˘A. Checkpointing and Write-ahead Logs
â˘B. Structured Streaming cannot record the offset range of the data being processed in each
trigger.
â˘C. Replayable Sources and Idempotent Sinks
â˘D. Write-ahead Logs and Idempotent Sinks
â˘E. Checkpointing and Idempotent Sinks
59. Which of the following statements regarding the relationship between Silver tables and Bronze
tables is always true?
â˘A. Silver tables contain a less refined, less clean view of data than Bronze data.
â˘B. Silver tables contain aggregates while Bronze data is unaggregated.
â˘C. Silver tables contain more data than Bronze tables.
â˘D. Silver tables contain a more refined and cleaner view of data than Bronze tables.
â˘E. Silver tables contain less data than Bronze tables.
60. A dataset has been defined using Delta Live Tables and includes an expectations clause:
CONSTRAINT valid_timestamp EXPECT (timestamp > '2020-01-01') ON VIOLATION FAIL UPDATE
What is the expected behavior when a batch of data containing data that violates these
constraints is processed?
â˘A. Records that violate the expectation are dropped from the target dataset and recorded as
invalid in the event log.
â˘B. Records that violate the expectation cause the job to fail.
â˘C. Records that violate the expectation are dropped from the target dataset and loaded into a
quarantine table.
â˘D. Records that violate the expectation are added to the target dataset and recorded as invalid in
the event log.
â˘E. Records that violate the expectation are added to the target dataset and flagged as invalid in a
field added to the target dataset.
61. Which of the following queries is performing a streaming hop from raw data to a Bronze table?
62. A data engineer is using the following code block as part of a batch ingestion pipeline to read
from a composable table:
Which of the following changes needs to be made so this code block will work when the
transactions table is a stream source?
â˘A. Replace predict with a stream-friendly prediction function
â˘B. Replace schema(schema) with option ("maxFilesPerTrigger", 1)
â˘C. Replace "transactions" with the path to the location of the Delta table
â˘D. Replace format("delta") with format("stream")
â˘E. Replace spark.read with spark.readStream
63. Which of the following describes the type of workloads that are always compatible with Auto
Loader?
â˘A. Streaming workloads
â˘B. Machine learning workloads
â˘C. Serverless workloads
â˘D. Batch workloads
â˘E. Dashboard workloads
64. A Delta Live Table pipeline includes two datasets defined using STREAMING LIVE TABLE. Three
datasets are defined against Delta Lake table sources using LIVE TABLE.
The table is configured to run in Development mode using the Continuous Pipeline Mode.
Assuming previously unprocessed data exists and all definitions are valid, what is the expected
outcome after clicking Start to update the pipeline?
â˘A. All datasets will be updated once and the pipeline will shut down. The compute resources will
be terminated.
â˘B. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will persist until the pipeline is shut down.
â˘C. All datasets will be updated once and the pipeline will persist without any processing. The
compute resources will persist but go unused.
â˘D. All datasets will be updated once and the pipeline will shut down. The compute resources will
persist to allow for additional testing.
â˘E. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will persist to allow for additional testing.
65. A data engineer has configured a Structured Streaming job to read from a table, manipulate the
data, and then perform a streaming write into a new table.
The code block used by the data engineer is below:
If the data engineer only wants the query to process all of the available data in as many batches
as required, which of the following lines of code should the data engineer use to fill in the blank?
â˘A. processingTime(1)
â˘B. trigger(availableNow=True)
â˘C. trigger(parallelBatch=True)
â˘D. trigger(processingTime="once")
â˘E. trigger(continuous="once")
66. A data engineer has a Python variable table_name that they would like to use in a SQL query.
They want to construct a Python code block that will run the query using table_name.
They have the following incomplete code block:
____(f"SELECT customer_id, spend FROM {table_name}")
Which of the following can be used to fill in the blank to successfully complete the task?
â˘A. spark.delta.sql
â˘B. spark.delta.table
â˘C. spark.table
â˘D. dbutils.sql
â˘E. spark.sql
67. A data engineer needs to apply custom logic to identify employees with more than 5 years of
experience in array column employees in table stores. The custom logic should create a new
column exp_employees that is an array of all of the employees with more than 5 years of
experience for each row. In order to apply this custom logic at scale, the data engineer wants to
use the FILTER higher-order function.
Which of the following code blocks successfully completes this task?
68. A data analyst has developed a query that runs against Delta table. They want help from the data
engineering team to implement a series of tests to ensure the data returned by the query is
clean. However, the data engineering team uses Python for its tests rather than SQL.
the following operations could the data engineering team use to run the query and operate with
the results in PySpark?
Which of
â˘A. SELECT * FROM sales
â˘B. spark.delta.table
â˘C. spark.sql
â˘D. There is no way to share data between PySpark and SQL.
â˘E. spark.table
69. Which of the following commands will return the number of null values in the member_id
column?
â˘A. SELECT count(member_id) FROM my_table;
â˘B. SELECT count(member_id) - count_null(member_id) FROM my_table;
â˘C. SELECT count_if(member_id IS NULL) FROM my_table;
â˘D. SELECT null(member_id) FROM my_table;
â˘E. SELECT count_null(member_id) FROM my_table;
70. Which of the following SQL keywords can be used to convert a table from a long format to a wide
format?
â˘A. TRANSFORM
â˘B. PIVOT
â˘C. SUM
â˘D. CONVERT
â˘E. WHERE
71. A data architect has determined that a table of the following format is necessary:
Which of the following code blocks uses SQL DDL commands to create an empty Delta table in
the above format regardless of whether a table already exists with this name?
72. Which of the following can be used to simplify and unify siloed data architectures that are
specialized for specific use cases?
â˘A. None of these
â˘B. Data lake
â˘C. Data warehouse
â˘D. All of these
â˘E. Data lakehouse
73. Which of the following is stored in the Databricks customer's cloud account?
â˘A. Databricks web application
â˘B. Cluster management metadata
â˘C. Repos
â˘D. Data
â˘E. Notebooks
74. In which of the following file formats is data from Delta Lake tables primarily stored?
â˘A. Delta
â˘B. CSV
â˘C. Parquet
â˘D. JSON
â˘E. A proprietary, optimized format specific to Databricks
75. A data engineer has realized that the data files associated with a Delta table are incredibly small.
They want to compact the small files to form larger files to improve performance.
Which of the following keywords can be used to compact the small files?
â˘A. REDUCE
â˘B. OPTIMIZE
â˘C. COMPACTION
â˘D. REPARTITION
â˘E. VACUUM
76. Which of the following describes a scenario in which a data engineer will want to use a single-
node cluster?
â˘A. When they are working interactively with a small amount of data
â˘B. When they are running automated reports to be refreshed as quickly as possible
â˘C. When they are working with SQL within Databricks SQL
â˘D. When they are concerned about the ability to automatically scale with larger data
â˘E. When they are manually running reports with a large amount of data
77. A data engineer needs to use a Delta table as part of a data pipeline, but they do not know if they
have the appropriate permissions.
In which of the following locations can the data engineer review their permissions on the table?
â˘A. Databricks Filesystem
â˘B. Jobs
â˘C. Dashboards
â˘D. Repos
â˘E. Data Explorer
78. Which of the following is a benefit of the Databricks Lakehouse Platform embracing open source
technologies?
â˘A. Cloud-specific integrations
â˘B. Simplified governance
â˘C. Ability to scale storage
â˘D. Ability to scale workloads
â˘E. Avoiding vendor lock-in
79. A new data engineering team team. has been assigned to an ELT project. The new data
engineering team will need full privileges on the database customers to fully manage the project.
Which of the following commands can be used to grant full permissions on the database to the
new data engineering team?
â˘A. GRANT USAGE ON DATABASE customers TO team;
â˘B. GRANT ALL PRIVILEGES ON DATABASE team TO customers;
â˘C. GRANT SELECT PRIVILEGES ON DATABASE customers TO teams;
â˘D. GRANT SELECT CREATE MODIFY USAGE PRIVILEGES ON DATABASE customers TO team;
â˘E. GRANT ALL PRIVILEGES ON DATABASE customers TO team;
80. A data engineer has a Job with multiple tasks that runs nightly. Each of the tasks runs slowly
because the clusters take a long time to start.
Which of the following actions can the data engineer perform to improve the start up time for the
clusters used for the Job?
â˘A. They can use endpoints available in Databricks SQL
â˘B. They can use jobs clusters instead of all-purpose clusters
â˘C. They can configure the clusters to be single-node
â˘D. They can use clusters that are from a cluster pool
â˘E. They can configure the clusters to autoscale for larger data sizes
81. A single Job runs two notebooks as two separate tasks. A data engineer has noticed that one of
the notebooks is running slowly in the Jobâs current run. The data engineer asks a tech lead for
help in identifying why this might be the case.
Which of the following approaches can the tech lead use to identify why the notebook is running
slowly as part of the Job?
â˘A. They can navigate to the Runs tab in the Jobs UI to immediately review the processing
notebook.
â˘B. They can navigate to the Tasks tab in the Jobs UI and click on the active run to review the
processing notebook.
â˘C. They can navigate to the Runs tab in the Jobs UI and click on the active run to review the
processing notebook.
â˘D. There is no way to determine why a Job task is running slowly.
â˘E. They can navigate to the Tasks tab in the Jobs UI to immediately review the processing
notebook.
82. A data analysis team has noticed that their Databricks SQL queries are running too slowly when
connected to their always-on SQL endpoint. They claim that this issue is present when many
members of the team are running small queries simultaneously. They ask the data engineering
team for help. The data engineering team notices that each of the teamâs queries uses the same
SQL endpoint.
Which of the following approaches can the data engineering team use to improve the latency of
the teamâs queries?
â˘A. They can increase the cluster size of the SQL endpoint.
â˘B. They can increase the maximum bound of the SQL endpointâs scaling range.
â˘C. They can turn on the Auto Stop feature for the SQL endpoint.
â˘D. They can turn on the Serverless feature for the SQL endpoint.
â˘E. They can turn on the Serverless feature for the SQL endpoint and change the Spot Instance
Policy to âReliability Optimized.â
83. A data engineer has three tables in a Delta Live Tables (DLT) pipeline. They have configured the
pipeline to drop invalid records at each table. They notice that some data is being dropped due to
quality concerns at some point in the DLT pipeline. They would like to determine at which table in
their pipeline the data is being dropped.
Which of the following approaches can the data engineer take to identify the table that is
dropping the records?
â˘A. They can set up separate expectations for each table when developing their DLT pipeline.
â˘B. They cannot determine which table is dropping the records.
â˘C. They can set up DLT to notify them via email when records are dropped.
â˘D. They can navigate to the DLT pipeline page, click on each table, and view the data
quality statistics.
â˘E. They can navigate to the DLT pipeline page, click on the âErrorâ button, and review the present
errors.
84. Which of the following Structured Streaming queries is performing a hop from a Silver table to a
Gold table?
85. A data engineer is designing a data pipeline. The source system generates files in a shared
directory that is also used by other processes. As a result, the files should be kept as is and will
accumulate in the directory. The data engineer needs to identify which files are new since the
previous run in the pipeline, and set up the pipeline to only ingest those new files with each run.
Which of the following tools can the data engineer use to solve this problem?
â˘A. Unity Catalog
â˘B. Delta Lake
â˘C. Databricks SQL
â˘D. Data Explorer
â˘E. Auto Loader
86. A Delta Live Table pipeline includes two datasets defined using STREAMING LIVE TABLE. Three
datasets are defined against Delta Lake table sources using LIVE TABLE.
The table is configured to run in Production mode using the Continuous Pipeline Mode.
Assuming previously unprocessed data exists and all definitions are valid, what is the expected
outcome after clicking Start to update the pipeline?
â˘A. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will persist to allow for additional testing.
â˘B. All datasets will be updated once and the pipeline will persist without any processing. The
compute resources will persist but go unused.
â˘C. All datasets will be updated at set intervals until the pipeline is shut down. The compute
resources will be deployed for the update and terminated when the pipeline is stopped.
â˘D. All datasets will be updated once and the pipeline will shut down. The compute resources will
be terminated.
â˘E. All datasets will be updated once and the pipeline will shut down. The compute resources will
persist to allow for additional testing.
87. A data analyst has been asked to use the below table sales_table to get the percentage rank of
products within region by the sales:
The result of the query should look like this:
88. A data engineer needs to create a table in Databricks using data from a CSV file at location
/path/to/csv.
They run the following command:
Which of the following lines of code fills in the above blank to successfully complete the task?
â˘A. None of these lines of code are needed to successfully complete the task
â˘B. USING CSV
â˘C. FROM CSV
â˘D. USING DELTA
â˘E. FROM "path/to/csv"
89. In which of the following scenarios should a data engineer use the MERGE INTO command
instead of the INSERT INTO command?
â˘A. When the location of the data needs to be changed
â˘B. When the target table is an external table
â˘C. When the source table can be deleted
â˘D. When the target table cannot contain duplicate records
â˘E. When the source is not a Delta table
90. A data engineer has been using a Databricks SQL dashboard to monitor the cleanliness of the
input data to a data analytics dashboard for a retail use case. The job has a Databricks SQL query
that returns the number of store-level records where sales is equal to zero. The data engineer
wants their entire team to be notified via a messaging webhook whenever this value is greater
than 0.
Which of the following approaches can the data engineer use to notify their entire team via a
messaging webhook whenever the number of stores with $0 in sales is greater than zero?
â˘A. They can set up an Alert with a custom template.
â˘B. They can set up an Alert with a new email alert destination.
â˘C. They can set up an Alert with one-time notifications.
â˘D. They can set up an Alert with a new webhook alert destination.
â˘E. They can set up an Alert without notifications.
91. A data engineer has a Python notebook in Databricks, but they need to use SQL to accomplish a
specific task within a cell. They still want all of the other cells to use Python without making any
changes to those cells.
Which of the following describes how the data engineer can use SQL within a cell of their Python
notebook?
â˘A. It is not possible to use SQL in a Python notebook
â˘B. They can attach the cell to a SQL endpoint rather than a Databricks cluster
â˘C. They can simply write SQL syntax in the cell
â˘D. They can add %sql to the first line of the cell
â˘E. They can change the default language of the notebook to SQL
92. An engineering manager uses a Databricks SQL query to monitor ingestion latency for each data
source. The manager checks the results of the query every day, but they are manually rerunning
the query each day and waiting for the results.
Which of the following approaches can the manager use to ensure the results of the query are
updated each day?
â˘A. They can schedule the query to refresh every 1 day from the SQL endpoint's page in
Databricks SQL.
â˘B. They can schedule the query to refresh every 12 hours from the SQL endpoint's page in
Databricks SQL.
â˘C. They can schedule the query to refresh every 1 day from the query's page in Databricks
SQL.
â˘D. They can schedule the query to run every 1 day from the Jobs UI.
â˘E. They can schedule the query to run every 12 hours from the Jobs UI.
93. Which of the following describes when to use the CREATE STREAMING LIVE TABLE (formerly
CREATE INCREMENTAL LIVE TABLE) syntax over the CREATE LIVE TABLE syntax when creating Delta
Live Tables (DLT) tables using SQL?
â˘A. CREATE STREAMING LIVE TABLE should be used when the subsequent step in the DLT pipeline
is static.
â˘B. CREATE STREAMING LIVE TABLE should be used when data needs to be processed
incrementally.
â˘C. CREATE STREAMING LIVE TABLE is redundant for DLT and it does not need to be used.
â˘D. CREATE STREAMING LIVE TABLE should be used when data needs to be processed through
complicated aggregations.
â˘E. CREATE STREAMING LIVE TABLE should be used when the previous step in the DLT pipeline is
static.
94. A data engineer wants to schedule their Databricks SQL dashboard to refresh once per day, but
they only want the associated SQL endpoint to be running when it is necessary.
Which of the following approaches can the data engineer use to minimize the total running time
of the SQL endpoint used in the refresh schedule of their dashboard?
â˘A. They can ensure the dashboardâs SQL endpoint matches each of the queriesâ SQL endpoints.
â˘B. They can set up the dashboardâs SQL endpoint to be serverless.
â˘C. They can turn on the Auto Stop feature for the SQL endpoint.
â˘D. They can reduce the cluster size of the SQL endpoint.
â˘E. They can ensure the dashboardâs SQL endpoint is not one of the included queryâs SQL
endpoint.
95. A data engineer wants to create a relational object by pulling data from two tables. The relational
object does not need to be used by other data engineers in other sessions. In order to save on
storage costs, the data engineer wants to avoid copying and storing physical data.
Which of the following relational objects should the data engineer create?
â˘A. Spark SQL Table
â˘B. View
â˘C. Database
â˘D. Temporary view
â˘E. Delta Table
96. A data engineer has developed a data pipeline to ingest data from a JSON source using Auto
Loader, but the engineer has not provided any type inference or schema hints in their pipeline.
Upon reviewing the data, the data engineer has noticed that all of the columns in the target table
are of the string type despite some of the fields only including float or boolean values.
Which of the following describes why Auto Loader inferred all of the columns to be of the string
type?
â˘A. There was a type mismatch between the specific schema and the inferred schema
â˘B. JSON data is a text-based format
â˘C. Auto Loader only works with string data
â˘D. All of the fields had at least one null value
â˘E. Auto Loader cannot infer the schema of ingested data
97. A data engineer has been using a Databricks SQL dashboard to monitor the cleanliness of the
input data to an ELT job. The ELT job has its Databricks SQL query that returns the number of
input records containing unexpected NULL values. The data engineer wants their entire team to
be notified via a messaging webhook whenever this value reaches 100.
Which of the following approaches can the data engineer use to notify their entire team via a
messaging webhook whenever the number of NULL values reaches 100?
â˘A. They can set up an Alert with a custom template.
â˘B. They can set up an Alert with a new email alert destination.
â˘C. They can set up an Alert with a new webhook alert destination.
â˘D. They can set up an Alert with one-time notifications.
â˘E. They can set up an Alert without notifications.
98. Which of the following approaches should be used to send the Databricks Job owner an email in
the case that the Job fails?
â˘A. Manually programming in an alert system in each cell of the Notebook
â˘B. Setting up an Alert in the Job page
â˘C. Setting up an Alert in the Notebook
â˘D. There is no way to notify the Job owner in the case of Job failure
â˘E. MLflow Model Registry Webhooks
99. In which of the following scenarios should a data engineer select a Task in the Depends On field
of a new Databricks Job Task?
â˘A. When another task needs to be replaced by the new task
â˘B. When another task needs to fail before the new task begins
â˘C. When another task has the same dependency libraries as the new task
â˘D. When another task needs to use as little compute resources as possible
â˘E. When another task needs to successfully complete before the new task begins
100. A data engineer needs access to a table new_table, but they do not have the correct permissions.
They can ask the table owner for permission, but they do not know who the table owner is.
Which of the following approaches can be used to identify the owner of new_table?
â˘A. Review the Permissions tab in the table's page in Data Explorer
â˘B. All of these options can be used to identify the owner of the table
â˘C. Review the Owner field in the table's page in Data Explorer
â˘D. Review the Owner field in the table's page in the cloud storage solution
â˘E. There is no way to identify the owner of the table
101. A data engineer has a Job that has a complex run schedule, and they want to transfer that
schedule to other Jobs.
Rather than manually selecting each value in the scheduling form in Databricks, which of the
following tools can the data engineer use to represent and submit the schedule
programmatically?
â˘A. pyspark.sql.types.DateType
â˘B. datetime
â˘C. pyspark.sql.types.TimestampType
â˘D. Cron syntax
â˘E. There is no way to represent and submit this information programmatically
102. Which of the following data workloads will utilize a Gold table as its source?
â˘A. A job that enriches data by parsing its timestamps into a human-readable format
â˘B. A job that aggregates uncleaned data to create standard summary statistics
â˘C. A job that cleans data by removing malformatted records
â˘D. A job that queries aggregated data designed to feed into a dashboard
â˘E. A job that ingests raw data from a streaming source into the Lakehouse