Based on Official Syllabus Topics of Actual Databricks Databricks-Certified-Professional-Data-Engineer Exam [Q58-Q80]

Share

Based on Official Syllabus Topics of Actual Databricks Databricks-Certified-Professional-Data-Engineer Exam

Free Databricks-Certified-Professional-Data-Engineer Dumps are Available for Instant Access


Databricks-Certified-Professional-Data-Engineer exam consists of multiple-choice questions and hands-on, real-world scenarios that test the candidate's ability to design, build, and deploy data pipelines on Databricks. Databricks-Certified-Professional-Data-Engineer exam covers various topics, including data engineering concepts, Databricks architecture, data processing using Spark, and data integration with other systems. Databricks Certified Professional Data Engineer Exam certification program provides a comprehensive learning experience that prepares candidates to become skilled data engineers and provides them with a competitive edge in the job market.

 

NEW QUESTION # 58
When scheduling Structured Streaming jobs for production, which configuration automatically recovers from query failures and keeps costs low?

  • A. Cluster: Existing All-Purpose Cluster;
    Retries: Unlimited;
    Maximum Concurrent Runs: 1
  • B. Cluster: Existing All-Purpose Cluster;
    Retries: Unlimited;
    Maximum Concurrent Runs: 1
  • C. Cluster: New Job Cluster;
    Retries: None;
    Maximum Concurrent Runs: 1
  • D. Cluster: New Job Cluster;
    Retries: Unlimited;
    Maximum Concurrent Runs: Unlimited
  • E. Cluster: Existing All-Purpose Cluster;
    Retries: None;
    Maximum Concurrent Runs: 1

Answer: B

Explanation:
The configuration that automatically recovers from query failures and keeps costs low is to use a new job cluster, set retries to unlimited, and set maximum concurrent runs to 1. This configuration has the following advantages:
* A new job cluster is a cluster that is created and terminated for each job run. This means that the cluster resources are only used when the job is running, and no idle costs are incurred. This also ensures that the cluster is always in a clean state and has the latest configuration and libraries for the job1.
* Setting retries to unlimited means that the job will automatically restart the query in case of any failure, such as network issues, node failures, or transient errors. This improves the reliability and availability of the streaming job, and avoids data loss or inconsistency2.
* Setting maximum concurrent runs to 1 means that only one instance of the job can run at a time. This prevents multiple queries from competing for the same resources or writing to the same output location, which can cause performance degradation or data corruption3.
Therefore, this configuration is the best practice for scheduling Structured Streaming jobs for production, as it ensures that the job is resilient, efficient, and consistent.
References: Job clusters, Job retries, Maximum concurrent runs


NEW QUESTION # 59
What statement is true regarding the retention of job run history?

  • A. It is retained for 60 days, after which logs are archived
  • B. It is retained until you export or delete job run logs
  • C. It is retained for 90 days or until the run-id is re-used through custom run configuration
  • D. t is retained for 60 days, during which you can export notebook run results to HTML
  • E. It is retained for 30 days, during which time you can deliver job run logs to DBFS or S3

Answer: E

Explanation:
Explanation
This is the correct answer because it is true regarding the retention of job run history. Job run history is the information about each run of a job, such as the start time, end time, status, logs, and output. Job run history is retained for 30 days by default, during which time you can view it in the Jobs UI or access it through the Jobs API. You can also deliver job run logs to DBFS or S3 using the Log Delivery feature, which allows you to specify a destination path and a delivery frequency for each job. By delivering job run logs to DBFS or S3, you can preserve them beyond the 30-day retention period and use them for further analysis or troubleshooting. Verified References: [Databricks Certified Data Engineer Professional], under "Databricks Jobs" section;Databricks Documentation, under "Job run history" section; Databricks Documentation, under
"Log Delivery" section.


NEW QUESTION # 60
The data engineer team has been tasked with configured connections to an external database that does not have a supported native connector with Databricks. The external database already has data security configured by group membership. These groups map directly to user group already created in Databricks that represent various teams within the company.
A new login credential has been created for each group in the external database. The Databricks Utilities Secrets module will be used to make these credentials available to Databricks users.
Assuming that all the credentials are configured correctly on the external database and group membership is properly configured on Databricks, which statement describes how teams can be granted the minimum necessary access to using these credentials?

  • A. "Read" permissions should be set on a secret scope containing only those credentials that will be used by a given team.
  • B. ''Read'' permissions should be set on a secret key mapped to those credentials that will be used by a given team.
  • C. No additional configuration is necessary as long as all users are configured as administrators in the workspace where secrets have been added.
  • D. "Manage" permission should be set on a secret scope containing only those credentials that will be used by a given team.

Answer: A

Explanation:
In Databricks, using the Secrets module allows for secure management of sensitive information such as database credentials. Granting 'Read' permissions on a secret key that maps to database credentials for a specific team ensures that only members of that team can access these credentials. This approach aligns with the principle of least privilege, granting users the minimum level of access required to perform their jobs, thus enhancing security.
References:
* Databricks Documentation on Secret Management: Secrets


NEW QUESTION # 61
What is the best way to describe a data lakehouse compared to a data warehouse?

  • A. A data lakehouse captures snapshots of data for version control purposes.
  • B. A data lakehouse couples storage and compute for complete control.
  • C. A data lakehouse utilizes proprietary storage formats for data.
  • D. A data lakehouse enables both batch and streaming analytics.
  • E. A data lakehouse provides a relational system of data management

Answer: D

Explanation:
Explanation
Anser is A data lakehouse enables both batch and streaming analytics.
A lakehouse has the following key features:
*Transaction support: In an enterprise lakehouse many data pipelines will often be reading and writing data concurrently. Support for ACID transactions ensures consistency as multi-ple parties concurrently read or write data, typically using SQL.
*Schema enforcement and governance: The Lakehouse should have a way to support schema enforcement and evolution, supporting DW schema architectures such as star/snowflake-schemas. The system should be able to reason about data integrity, and it should have robust governance and auditing mechanisms.
*BI support: Lakehouses enable using BI tools directly on the source data. This reduces staleness and improves recency, reduces latency, and lowers the cost of having to operationalize two copies of the data in both a data lake and a warehouse.
*Storage is decoupled from compute: In practice this means storage and compute use sepa-rate clusters, thus these systems are able to scale to many more concurrent users and larger data sizes. Some modern data warehouses also have this property.
*Openness: The storage formats they use are open and standardized, such as Parquet, and they provide an API so a variety of tools and engines, including machine learning and Py-thon/R libraries, can efficiently access the data directly.
*Support for diverse data types ranging from unstructured to structured data: The lakehouse can be used to store, refine, analyze, and access data types needed for many new data applications, including images, video, audio, semi-structured data, and text.
*Support for diverse workloads: including data science, machine learning, and SQL and analytics. Multiple tools might be needed to support all these workloads but they all rely on the same data repository.
*End-to-end streaming: Real-time reports are the norm in many enterprises. Support for streaming eliminates the need for separate systems dedicated to serving real-time data applications.


NEW QUESTION # 62
Incorporating unit tests into a PySpark application requires upfront attention to the design of your jobs, or a potentially significant refactoring of existing code.
Which statement describes a main benefit that offset this additional effort?

  • A. Validates a complete use case of your application
  • B. Improves the quality of your data
  • C. Yields faster deployment and execution times
  • D. Troubleshooting is easier since all steps are isolated and tested individually
  • E. Ensures that all steps interact correctly to achieve the desired end result

Answer: D


NEW QUESTION # 63
A data architect is designing a data model that works for both video-based machine learning work-loads and
highly audited batch ETL/ELT workloads.
Which of the following describes how using a data lakehouse can help the data architect meet the needs of
both workloads?

  • A. A data lakehouse combines compute and storage for simple governance
  • B. A data lakehouse requires very little data modeling
  • C. A data lakehouse provides autoscaling for compute clusters
  • D. A data lakehouse stores unstructured data and is ACID-compliant
  • E. A data lakehouse fully exists in the cloud

Answer: D


NEW QUESTION # 64
Your team has hundreds of jobs running but it is difficult to track cost of each job run, you are asked to provide a recommendation on how to monitor and track cost across various workloads

  • A. Use workspace admin reporting
  • B. Create jobs in different workspaces, so we can track the cost easily
  • C. Use a single cluster for all the jobs, so cost can be easily tracked
  • D. Use Tags, during job creation so cost can be easily tracked
  • E. Use job logs to monitor and track the costs

Answer: D

Explanation:
Explanation
The answer is Use Tags, during job creation so cost can be easily tracked Review below link for more details
https://docs.databricks.com/administration-guide/account-settings/usage-detail-tags-aws.html Here is a view how tags get propagated from pools to clusters and clusters without pools, Diagram Description automatically generated


NEW QUESTION # 65
The data architect has mandated that all tables in the Lakehouse should be configured as external Delta Lake tables.
Which approach will ensure that this requirement is met?

  • A. Whenever a database is being created, make sure that the location keyword is used
  • B. When configuring an external data warehouse for all table storage. leverage Databricks for all ELT.
  • C. When tables are created, make sure that the external keyword is used in the create table statement.
  • D. When the workspace is being configured, make sure that external cloud object storage has been mounted.
  • E. Whenever a table is being created, make sure that the location keyword is used.

Answer: E


NEW QUESTION # 66
Which of the following data workloads will utilize a gold table as its source?

  • A. A job that cleans data by removing malformatted records
  • B. A job that aggregates cleaned data to create standard summary statistics
  • C. A job that ingests raw data from a streaming source into the Lakehouse
  • D. A job that queries aggregated data that already feeds into a dashboard
  • E. A job that enriches data by parsing its timestamps into a human-readable format

Answer: D

Explanation:
Explanation
The answer is, A job that queries aggregated data that already feeds into a dashboard The gold layer is used to store aggregated data, which are typically used for dashboards and reporting.
Review the below link for more info,
Medallion Architecture - Databricks
Gold Layer:
1. Powers Ml applications, reporting, dashboards, ad hoc analytics
2. Refined views of data, typically with aggregations
3. Reduces strain on production systems
4. Optimizes query performance for business-critical data
Exam focus: Please review the below image and understand the role of each layer(bronze, silver, gold) in medallion architecture, you will see varying questions targeting each layer and its purpose.
Sorry I had to add the watermark some people in Udemy are copying my content.
Purpose of each layer in medallion architecture


NEW QUESTION # 67
A Structured Streaming job deployed to production has been experiencing delays during peak hours of the day.
At present, during normal execution, each microbatch of data is processed in less than 3 seconds. During peak hours of the day, execution time for each microbatch becomes very inconsistent, sometimes exceeding 30 seconds. The streaming write is currently configured with a trigger interval of 10 seconds.
Holding all other variables constant and assuming records need to be processed in less than 10 seconds, which adjustment will meet the requirement?

  • A. Use the trigger once option and configure a Databricks job to execute the query every 10 seconds; this ensures all backlogged records are processed with each batch.
  • B. Decrease the trigger interval to 5 seconds; triggering batches more frequently may prevent records from backing up and large batches from causing spill.
  • C. The trigger interval cannot be modified without modifying the checkpoint directory; to maintain the current stream state, increase the number of shuffle partitions to maximize parallelism.
  • D. Decrease the trigger interval to 5 seconds; triggering batches more frequently allows idle executors to begin processing the next batch while longer running tasks from previous batches finish.
  • E. Increase the trigger interval to 30 seconds; setting the trigger interval near the maximum execution time observed for each batch is always best practice to ensure no records are dropped.

Answer: B

Explanation:
Explanation
The adjustment that will meet the requirement of processing records in less than 10 seconds is to decrease the trigger interval to 5 seconds. This is because triggering batches more frequently may prevent records from backing up and large batches from causing spill. Spill is a phenomenon where the data in memory exceeds the available capacity and has to be written to disk, which can slow down the processing and increase the execution time1. By reducing the trigger interval, the streaming query can process smaller batches of data more quickly and avoid spill. This can also improve the latency and throughput of the streaming job2.
The other options are not correct, because:
Option A is incorrect because triggering batches more frequently does not allow idle executors to begin processing the next batch while longer running tasks from previous batches finish. In fact, the opposite is true. Triggering batches more frequently may cause concurrent batches to compete for the same resources and cause contention and backpressure2. This can degrade the performance and stability of the streaming job.
Option B is incorrect because increasing the trigger interval to 30 seconds is not a good practice to ensure no records are dropped. Increasing the trigger interval means that the streaming query will process larger batches of data less frequently, which can increase the risk of spill, memory pressure, and timeouts12. This can also increase the latency and reduce the throughput of the streaming job.
Option C is incorrect because the trigger interval can be modified without modifying the checkpoint directory. The checkpoint directory stores the metadata and state of the streaming query, such as the offsets, schema, and configuration3. Changing the trigger interval does not affect the state of the streaming query, and does not require a new checkpoint directory. However, changing the number of shuffle partitions may affect the state of the streaming query, and may require a new checkpoint directory4.
Option D is incorrect because using the trigger once option and configuring a Databricks job to execute the query every 10 seconds does not ensure that all backlogged records are processed with each batch. The trigger once option means that the streaming query will process all the available data in the source and then stop5. However, this does not guarantee that the query will finish processing within 10 seconds, especially if there area lot of records in the source. Moreover, configuring a Databricks job to execute the query every 10 seconds may cause overlapping or missed batches, depending on the execution time of the query.
References: Memory Management Overview, Structured Streaming Performance Tuning Guide, Checkpointing, Recovery Semantics after Changes in a Streaming Query, Triggers


NEW QUESTION # 68
You were asked to create a table that can store the below data, orderTime is a timestamp but the finance team when they query this data normally prefer the orderTime in date format, you would like to create a calculated column that can convert the orderTime column timestamp datatype to date and store it, fill in the blank to complete the DDL.

  • A. GENERATED DEFAULT AS (CAST(orderTime as DATE))
  • B. GENERATED ALWAYS AS (CAST(orderTime as DATE))
    Correct)
  • C. Delta lake does not support calculated columns, value should be inserted into the table as part of the ingestion process
  • D. AS DEFAULT (CAST(orderTime as DATE))
  • E. AS (CAST(orderTime as DATE))

Answer: B

Explanation:
Explanation
The answer is, GENERATED ALWAYS AS (CAST(orderTime as DATE))
https://docs.microsoft.com/en-us/azure/databricks/delta/delta-batch#--use-generated-columns Delta Lake supports generated columns which are a special type of columns whose values are au-tomatically generated based on a user-specified function over other columns in the Delta table. When you write to a table with generated columns and you do not explicitly provide values for them, Delta Lake automatically computes the values.
Note: Databricks also supports partitioning using generated column


NEW QUESTION # 69
A Structured Streaming job deployed to production has been experiencing delays during peak hours of the day. At present, during normal execution, each microbatch of data is processed in less than 3 seconds. During peak hours of the day, execution time for each microbatch becomes very inconsistent, sometimes exceeding 30 seconds. The streaming write is currently configured with a trigger interval of 10 seconds.
Holding all other variables constant and assuming records need to be processed in less than 10 seconds, which adjustment will meet the requirement?

  • A. Use the trigger once option and configure a Databricks job to execute the query every 10 seconds; this ensures all backlogged records are processed with each batch.
  • B. Decrease the trigger interval to 5 seconds; triggering batches more frequently may prevent records from backing up and large batches from causing spill.
  • C. The trigger interval cannot be modified without modifying the checkpoint directory; to maintain the current stream state, increase the number of shuffle partitions to maximize parallelism.
  • D. Decrease the trigger interval to 5 seconds; triggering batches more frequently allows idle executors to begin processing the next batch while longer running tasks from previous batches finish.
  • E. Increase the trigger interval to 30 seconds; setting the trigger interval near the maximum execution time observed for each batch is always best practice to ensure no records are dropped.

Answer: B

Explanation:
The adjustment that will meet the requirement of processing records in less than 10 seconds is to decrease the trigger interval to 5 seconds. This is because triggering batches more frequently may prevent records from backing up and large batches from causing spill. Spill is a phenomenon where the data in memory exceeds the available capacity and has to be written to disk, which can slow down the processing and increase the execution time1. By reducing the trigger interval, the streaming query can process smaller batches of data more quickly and avoid spill. This can also improve the latency and throughput of the streaming job2.
The other options are not correct, because:
Option A is incorrect because triggering batches more frequently does not allow idle executors to begin processing the next batch while longer running tasks from previous batches finish. In fact, the opposite is true. Triggering batches more frequently may cause concurrent batches to compete for the same resources and cause contention and backpressure2. This can degrade the performance and stability of the streaming job.
Option B is incorrect because increasing the trigger interval to 30 seconds is not a good practice to ensure no records are dropped. Increasing the trigger interval means that the streaming query will process larger batches of data less frequently, which can increase the risk of spill, memory pressure, and timeouts12. This can also increase the latency and reduce the throughput of the streaming job.
Option C is incorrect because the trigger interval can be modified without modifying the checkpoint directory. The checkpoint directory stores the metadata and state of the streaming query, such as the offsets, schema, and configuration3. Changing the trigger interval does not affect the state of the streaming query, and does not require a new checkpoint directory. However, changing the number of shuffle partitions may affect the state of the streaming query, and may require a new checkpoint directory4.
Option D is incorrect because using the trigger once option and configuring a Databricks job to execute the query every 10 seconds does not ensure that all backlogged records are processed with each batch. The trigger once option means that the streaming query will process all the available data in the source and then stop5. However, this does not guarantee that the query will finish processing within 10 seconds, especially if there are a lot of records in the source. Moreover, configuring a Databricks job to execute the query every 10 seconds may cause overlapping or missed batches, depending on the execution time of the query.


NEW QUESTION # 70
You are working on a dashboard that takes a long time to load in the browser, due to the fact that each visualization contains a lot of data to populate, which of the following approaches can be taken to address this issue?

  • A. Increase size of the SQL endpoint cluster
  • B. Increase the scale of maximum range of SQL endpoint cluster
  • C. Use Databricks SQL Query filter to limit the amount of data in each visualization
  • D. Remove data from Delta Lake
  • E. Use Delta cache to store the intermediate results

Answer: C

Explanation:
Explanation
Note*: The question may sound misleading but these are types of questions the exam tries to ask.
A query filter lets you interactively reduce the amount of data shown in a visualization, similar to query parameter but with a few key differences. A query filter limits data after it has been loaded into your browser.
This makes filters ideal for smaller datasets and environments where query executions are time-consuming, rate-limited, or costly.
This query filter is different from than filter that needs to be applied at the data level, this filter is at the visualization level so you can toggle how much data you want to see.
1.SELECT action AS `action::filter`, COUNT(0) AS "actions count"
2.FROM events
3.GROUP BY action
When queries have filters you can also apply filters at the dashboard level. Select the Use Dash-board Level Filters checkbox to apply the filter to all queries.
Dashboard filters
Query filters | Databricks on AWS


NEW QUESTION # 71
A user new to Databricks is trying to troubleshoot long execution times for some pipeline logic they are working on. Presently, the user is executing code cell-by-cell, using display() calls to confirm code is producing the logically correct results as new transformations are added to an operation. To get a measure of average time to execute, the user is running each cell multiple times interactively.
Which of the following adjustments will get a more accurate measure of how code is likely to perform in production?

  • A. Production code development should only be done using an IDE; executing code against a local build of open source Spark and Delta Lake will provide the most accurate benchmarks for how code will perform in production.
  • B. The only way to meaningfully troubleshoot code execution times in development notebooks Is to use production-sized data and production-sized clusters with Run All execution.
  • C. The Jobs Ul should be leveraged to occasionally run the notebook as a job and track execution time during incremental code development because Photon can only be enabled on clusters launched for scheduled jobs.
  • D. Calling display () forces a job to trigger, while many transformations will only add to the logical query plan; because of caching, repeated execution of the same logic does not provide meaningful results.
  • E. Scala is the only language that can be accurately tested using interactive notebooks; because the best performance is achieved by using Scala code compiled to JARs. all PySpark and Spark SQL logic should be refactored.

Answer: D

Explanation:
This is the correct answer because it explains which of the following adjustments will get a more accurate measure of how code is likely to perform in production. The adjustment is that calling display() forces a job to trigger, while many transformations will only add to the logical query plan; because of caching, repeated execution of the same logic does not provide meaningful results. When developing code in Databricks notebooks, one should be aware of how Spark handles transformations and actions. Transformations are operations that create a new DataFrame or Dataset from an existing one, such as filter, select, or join. Actions are operations that trigger a computation on a DataFrame or Dataset and return a result to the driver program or write it to storage, such as count, show, or save. Calling display() on a DataFrame or Dataset is also an action that triggers a computation and displays the result in a notebook cell. Spark uses lazy evaluation for transformations, which means that they are not executed until an action is called. Spark also uses caching to store intermediate results in memory or disk for faster access in subsequent actions. Therefore, calling display() forces a job to trigger, while many transformations will only add to the logical query plan; because of caching, repeated execution of the same logic does not provide meaningful results. To get a more accurate measure of how code is likely to perform in production, one should avoid calling display() too often or clear the cache before running each cell. Verified Reference: [Databricks Certified Data Engineer Professional], under "Spark Core" section; Databricks Documentation, under "Lazy evaluation" section; Databricks Documentation, under "Caching" section.


NEW QUESTION # 72
Which of the statements are correct about lakehouse?

  • A. Lakehouse supports schema enforcement and evolution
  • B. Lakehouse only supports Machine learning workloads and Data warehouses support BI workloads
  • C. In Lakehouse Storage and compute are coupled
  • D. Lakehouse only supports end-to-end streaming workloads and Data warehouses support Batch workloads
  • E. Lakehouse does not support ACID

Answer: A

Explanation:
Explanation
The answer is Lakehouse supports schema enforcement and evolution,
Lakehouse using Delta lake can not only enforce a schema on write which is contrary to traditional big data systems that can only enforce a schema on read, it also supports evolving schema over time with the ability to control the evolution.
For example below is the Dataframe writer API and it supports three modes of enforcement and evolution, Default: Only enforcement, no changes are allowed and any schema drift/evolution will result in failure.
Merge: Flexible, supports enforcement and evolution
* New columns are added
* Evolves nested columns
* Supports evolving data types, like Byte to Short to Integer to Bigint How to enable:
* DF.write.format("delta").option("mergeSchema", "true").saveAsTable("table_name")
* or
* spark.databricks.delta.schema.autoMerge = True ## Spark session
Overwrite: No enforcement
* Dropping columns
* Change string to integer
* Rename columns
How to enable:
* DF.write.format("delta").option("overwriteSchema", "True").saveAsTable("table_name") What Is a Lakehouse? - The Databricks Blog Graphical user interface, text, application Description automatically generated


NEW QUESTION # 73
Which of the following is true of Delta Lake and the Lakehouse?

  • A. Because Parquet compresses data row by row. strings will only be compressed when a character is repeated multiple times.
  • B. Z-order can only be applied to numeric values stored in Delta Lake tables
  • C. Delta Lake automatically collects statistics on the first 32 columns of each table which are leveraged in data skipping based on query filters.
  • D. Primary and foreign key constraints can be leveraged to ensure duplicate values are never entered into a dimension table.
  • E. Views in the Lakehouse maintain a valid cache of the most recent versions of source tables at all times.

Answer: C

Explanation:
Explanation
https://docs.delta.io/2.0.0/table-properties.html
Delta Lake automatically collects statistics on the first 32 columns of each table, which are leveraged in data skipping based on query filters1. Data skipping is a performance optimization technique that aims to avoid reading irrelevant data from the storage layer1. By collecting statistics such as min/max values, null counts, and bloom filters, Delta Lake can efficiently prune unnecessary files or partitions from the query plan1. This can significantly improve the query performance and reduce the I/O cost.
The other options are false because:
Parquet compresses data column by column, not row by row2. This allows for better compression ratios, especially for repeated or similar values within a column2.
Views in the Lakehouse do not maintain a valid cache of the most recent versions of source tables at all times3. Views are logical constructs that are defined by a SQL query on one or more base tables3. Views are not materialized by default, which means they do not store any data, but only the query definition3. Therefore, views always reflect the latest state of the source tables when queried3.
However, views can be cached manually using the CACHE TABLE or CREATE TABLE AS SELECT commands.
Primary and foreign key constraints can not be leveraged to ensure duplicate values are never entered into a dimension table. Delta Lake does not support enforcing primary and foreign key constraints on tables. Constraints are logical rules that define the integrity and validity of the data in a table. Delta Lake relies on the application logic or the user to ensure the data quality and consistency.
Z-order can be applied to any values stored in Delta Lake tables, not only numeric values. Z-order is a technique to optimize the layout of the data files by sorting them on one or more columns. Z-order can improve the query performance by clustering related values together and enabling more efficient data skipping. Z-order can be applied to any column that has a defined ordering, such as numeric, string, date, or boolean values.
References: Data Skipping, Parquet Format, Views, [Caching], [Constraints], [Z-Ordering]


NEW QUESTION # 74
A table nameduser_ltvis being used to create a view that will be used by data analysts on various teams. Users in the workspace are configured into groups, which are used for setting up data access using ACLs.
Theuser_ltvtable has the following schema:
email STRING, age INT, ltv INT
The following view definition is executed:

An analyst who is not a member of the marketing group executes the following query:
SELECT * FROM email_ltv
Which statement describes the results returned by this query?

  • A. The email and ltv columns will be returned with the values in user itv.
  • B. Three columns will be returned, but one column will be named "redacted" and contain only null values.
  • C. Only the email and ltv columns will be returned; the email column will contain the string
    "REDACTED" in each row.
  • D. The email, age. and ltv columns will be returned with the values in user ltv.
  • E. Only the email and itv columns will be returned; the email column will contain all null values.

Answer: C

Explanation:
Explanation
The code creates a view called email_ltv that selects the email and ltv columns from a table called user_ltv, which has the following schema: email STRING, age INT, ltv INT. The code alsouses the CASE WHEN expression to replace the email values with the string "REDACTED" if the user is not a member of the marketing group. The user who executes the query is not a member of the marketing group, so they will only see the email and ltv columns, and the email column will contain the string "REDACTED" in each row.
Verified References: [Databricks Certified Data Engineer Professional], under "Lakehouse" section; Databricks Documentation, under "CASE expression" section.


NEW QUESTION # 75
A Spark job is taking longer than expected. Using the Spark UI, a data engineer notes that the Min, Median, and Max Durations for tasks in a particular stage show the minimum and median time to complete a task as roughly the same, but the max duration for a task to be roughly 100 times as long as the minimum.
Which situation is causing increased duration of the overall job?

  • A. Skew caused by more data being assigned to a subset of spark-partitions.
  • B. Task queueing resulting from improper thread pool assignment.
  • C. Spill resulting from attached volume storage being too small.
  • D. Credential validation errors while pulling data from an external system.
  • E. Network latency due to some cluster nodes being in different regions from the source data

Answer: A

Explanation:
This is the correct answer because skew is a common situation that causes increased duration of the overall job. Skew occurs when some partitions have more data than others, resulting in uneven distribution of work among tasks and executors. Skew can be caused by various factors, such as skewed data distribution, improper partitioning strategy, or join operations with skewed keys. Skew can lead to performance issues such as long-running tasks, wasted resources, or even task failures due to memory or disk spills. Verified Reference: [Databricks Certified Data Engineer Professional], under "Performance Tuning" section; Databricks Documentation, under "Skew" section.


NEW QUESTION # 76
The DevOps team has configured a production workload as a collection of notebooks scheduled to run daily using the Jobs Ul. A new data engineering hire is onboarding to the team and has requested access to one of these notebooks to review the production logic.
What are the maximum notebook permissions that can be granted to the user without allowing accidental changes to production code or data?

  • A. Can edit
  • B. Can Read
  • C. Can run
  • D. Can manage

Answer: B

Explanation:
Granting a user 'Can Read' permissions on a notebook within Databricks allows them to view the notebook's content without the ability to execute or edit it. This level of permission ensures that the new team member can review the production logic for learning or auditing purposes without the risk of altering the notebook's code or affecting production data and workflows. This approach aligns with best practices for maintaining security and integrity in production environments, where strict access controls are essential to prevent unintended modifications.References: Databricks documentation on access control and permissions for notebooks within the workspace (https://docs.databricks.com/security/access-control/workspace-acl.html).


NEW QUESTION # 77
When evaluating the Ganglia Metrics for a given cluster with 3 executor nodes, which indicator would signal proper utilization of the VM's resources?

  • A. Bytes Received never exceeds 80 million bytes per second
  • B. The five Minute Load Average remains consistent/flat
  • C. CPU Utilization is around 75%
  • D. Total Disk Space remains constant
  • E. Network I/O never spikes

Answer: C

Explanation:
In the context of cluster performance and resource utilization, a CPU utilization rate of around 75% is generally considered a good indicator of efficient resource usage. This level of CPU utilization suggests that the cluster is being effectively used without being overburdened or underutilized.
* A consistent 75% CPU utilization indicates that the cluster's processing power is being effectively employed while leaving some headroom to handle spikes in workload or additional tasks without maxing out the CPU, which could lead to performance degradation.
* A five Minute Load Average that remains consistent/flat (Option A) might indicate underutilization or a bottleneck elsewhere.
* Monitoring network I/O (Options B and C) is important, but these metrics alone don't provide a complete picture of resource utilization efficiency.
* Total Disk Space (Option D) remaining constant is not necessarily an indicator of proper resource utilization, as it's more related to storage rather than computational efficiency.
References:
* Ganglia Monitoring System: Ganglia Documentation
* Databricks Documentation on Monitoring: Databricks Cluster Monitoring


NEW QUESTION # 78
A data engineer needs to capture pipeline settings from an existing in the workspace, and use them to create and version a JSON file to create a new pipeline.
Which command should the data engineer enter in a web terminal configured with the Databricks CLI?

  • A. Use the get command to capture the settings for the existing pipeline; remove the pipeline_id and rename the pipeline; use this in a create command
  • B. Use list pipelines to get the specs for all pipelines; get the pipeline spec from the return results parse and use this to create a pipeline
  • C. Use the alone command to create a copy of an existing pipeline; use the get JSON command to get the pipeline definition; save this to git
  • D. Stop the existing pipeline; use the returned settings in a reset command

Answer: A

Explanation:
The Databricks CLI provides a way to automate interactions with Databricks services. When dealing with pipelines, you can use the databricks pipelines get --pipeline-id command to capture the settings of an existing pipeline in JSON format. This JSON can then be modified by removing the pipeline_id to prevent conflicts and renaming the pipeline to create a new pipeline. The modified JSON file can then be used with the databricks pipelines create command to create a new pipeline with those settings.
Reference:
Databricks Documentation on CLI for Pipelines: Databricks CLI - Pipelines


NEW QUESTION # 79
A nightly job ingests data into a Delta Lake table using the following code:

The next step in the pipeline requires a function that returns an object that can be used to manipulate new records that have not yet been processed to the next table in the pipeline.
Which code snippet completes this function definition?
def new_records():

  • A.
  • B. return spark.readStream.load("bronze")
  • C. return spark.read.option("readChangeFeed", "true").table ("bronze")
  • D. return spark.readStream.table("bronze")
  • E.

Answer: E

Explanation:
https://docs.databricks.com/en/delta/delta-change-data-feed.html


NEW QUESTION # 80
......

The Most In-Demand Databricks-Certified-Professional-Data-Engineer Pass Guaranteed Quiz : https://www.braindumpquiz.com/Databricks-Certified-Professional-Data-Engineer-exam-material.html