All Databricks exams

Free Databricks Certified Data Analyst Associate practice test: 30 questions with answers

30 original questions for Databricks Certified Data Analyst Associate, drawn from every topic area. Answer each one to see whether you got it right and why. No sign-up.

Free questions
30
Full bank
112 questions

Databricks Certified Data Analyst Associate exam guide: topics, cost and format

All 30 Databricks Certified Data Analyst Associate questions with answers

The same questions as the test above, grouped by exam topic. Open any question to see the answer and explanation.

Analyzing Queries (4 questions)

  1. Question 1

    A query that powers a dashboard became slow last week. The analyst wants to find which step of the query consumed the most time and whether data was read from storage or from cache. Which tool should the analyst use?

    1. AQuery profile for the statement in the SQL editor or query history
    2. BThe workspace audit log export to a CSV file for the past month
    3. CThe Unity Catalog lineage graph for the table the query reads
    4. DThe warehouse cluster-size setting in the warehouse configuration page
    Show answer and explanation
    Correct answer: A

    Query profile shows the operators in a query, the time each takes, and data read, so the analyst can see the slow step. Audit logs record who did what, lineage shows upstream and downstream dependencies, and the cluster size setting changes capacity rather than explaining the slow step.

  2. Question 2

    A team wants to speed up queries on a large Delta table that is frequently filtered on customer_id and event_date. The data is continuously appended, and the team does not want to manage partition columns by hand. Which feature is best suited?

    1. ATurning on the warehouse's largest size and disabling the result cache
    2. BWriting the table as a set of daily folders and a manual union in each query
    3. CLiquid clustering on customer_id and event_date
    4. DConverting the table to a CSV file that is read on every query
    Show answer and explanation
    Correct answer: C

    Liquid clustering organizes data by the chosen columns and adapts as data grows, without fixed partition layout decisions. Manual daily folders with unions add maintenance and do not adapt, a larger warehouse does not reorganize the data, and CSV is a slower format with no clustering.

  3. Question 3

    A compliance officer asks which user ran a specific query against a sensitive table last Tuesday and what the query text was. Which source contains this information?

    1. AQuery history and audit logs for the workspace and the Unity Catalog table
    2. BThe table's comment field, which the owner updates after each change
    3. CThe Delta transaction log, which records only the rows that were inserted
    4. DThe dashboard refresh schedule, which lists the owners of each widget
    Show answer and explanation
    Correct answer: A

    Query history and audit logs record the user, statement and time for queries, and Unity Catalog audit events show table access. A dashboard schedule shows refresh timing, the comment field is free text that is not updated automatically, and the Delta transaction log records table commits rather than who queried the table.

  4. Question 4

    A query on a Databricks SQL warehouse returns correct results, but the analyst sees that it reads far more data than expected. The table has a clustering or partition column that the team filters on, but the WHERE clause in this query does not use it. What should the analyst check first?

    1. AWhether the filter is written on the clustering or partition column so the engine can skip files
    2. BWhether the warehouse has the highest possible size, since a bigger warehouse reads less data per query
    3. CWhether the dashboard has a title that describes the data, since titles affect the scan
    4. DWhether the query uses the ALL keyword, since ALL changes how files are sorted
    Show answer and explanation
    Correct answer: A

    Filters on the clustering or partition column let the engine skip files, so data read falls when the query uses that column in its predicate. Warehouse size changes speed rather than the amount read, dashboard titles have no effect on scans, and ALL is not a keyword that controls file sorting.

Executing Queries Using Databricks SQL and SQL Warehouses (4 questions)

  1. Question 5

    An analyst wants a saved query that always shows only the active customers, so that colleagues can reuse the logic without copying the filter. Which object should the analyst create?

    1. AA temporary table created in the SQL editor that is refreshed by hand before each report run
    2. BA materialized copy of the customer table exported as CSV to a shared volume each morning
    3. CA view defined over the customer table with a WHERE clause that keeps only active rows
    4. DA dashboard widget with a filter that the analyst must reapply in each session
    Show answer and explanation
    Correct answer: C

    A view stores the query definition, so colleagues can select from it and the filter stays in one place. A temporary table disappears when the session ends and needs manual refresh, a CSV export is a static copy, and a dashboard filter must be reapplied by each user.

  2. Question 6

    An analyst runs a query that joins a large orders table with a small regions table. Orders whose region_id has no match in regions must be kept, with null region names. Which join should be used?

    1. AINNER JOIN
    2. BLEFT OUTER JOIN from orders to regions
    3. CRIGHT OUTER JOIN from orders to regions
    4. DCROSS JOIN between orders and regions
    Show answer and explanation
    Correct answer: B

    A left outer join keeps every row from the left table, here orders, and fills region columns with nulls where no match exists. An inner join drops unmatched orders, a right join keeps unmatched regions rather than orders, and a cross join multiplies every order by every region.

  3. Question 7

    An analyst needs the total sales per product category, but only for categories with more than 500 units sold in total. Which SQL pattern gives the correct result?

    1. AUse GROUP BY category with a HAVING clause that tests SUM(units) > 500
    2. BUse a window function over all rows with a filter on units greater than 500
    3. CUse ORDER BY category with LIMIT 500 to keep the largest totals
    4. DUse WHERE SUM(units) > 500 after the GROUP BY clause
    Show answer and explanation
    Correct answer: A

    HAVING filters groups after aggregation, so the condition on the summed units is applied per category. A WHERE clause cannot reference an aggregate, ORDER BY with LIMIT returns a fixed number of rows rather than a threshold, and a filtered window function does not remove groups in the same way.

  4. Question 8

    A SQL query on a Databricks SQL warehouse returns sales by month. The analyst wants the results sorted with the newest month first and wants to see only the top 12 rows. Which clauses should be used?

    1. AGROUP BY month with HAVING 12 rows
    2. BORDER BY month DESC with LIMIT 12
    3. CDISTINCT month with TOP 12
    4. DORDER BY month ASC with LIMIT 12
    Show answer and explanation
    Correct answer: B

    ORDER BY month DESC sorts newest first, and LIMIT 12 returns the first twelve rows, which is the Databricks SQL syntax. ASC would put the oldest month first, GROUP BY alone does not sort or limit, and TOP is not the Databricks SQL keyword for this.

Creating Dashboards and Visualizations (4 questions)

  1. Question 9

    An analyst builds an AI/BI dashboard for executives. Each page must show the same date filter that applies to all charts on the page. Which approach meets this requirement with the least maintenance?

    1. AExport each chart as an image and paste the images into a presentation with the filter typed in
    2. BCreate a separate copy of the dashboard for each chart so that every chart has its own filter
    3. CAsk executives to type the date range into every chart's SQL editor before viewing it
    4. DAdd one dataset-level filter widget and link it to a parameter used by each chart's query
    Show answer and explanation
    Correct answer: D

    A shared filter widget linked to a parameter on each dataset keeps every chart in step with one control. Copying dashboards multiplies maintenance, asking executives to edit SQL is not a usable design, and static images lose the interactivity the requirement asks for.

  2. Question 10

    An analyst wants a chart that compares monthly revenue for three product lines over the last 24 months, so readers can see the trend for each line. Which visualization is most appropriate?

    1. AA pie chart showing the share of total revenue for each product line
    2. BA line chart with month on the x-axis and one series per product line
    3. CA single big-number counter showing the revenue of the latest month only
    4. DA scatter plot of revenue against the product line name with no time axis
    Show answer and explanation
    Correct answer: B

    A line chart with time on the x-axis and one series per product line shows the trend for each line across the period. A pie chart shows a single total split and has no time dimension, a counter shows one value, and a scatter plot without a time axis hides the trend.

  3. Question 11

    A dashboard is shared with a sales team that should see the same figures every morning without running queries manually. The data updates overnight. Which setting should the analyst configure?

    1. AA manual refresh that each salesperson presses before opening the dashboard
    2. BA weekly export of the dashboard as a PDF that is attached to a meeting invite
    3. CA cache time of zero so that every page view reruns every query against the warehouse
    4. DA scheduled refresh for the dashboard that runs after the overnight load completes
    Show answer and explanation
    Correct answer: D

    A scheduled refresh timed after the overnight load keeps the dashboard current each morning without manual action. Asking each person to refresh pushes work onto users, a weekly PDF is out of date between exports, and a zero cache time makes every view expensive without making the data fresher.

  4. Question 12

    An analyst prepares an executive dashboard and wants it to be clear and trustworthy for readers. Which THREE practices improve it? (Choose three.)

    1. ALabel each chart with its unit and the time period it covers
    2. BShow a last-updated time so readers know how current the figures are
    3. CUse a consistent colour for the same category across all charts on the dashboard
    4. DUse a 3D pie chart with many slices so that small values are easy to compare
    5. EPlace every chart on one page with no titles so that the layout looks uncluttered
    Show answer and explanation
    Correct answer: A, B, C

    Units, time periods, a last-updated time and consistent colours help readers interpret the figures correctly. A 3D pie with many slices distorts and hides values, and untitled charts leave readers guessing what each figure means.

Securing Data (3 questions)

  1. Question 13

    A data steward wants a Unity Catalog table to show only rows for the region that the querying user belongs to. Other regions must be hidden without changing the query text that analysts run. Which feature should be used?

    1. AA view that analysts are asked to use only if they remember to filter by their region
    2. BA dashboard filter that users must set themselves each time they open the dashboard
    3. CA row filter function attached to the table that tests the user's group membership
    4. DA separate table for each region that analysts must choose manually in their query
    Show answer and explanation
    Correct answer: C

    A row filter attached to the table applies automatically to every query, so users see only the rows they are allowed to see. Per-region tables require analysts to choose the right one, dashboard filters are optional for users, and a view that people must remember to use does not enforce the rule.

  2. Question 14

    A data steward is setting up access for a sales analytics project in Unity Catalog. Which THREE practices follow the principle of least privilege? (Choose three.)

    1. AGrant SELECT on the specific tables that analysts need rather than on the whole catalog
    2. BGrant USE CATALOG and USE SCHEMA on the parent objects so that analysts can reach the tables they were given
    3. CGive every analyst the metastore admin role so that they never wait for a permission change
    4. DUse groups rather than individual users as the grantees for shared access
    5. EGrant ALL PRIVILEGES on the production catalog to the project team for convenience
    Show answer and explanation
    Correct answer: A, B, D

    Granting SELECT only on the needed tables, adding USE privileges on parents, and granting to groups keep access narrow and manageable. Admin roles and ALL PRIVILEGES on production give far more than analysts need.

  3. Question 15

    An analyst is granted SELECT on a table, but queries fail with a permission error about the catalog. The table's schema and catalog exist. Which additional privilege is most likely missing?

    1. AMODIFY on the table so that the analyst can read its rows as well as change them in the table definition
    2. BCREATE TABLE on the workspace so that the analyst's queries can run against the shared warehouse resources
    3. CUSE CATALOG on the parent catalog, and USE SCHEMA on the parent schema
    4. DALL PRIVILEGES on the metastore so that any table in any catalog can be queried by the analyst
    Show answer and explanation
    Correct answer: C

    In Unity Catalog, a user needs USE CATALOG and USE SCHEMA on the parent objects to reach a table, along with SELECT on the table itself. MODIFY allows changes to rows rather than reads, CREATE TABLE is for making new tables, and metastore-wide privileges go well beyond what this analyst needs.

Developing, Sharing, and Maintaining AI/BI Genie Spaces (3 questions)

  1. Question 16

    A business team wants to ask natural-language questions about sales data without writing SQL. The analyst must limit the answers to a curated set of tables and provide instructions about business terms. Which Databricks feature fits?

    1. AAn AI/BI Genie space configured with the curated tables and instructions for business terms
    2. BA notebook that the business team runs cell by cell whenever it needs an answer
    3. CA Databricks Connect session that each team member starts from a local laptop
    4. DA Delta Live Tables pipeline that writes a new table for every question asked by the team
    Show answer and explanation
    Correct answer: A

    An AI/BI Genie space lets business users ask natural-language questions over a chosen set of tables, with instructions that define terms. A pipeline per question is impractical, a notebook still expects code from users, and Databricks Connect is for developers running code locally.

  2. Question 17

    An analyst has built a Genie space that answers questions about inventory. Some answers are wrong because the analyst's business definition of stock on hand differs from what the column name suggests. What is the best first action?

    1. ATurn off Genie and tell business users to query the warehouse directly with SQL
    2. BDelete the table and recreate it with a different column name that matches the business definition
    3. CShare the Genie space with all workspace users so that more people can report the wrong answers
    4. DAdd a text instruction in the Genie space that defines stock on hand and gives the correct column logic
    Show answer and explanation
    Correct answer: D

    A clear instruction in the Genie space gives the model the business definition it needs, which fixes this class of error at its source. Renaming the table breaks other consumers, sharing more widely spreads wrong answers, and turning off the tool removes the self-service benefit without fixing the definition.

  3. Question 18

    A Genie space must be used by the finance team. Team members should be able to ask questions and see answers, but not change the instructions or the tables the space uses. Which permission level should be granted?

    1. ACan run, which allows questions but not editing of the space
    2. BCan manage, which allows editing of instructions and sharing of the space
    3. CCan edit, which allows changes to the instructions and table selection
    4. DWorkspace admin, which is needed for every user who asks a question
    Show answer and explanation
    Correct answer: A

    Can run lets users ask questions and see answers without editing the space's instructions or tables. Can manage and can edit both let users change the space, and making every user a workspace admin grants far more access than the requirement allows.

Managing Data (3 questions)

  1. Question 19

    A table in Unity Catalog contains customer email addresses. Analysts in the marketing group may query the table, but they must see a masked value in the email column, while the support group sees the full address. Which approach meets this requirement?

    1. AA separate copy of the table with the email column removed and shared with the marketing group
    2. BA notebook setting that hides the output of the email column for each user
    3. CA column mask function on the email column that checks group membership before returning the value
    4. DA comment on the email column that tells analysts not to read the value
    Show answer and explanation
    Correct answer: C

    A column mask in Unity Catalog applies a function to the column at query time, so the returned value depends on the querying user's group. A separate copy duplicates data and needs upkeep, a comment does not enforce anything, and notebook output settings do not protect data in SQL results.

  2. Question 20

    A team has data in a Delta table that must be cleaned before analysis: some rows have null customer IDs, and some dates are stored as strings. The team wants the cleaned result available to analysts as a governed table. What is the best approach?

    1. AAsk each analyst to filter nulls and cast dates in their own queries every time they run a report
    2. BExport the table to a spreadsheet, clean it there by hand, and share the spreadsheet with the team
    3. CCreate a cleaned table or view with SQL that filters out null IDs and casts dates, and grant analysts access to it
    4. DDrop the rows with nulls from the source table permanently without keeping a record of what was removed
    Show answer and explanation
    Correct answer: C

    A cleaned table or view created by SQL gives analysts a governed, repeatable result, and access can be granted on it. Repeating cleanup in every query invites inconsistency, a hand-edited spreadsheet is not reproducible, and permanently dropping rows loses records that may be needed for audit.

  3. Question 21

    A team is organizing data in Unity Catalog so that analysts can discover and trust certified datasets. Which TWO practices help most? (Choose two.)

    1. AAdd table and column comments that describe what each field means and where it comes from
    2. BKeep all tables in a single schema called misc so that the catalog stays short
    3. CUse tags or a clear naming convention to mark which datasets are certified for reporting
    4. DGive each analyst a personal copy of every certified table to avoid shared access
    5. EDelete the descriptions of older tables so that the catalog only shows current ones
    Show answer and explanation
    Correct answer: A, C

    Descriptions explain meaning and lineage to readers, and tags or naming conventions show which datasets are certified. A misc schema hides meaning, personal copies drift from certified data, and deleting descriptions removes information analysts rely on.

Understanding of Databricks Data + AI Platform (3 questions)

  1. Question 22

    An analyst joins a team that uses Databricks. The team wants one place to govern tables, views and volumes across several workspaces, with a single set of access grants. Which Databricks feature provides this?

    1. ADelta Live Tables
    2. BUnity Catalog
    3. CDatabricks Connect
    4. DWorkspace file browser
    Show answer and explanation
    Correct answer: B

    Unity Catalog is the governance layer that stores metadata for catalogs, schemas, tables, views and volumes across workspaces and applies one set of grants. Delta Live Tables builds pipelines rather than governing data, Databricks Connect runs local code against a cluster, and the workspace file browser only stores notebooks and files.

  2. Question 23

    A team wants its SQL queries and dashboards to run on compute that Databricks manages and that starts quickly without the team sizing clusters. Which compute option should the team choose?

    1. AA classic all-purpose cluster that stays running all day
    2. BA single-node job cluster that is created for every query
    3. CA serverless SQL warehouse
    4. DA local laptop with Databricks Connect and a Python virtual environment
    Show answer and explanation
    Correct answer: C

    Serverless SQL warehouses are managed by Databricks, start quickly and need no cluster sizing by the team. An always-on all-purpose cluster is costly and managed by the team, a job cluster per query is slow to start, and a laptop is not Databricks-managed compute.

  3. Question 24

    A new analyst asks which Databricks components they will use daily for SQL-based analysis. Which TWO components are most directly used for querying data and building reports? (Choose two.)

    1. ASQL editor in Databricks SQL
    2. BDatabricks SQL warehouse
    3. CCluster init scripts that install system packages on every node
    4. DTerraform state files stored in the workspace root folder
    5. EMLflow experiment tracking for model training runs
    Show answer and explanation
    Correct answer: A, B

    The SQL editor and SQL warehouses are the core of day-to-day SQL analysis in Databricks SQL. Init scripts, Terraform state and MLflow experiment tracking support infrastructure or machine learning work rather than everyday analysis.

Importing Data (3 questions)

  1. Question 25

    A data analyst needs to load a set of new CSV files that arrive in cloud object storage every hour into a Delta table. The files arrive continuously, and the team wants new files picked up without listing the whole folder each time. Which method fits best?

    1. AA manual UI upload of the files each hour through the table creation page
    2. BAuto Loader using the cloudFiles source to ingest new files incrementally into the table
    3. CA daily notebook that reads every file in the folder and overwrites the table each time
    4. DDelta Sharing from the provider's account, which copies the files into the workspace
    Show answer and explanation
    Correct answer: B

    Auto Loader with the cloudFiles source discovers and ingests new files incrementally, which avoids relisting the whole folder on each run. Manual uploads are not hourly automation, daily overwrites reprocess everything, and Delta Sharing is for reading data shared by another organization rather than loading local files.

  2. Question 26

    A team wants to query a dataset that a partner publishes through Delta Sharing. The partner keeps the data current, and the team wants to query it without copying the files into its own storage. Which approach is correct?

    1. ACopy the partner's storage credentials into a notebook and read the files directly with those credentials each day
    2. BAsk the partner to email a new export file every time the data changes, so that the team can load it by hand
    3. CCreate a catalog from the share in Unity Catalog and query the shared tables directly
    4. DDownload the shared files to a laptop and load them as a CSV table each morning for analysts to query locally
    Show answer and explanation
    Correct answer: C

    Delta Sharing lets a recipient create a catalog from a share and query the shared tables live, without copying files. Laptop downloads and emailed exports are stale copies, and sharing storage credentials exposes secrets and bypasses the sharing controls.

  3. Question 27

    A marketing team uploads a small CSV file to the workspace and wants it available as a table to analysts. The file is 20 MB and does not change. Which action creates the table?

    1. AStore the file in a shared folder and tell analysts to read it with a text editor on their own computers
    2. BUse the table creation UI to upload the CSV as a managed table
    3. CConvert the file to an image and store it in the dashboard background so the data appears as a chart
    4. DLoad the file into a Python list in a notebook each time an analyst opens the notebook for a report run
    Show answer and explanation
    Correct answer: B

    The table creation UI can upload a small CSV and create a managed table from it that analysts can query with SQL. A text editor is not a query tool, converting to an image makes the data unusable, and loading into a notebook list is manual and not shared.

Data Modeling with Databricks SQL (3 questions)

  1. Question 28

    An analyst is designing a star schema for sales reporting in Databricks SQL. The fact table holds one row per order line. Which table should hold the product name, category and brand for reporting?

    1. AThe fact table, with the product name repeated on each order line
    2. BA staging table that is dropped after each load and never used for reporting
    3. CA separate fact table that stores product attributes alongside daily sales totals
    4. DA dimension table keyed on product_id that the fact table references
    Show answer and explanation
    Correct answer: D

    In a star schema, descriptive attributes such as name, category and brand belong in a dimension table keyed on product_id, and the fact table holds measures and foreign keys. Repeating names on every line adds storage and update risk, a second fact table mixes grains, and a dropped staging table is not a reporting model.

  2. Question 29

    A sales fact table has one row per order line. Analysts often filter by customer region, which lives in a customer table. The team wants fast reports without repeating the region on every order line. Which model is most suitable?

    1. AKeep the region in the customer dimension and join it to the fact table on customer_id
    2. BStore all customers in one wide row per order, with an array field holding every past address they used
    3. CRemove the customer key from the fact table and keep only the order total with a date for reporting
    4. DCopy the customer's full record into every order line, including name, address, phone number and region
    Show answer and explanation
    Correct answer: A

    A star-style model keeps descriptive attributes in a dimension table, and a join on customer_id brings the region in for reporting. Copying full customer records into every line inflates storage and creates update problems, arrays of addresses make filters awkward, and removing the key makes customer analysis impossible.

  3. Question 30

    A data model needs a one-to-many relationship between orders and order lines. Analysts want to count lines per order and sum amounts by order. Which modelling choice fits?

    1. AA single table with one row per order and the line details stored as a text string in one column
    2. BOne table per order, named by the order number, with the lines stored inside each order's own table
    3. CTwo separate tables with no keys, joined by matching the order date and the customer's region name
    4. DAn order table and an order lines table linked by the order key
    Show answer and explanation
    Correct answer: D

    An order table and an order lines table joined by a foreign key model the one-to-many relationship cleanly, and aggregation works directly. A text string of lines cannot be summed without parsing, joins on dates are unreliable, and one table per order cannot be queried as a whole.