Questions and Answers
Question zKEJBf3SPKfbegpva965
Question
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?
Choices
- 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.
answer?
Answer: C Answer_ET: C Community answer C (100%) Discussion
Comment 859170 by XiltroX
- Upvotes: 5
Selected Answer: C Correct answer.
Comment 1101133 by AndreFR
- Upvotes: 4
Selected Answer: C https://docs.databricks.com/en/lakehouse-monitoring/monitor-alerts.html
Monitor alerts are created and used the same way as other Databricks SQL alerts. You create a Databricks SQL query on the monitor profile metrics table or drift metrics table. You then create a Databricks SQL alert for this query. You can configure the alert to evaluate the query at a desired frequency, and send a notification if the alert is triggered. By default, email notification is sent. You can also set up a webhook or send notifications to other applications such as Slack or Pagerduty.
Comment 1065508 by awofalus
- Upvotes: 1
Selected Answer: C C is correct
Comment 998013 by vctrhugo
- Upvotes: 2
Selected Answer: C C. They can set up an Alert with a new webhook alert destination.
To notify their entire team via a messaging webhook whenever the number of NULL values reaches 100, the data engineer can set up an Alert in Databricks with a new webhook alert destination. This allows them to configure the alert to trigger when the specified condition (reaching 100 NULL values) is met, and the notification can be sent to the team’s messaging webhook.
Option C provides the specific approach to achieve the desired outcome of notifying the team via a messaging webhook when the condition is met.
Comment 946571 by Atnafu
- Upvotes: 3
C Alerts allow you to be notified when something goes wrong in your Databricks environment. You can set up alerts to be notified by email, webhook, or Slack. Webhooks are a way to send data from one application to another. You can use a webhook to send data from Databricks to a messaging service, such as Slack or PagerDuty. One-time notifications allow you to be notified only once when an alert is triggered. This is useful if you only want to be notified about a specific event. Custom templates allow you to customize the email or webhook notification that is sent when an alert is triggered. This is useful if you want to include additional information in the notification, such as the name of the alert or the value of the metric that triggered the alert.
Comment 862024 by 4be8126
- Upvotes: 4
Selected Answer: C The approach the data engineer can use to notify their entire team via a messaging webhook whenever the number of NULL values reaches 100 is:
C. They can set up an Alert with a new webhook alert destination.
Explanation: To achieve this, the data engineer can set up an Alert in the Databricks workspace that triggers when the query results exceed the threshold of 100 NULL values. They can create a new webhook alert destination in the Alert’s configuration settings and provide the necessary messaging webhook URL to receive notifications. When the Alert is triggered, it will send a message to the configured webhook URL, which will then notify the entire team of the issue.
Question Gpwu8viZOW1db0IhgJzh
Question
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?
Choices
- 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.
answer?
Answer: C Answer_ET: C Community answer C (88%) 13% Discussion
Comment 1359334 by e872ce8
- Upvotes: 1
Selected Answer: C C correct
Comment 1314222 by 806e7d2
- Upvotes: 1
Selected Answer: C In Databricks, Jobs allow users to monitor the performance of tasks and troubleshoot issues with specific runs. When a notebook is running slowly as part of a Job, the tech lead can use the Runs tab in the Jobs UI to examine the task’s performance.
Runs tab in the Jobs UI: This tab shows a list of all runs associated with the Job. The tech lead can identify the specific run where the notebook is performing poorly and click on that run to access detailed information about its performance.
Once the tech lead selects the active run, they can inspect the logs, metrics, and other performance details associated with that task, which will help them identify the cause of the slowdown, such as resource contention, inefficient code, or insufficient compute.
Comment 1203810 by benni_ale
- Upvotes: 1
Selected Answer: C c is correct
Comment 1109428 by Garyn
- Upvotes: 2
Selected Answer: C The tech lead can navigate to the Runs tab in the Jobs UI and click on the active run to review the processing notebook (Option C). This will allow them to inspect the details of the job run, including the duration of each task, which can help identify potential performance issues.
There could be several reasons why a notebook is running slowly as part of a job. For instance, there might be a delay when the job cluster has to be spun up, or the table gets delta cached in memory and copies of files will be stored on local node’s storage. Even certain operations like pandas UDFs can be slow.
Please note that the exact process may vary depending on the specific configurations and permissions set up in your workspace. It’s always a good idea to consult with your organization’s IT or data governance team to ensure the correct procedures are followed.
Comment 1108712 by csd
- Upvotes: 1
C is correct answer as we monitor job and performance of task in same way in my current project . Task tab to add another task or edit existing one
Comment 1065537 by awofalus
- Upvotes: 1
Selected Answer: C C is correct.
Comment 985486 by AndreFR
- Upvotes: 4
Selected Answer: C The job run details page contains job output and links to logs, including information about the success or failure of each task in the job run. You can access job run details from the Runs tab for the job. To view job run details from the Runs tab, click the link for the run in the Start time column in the runs list view. To return to the Runs tab for the job, click the Job ID value.
If the job contains multiple tasks, click a task to view task run details, including:
the cluster that ran the task
the Spark UI for the task
logs for the task
metrics for the task
https://docs.databricks.com/en/workflows/jobs/monitor-job-runs.html#job-run-details
Comment 946586 by Atnafu
- Upvotes: 3
C In the Databricks Jobs UI, the Runs tab provides detailed information about the execution of each run in a Job. By clicking on the active run associated with the notebook running slowly, you can access the specific run details, including the notebook execution logs, execution duration, resource utilization, and any error messages or warnings.
Comment 882507 by Tickxit
- Upvotes: 2
Selected Answer: C “Job runs” tab
Comment 862224 by XiltroX
- Upvotes: 2
Selected Answer: C C is the correct answer. See link https://docs.databricks.com/workflows/jobs/jobs.html
Comment 862029 by 4be8126
- Upvotes: 2
Selected Answer: B B. They can navigate to the Tasks tab in the Jobs UI and click on the active run to review the processing notebook.
The Tasks tab in the Jobs UI provides detailed information about each task in the job, including the task’s execution time, the task’s logs, and the task’s output. By clicking on the active run for the notebook that is running slowly, the tech lead can review the task’s logs and output to identify any issues that might be causing the slowdown. The Runs tab provides an overview of all runs of the job, but it does not provide detailed information about each task in the job.
Question k0voGShsIvHWLCG5Elk4
Question
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?
Choices
- 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
answer?
Answer: D Answer_ET: D Community answer D (92%) 8% Discussion
Comment 946588 by Atnafu
- Upvotes: 8
D Cluster pools are a way to pre-provision clusters that are ready to use. This can reduce the start up time for clusters, as they do not have to be created from scratch. All-purpose clusters are not pre-provisioned, so they will take longer to start up. Jobs clusters are a type of cluster pool, but they are not the best option for this use case. Jobs clusters are designed for long-running jobs, and they can be more expensive than other types of cluster pools. Single-node clusters are the smallest type of cluster, and they will start up the fastest. However, they may not be powerful enough to run the Job’s tasks. Autoscaling clusters can scale up or down based on demand. This can help to improve the start up time for clusters, as they will only be created when they are needed. However, autoscaling clusters can also be more expensive than other types of cluster pool
Comment 1314225 by 806e7d2
- Upvotes: 1
Selected Answer: D Using cluster pools can significantly improve the start-up time of clusters in Databricks. Here’s why:
Cluster Pools: Cluster pools are a feature in Databricks that allow clusters to share a pool of pre-warmed, idle virtual machines (VMs). When a new cluster is created, instead of starting a new VM from scratch, it can quickly acquire a pre-warmed instance from the pool. This leads to faster cluster startup times, which is especially helpful for jobs with multiple tasks that are running nightly.
Comment 1262779 by 80370eb
- Upvotes: 1
Selected Answer: D Cluster pools help to reduce cluster startup times by maintaining a pool of pre-warmed clusters that can be quickly allocated when needed. This minimizes the overhead associated with starting a new cluster from scratch, thus improving the efficiency and speed of running tasks in the Job.
Comment 1203812 by benni_ale
- Upvotes: 1
Selected Answer: D to be fair B might seem correct but D is more appropriate for reducing start up times
Comment 1109433 by Garyn
- Upvotes: 3
Selected Answer: D D. They can use clusters that are from a cluster pool.
Explanation:
Cluster Pools: Cluster pools in Databricks allow for the pre-creation and management of clusters in a pool that are readily available for use. With cluster pools, clusters are pre-initialized and kept in a ready state, minimizing the startup time when tasks need to run. This reduces the overhead of cluster initialization as the clusters are already provisioned and waiting for the tasks to be assigned.
Using clusters from a pool ensures that there is no wait time for cluster initialization when the tasks start running in the nightly Job. This approach significantly reduces the time taken for clusters to start, thereby improving the overall performance and efficiency of the tasks by minimizing the overhead of cluster startup delays.
Comment 1059918 by DavidRou
- Upvotes: 3
Selected Answer: D They must use clusters from a pool if they want to reduce the startup time.
Comment 998015 by vctrhugo
- Upvotes: 3
Selected Answer: D D. They can use clusters that are from a cluster pool.
To improve startup time for the clusters used for the Job, the data engineer can configure the clusters to be sourced from a cluster pool. Cluster pools are pre-allocated clusters that are kept in a running state, ready for use. This eliminates the need to start new clusters from scratch each time a Job runs, significantly reducing startup times.
Cluster pools are designed to optimize cluster reuse, making them an efficient choice for recurring jobs like the one described in the scenario.
Option D provides a practical solution to address the slow cluster startup time issue.
Comment 985489 by AndreFR
- Upvotes: 3
Selected Answer: D You can minimize instance acquisition time by creating a pool for each instance type and Databricks runtime your organization commonly uses.
SOURCE : https://docs.databricks.com/en/clusters/pool-best-practices.html
Comment 867560 by TC007
- Upvotes: 4
Selected Answer: D D: use clusters that are from a cluster pool.
Using clusters from a cluster pool can improve the start-up time for the clusters used in the Job because the pool contains preconfigured and pre-started clusters that can be used immediately. This can save time and resources compared to starting new clusters for each task.
Comment 862030 by 4be8126
- Upvotes: 4
Selected Answer: D D. They can use clusters that are from a cluster pool. Cluster pools allow you to pre-create a pool of ready-to-use clusters that can be used for running jobs, thereby eliminating the need to start new clusters each time a job runs. This can greatly reduce the startup time for each task.
Comment 859176 by XiltroX
- Upvotes: 2
Selected Answer: B B is the correct answer. Job clusters are best suited for automated tasks running on a schedule.
Question dRn6hCKLQoev6vTzRP6F
Question
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?
Choices
- 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;
answer?
Answer: E Answer_ET: E Community answer E (86%) 14% Discussion
Comment 1359335 by e872ce8
- Upvotes: 1
Selected Answer: E E correct
Comment 1314226 by 806e7d2
- Upvotes: 1
Selected Answer: E To grant full privileges on a database in SQL, you would use the GRANT ALL PRIVILEGES command, which gives the specified user or group all available permissions on the database. This typically includes the ability to select, insert, update, delete, and modify the structure of the database (such as creating and dropping tables).
In this case, the command:
sql Copy code GRANT ALL PRIVILEGES ON DATABASE customers TO team; gives the team full control over the customers database, which is what is needed for them to manage the ELT project.
Comment 1203813 by benni_ale
- Upvotes: 1
Selected Answer: E e is correct
Comment 1175609 by Viju_1
- Upvotes: 1
Examtopics not showing all the questions and asking for contributor access. I can only see qestions till 44. Anyone is able to see all 99 questions??????
Comment 1125891 by Skidmee
- Upvotes: 1
E is correct
Comment 1108744 by csd
- Upvotes: 4
E is correct Template to give access⇒ GRANT Privilege ON Object
TO ALL PRIVILEGES = gives all privilege
Comment 1065550 by awofalus
- Upvotes: 2
Selected Answer: E E is correct
Comment 1059922 by DavidRou
- Upvotes: 2
Selected Answer: D Right answer is E. The template to respect is the following: GRANT
ON TO <user/group> Comment 998016 by vctrhugo
- Upvotes: 2
Selected Answer: E E. GRANT ALL PRIVILEGES ON DATABASE customers TO team;
To grant full privileges on the database “customers” to the new data engineering team, you can use the GRANT ALL PRIVILEGES command as shown in option E. This command provides the team with all possible privileges on the specified database, allowing them to fully manage it.
Option A is not correct because it grants only the USAGE privilege, which is not sufficient for full management.
Option B has the syntax reversed, and it is attempting to grant privileges on the “team” database to the “customers” database, which is not the desired action.
Option C contains incorrect syntax and should use “team” instead of “teams.”
Option D has incorrect syntax and is not a valid SQL command for granting privileges in most database management systems.
Comment 946591 by Atnafu
- Upvotes: 1
E GRANT ALL PRIVILEGES ON DATABASE customers TO team;
Comment 862123 by rafahb
- Upvotes: 2
Selected Answer: E Option E
Comment 859178 by XiltroX
- Upvotes: 3
Selected Answer: E Correct answer is E. Please take note of how the questions are worded to avoid confusion and not make the wrong choice.
Question bRON0jhGTbfv4UCPXQiU
Question
A new data engineering team has been assigned to work on a project. The team will need access to database customers in order to see what tables already exist. The team has its own group team. Which of the following commands can be used to grant the necessary permission on the entire database to the new team?
Choices
- A: GRANT VIEW ON CATALOG customers TO team;
- B: GRANT CREATE ON DATABASE customers TO team;
- C: GRANT USAGE ON CATALOG team TO customers;
- D: GRANT CREATE ON DATABASE team TO customers;
- E: GRANT USAGE ON DATABASE customers TO team;
answer?
Answer: E Answer_ET: E Community answer E (77%) A (18%) 5% Discussion
Comment 864087 by Data_4ever
- Upvotes: 14
Selected Answer: E E is the correct answer.
Comment 1094863 by nedlo
- Upvotes: 7
Selected Answer: E GRANT USAGE, answer E is correct. I dont see such privilage as GRANT VIEW https://docs.databricks.com/en/sql/language-manual/sql-ref-privileges.html#privilege-types
Comment 1266896 by 7a22144
- Upvotes: 1
E is correct
A: GRANT VIEW ON CATALOG is not a valid syntax in many SQL environments for database-level access. B: GRANT CREATE ON DATABASE customers would grant the team the ability to create objects in the database, which is more than just viewing the existing tables. C: This command incorrectly reverses the order of the team and the customers database. D: This would grant creation privileges on the team’s database to the customers group, which is not relevant to the scenario.
Comment 1232859 by potaryxkug
- Upvotes: 2
E is correct
Comment 1175886 by rcpaudel
- Upvotes: 1
Selected Answer: E The question is asking “The team will need access to database customers in order to see what tables already exist.” The presumption is, hoever, the team already has usage privilege on the catalog containing the database.
Comment 1047395 by kishanu
- Upvotes: 4
Selected Answer: E Customers is a Database and not a catalog. The three-space naming convention has Catalog at the top level(catalog.database(schema).table). So granting a usage on catalog will expose other objects.
Comment 1040539 by J_1_2
- Upvotes: 1
Selected Answer: E Option A, “GRANT VIEW ON CATALOG customers TO team,” grants the privilege to view the catalog but not access the database’s tables, so it might not fulfill the requirement of seeing the existing tables in the database. So answer is E
Comment 1025303 by tocs
- Upvotes: 3
E. It can NOT be A. You can GRANT SELECT, but you cannot GRANT VIEW. VIEW is a securable OBJECT and not a PRIVILEGE TYPE, so you cannot grant it. See also https://learn.microsoft.com/en-us/azure/databricks/data-governance/unity-catalog/manage-privileges/privileges
Comment 1004918 by Nina0609
- Upvotes: 2
It’s A…I got 100% on the Data Governance section…it’s A
Comment 998018 by vctrhugo
- Upvotes: 1
Selected Answer: A A. GRANT VIEW ON CATALOG customers TO team;
To grant the new data engineering team the necessary permission to view the tables that exist in the “customers” database, you can use the GRANT VIEW ON CATALOG command as shown in option A. This command allows the team to see the metadata and information about the tables in the specified catalog or database, which is what you want in this case.
Option B grants the CREATE privilege on the “customers” database to the team, which is not necessary for simply viewing existing tables.
Option C and Option D have the syntax reversed, attempting to grant permissions from the team to the “customers” database, which is not the desired action.
Option E grants USAGE privilege on the “customers” database to the team, which allows them to use the database but may not provide the necessary view permissions to see existing tables.
Comment 985703 by AndreFR
- Upvotes: 2
Selected Answer: B SOURCE : https://docs.databricks.com/en/sql/language-manual/security-grant.html
The perfect answer would be : GRANT SHOW METADATA ON DATABASE customers TO team But because, it is not suggested, we need to find an impertect answer allowing listing tables on database customers for project team’s group : team
A. GRANT VIEW ON CATALOG customers TO team — Incorrect : “GRANT VIEW” does not exist B. GRANT CREATE ON DATABASE customers TO team — Correct : only possible answer by elimitation. C. GRANT USAGE ON CATALOG team TO customers — Incorrect : “GRANT USAGE” does not allow listing tables D. GRANT CREATE ON DATABASE team TO customers — Incorrect : “team” and “customers” are inverted E. GRANT USAGE ON DATABASE customers TO team — Incorrect : “GRANT USAGE” does not allow listing tables
Comment 962585 by Office2022
- Upvotes: 2
The correct answer is E. GRANT ALL PRIVILEGES ON DATABASE customers TO team;
The GRANT statement is used to grant privileges on a database, table, or view to a user or role. The ALL PRIVILEGES option grants all possible privileges on the specified object, such as CREATE, SELECT, MODIFY, and USAGE. The syntax of the GRANT statement is:
GRANT privilege_type ON object TO user_or_role;
Therefore, to grant full permissions on the database customers to the new data engineering team, the command should be:
GRANT ALL PRIVILEGES ON DATABASE customers TO team;
Option A is incorrect because it only grants the USAGE privilege, which allows the team to access the database but not to create or modify any tables or views in it.
Comment 946864 by Atnafu
- Upvotes: 1
E The GRANT USAGE ON DATABASE command grants the USAGE privilege on the specified database to the specified group. The USAGE privilege allows the group to see the tables that exist in the database, but it does not allow them to do anything else with the database.
The other commands are incorrect. The GRANT VIEW ON CATALOG command grants the VIEW privilege on the specified catalog to the specified group. The CREATE privilege allows the group to create new tables in the database. The USAGE privilege on the CATALOG does not exist.
Comment 940064 by clownfishman
- Upvotes: 2
The correct is GRANT both “USAGE” and “SELECT” on DATABASE CUSTOMERS TO TEAMS
Comment 912099 by chays
- Upvotes: 1
Selected Answer: E e is the right answer
Comment 896670 by prasioso
- Upvotes: 2
Selected Answer: E Think the Answer is E. The privilege types are CREATE, MODIFY, READ_METADATA, SELECT and USAGE. There is no such thing as GRANT VIEW. (it can however be GRANT
ON VIEW TO ). For our use case we want to GRANT USAGE for reading the Database. C has wrong syntax. Comment 894309 by Bob123456
- Upvotes: 1
option A is correct .
Question says that “The team will need access to database customers in order to see what tables already exist” this looks like they need view access
Comment 891345 by chandra_157_447
- Upvotes: 2
https://learn.microsoft.com/en-us/azure/databricks/sql/language-manual/sql-ref-privileges-hms In this link you can see that E is the correct answer, as there is no
VIEWprevilage, basically view previlage isSELECTpreveliage. Then why will we have a VIEW previlage?, just think on process of elimination as well when answering such questions.Comment 888006 by Majjjj
- Upvotes: 1
A: In Databricks, the “GRANT VIEW ON CATALOG” command is used to grant permission to a user or group to view metadata in the catalog. The catalog in Databricks is a metadata management service that provides information about the data and other resources that are available within a Databricks workspace.
When a user is granted the “VIEW ON CATALOG” permission, they are able to view information about databases, tables, and other resources that are available within the Databricks workspace. This information can be useful for understanding the structure and relationships of data within the workspace. After the permission has been granted, the user will be able to view metadata in the catalog by running catalog commands, such as “SHOW DATABASES” or “DESCRIBE TABLE”. Note that granting the “VIEW ON CATALOG” permission does not allow the user to modify or delete metadata in the catalog, only view it.
Comment 887221 by pargit35
- Upvotes: 1
i think e is the right answer
Comment 882539 by Tickxit
- Upvotes: 1
I don’t see GRANT USAGE or GRANT VIEW in the docs? Can someone provide a doc link
Comment 867561 by TC007
- Upvotes: 3
Selected Answer: A A: GRANT VIEW ON CATALOG customers TO team;
The VIEW privilege allows a user or group to see metadata, including the existing tables in the specified database. By granting the VIEW privilege on the CATALOG to the new team, they will be able to see what tables already exist in the customers database.
Comment 858909 by XiltroX
- Upvotes: 3
Selected Answer: A E is not the right answer. The correct answer is A. There is no such thing as DATABASE as a permission object in a GRANT statement so options B, D and E are automatically invalid. Which leaves us with A and C. If you look at Databricks documentation, the USAGE permission does absolutely nothing. So the final correct answer is A. Good luck everyone.