Advanced Snowflake test (Advanced)
40 questions · 40 minutes · Free
Query tuning, access control, data sharing, cost control and Snowpark.
Take the Advanced Snowflake test
What it covers
- Snowflake query performance
- Snowflake role-based access
- Snowflake secure data sharing
- Snowflake cost control
- Snowpark
Interview format
- Questions: 40 questions — 24 multiple choice, 12 multi-answer, 4 predict-the-output
- Time: 40 minutes, timed from the first question
- Difficulty: Advanced
- Skill area: Data
- Price: Free
Earn a certificate
The Advanced Snowflake test is one of the 8 tests of the Cloud Data Engineer: Advanced learning path. Pass it and the other 7 tests at 70% or more and readyforhires issues you a verifiable certificate in your name, with its own code and verify link to share or add to LinkedIn.
Sample questions
5 sample questions from the Advanced Snowflake test, with the answers. Samples are taken out of the live test, so you will not meet these when you sit it.
A data provider has created a share and granted SELECT on all tables in a schema to a consumer role. The consumer account has been granted this role, but is not able to access the shared data. What is the most likely cause of the issue?
- The consumer account will have full access to the shared data because the SELECT privilege on the tables is sufficient.
- The consumer account will not have access to the shared data because the role granted to the consumer does not have USAGE on the database and schema.
- The consumer account will have access to the shared data because the shared data is read-only and does not require USAGE on the database and schema.
- The consumer account will have access to the shared data because the share is configured to auto-grant USAGE on the database and schema.
Answer: B. The consumer account will not have access to the shared data because the role granted to the consumer does not have USAGE on the database and schema.
In Snowflake secure data sharing, the provider must grant USAGE on the database and schema to the share, and the consumer account must have the appropriate roles with USAGE and SELECT privileges. If a role is granted only SELECT on the tables but not USAGE on the database or schema, the consumer will not be able to access the shared data.
Which approach best aligns with Snowpark security best practices when comparing it with an alternative method for processing data in Snowflake?
- Use Snowpark Python UDFs with secure sandboxing and avoid exposing sensitive logic in shared views.
- Expose all logic in shared views for transparency, as Snowflake ensures data isolation automatically.
- Use regular Python scripts for all data processing, as they are more flexible and easier to debug.
- Allow external users to run Python scripts directly on Snowflake's compute resources for faster processing.
Answer: A. Use Snowpark Python UDFs with secure sandboxing and avoid exposing sensitive logic in shared views.
Snowpark Python UDFs execute in a secure sandbox, ensuring data isolation and protection. Sensitive logic should not be exposed in shared views, as this could lead to data leakage. In contrast, using regular Python scripts outside of Snowpark may not provide the same level of security, as they lack the built-in sandboxing and isolation mechanisms of Snowflake's environment.
What is the correct behavior of the result cache in Snowflake?
- The result cache expires after 24 hours and is automatically cleared.
- The result cache requires manual intervention to clear.
- The result cache clears immediately when a warehouse is suspended.
- The result cache size depends on the warehouse size.
Answer: A. The result cache expires after 24 hours and is automatically cleared.
The result cache in Snowflake is designed to store query results for up to 24 hours. If the query text and data remain unchanged, the cached result is reused without requiring a warehouse to be active. However, after 24 hours, the result cache is automatically cleared, ensuring that outdated or stale results are not used. Other options are incorrect because the cache does not clear immediately upon warehouse suspension, does not rely on warehouse size, and does not require manual intervention to clear.
Which of the following statements accurately describes Snowflake's support for data sharing with private links?
- Snowflake does not support private links for data sharing; instead, it relies on secure data sharing through the Snowflake platform, which allows sharing across accounts and cloud providers without requiring private links.
- Snowflake supports private links for data sharing, but they are only available for enterprise customers.
- Snowflake supports private links for data sharing, but they require additional configuration and are not recommended for most use cases.
- Snowflake supports private links for data sharing, but only within the same cloud provider.
Answer: A. Snowflake does not support private links for data sharing; instead, it relies on secure data sharing through the Snowflake platform, which allows sharing across accounts and cloud providers without requiring private links.
Snowflake provides secure data sharing through its built-in sharing capabilities, which allow data to be shared across accounts and cloud providers without the need for private links. Private links are not a supported method for data sharing in Snowflake. This is a common misconception, as Snowflake abstracts the network layer and provides secure, encrypted sharing without requiring direct network connectivity between the provider and consumer accounts.
What is the correct comparison between Snowpark Python UDF registration and regular Python functions in terms of execution and integration with Snowflake?
- Snowpark Python UDFs are registered using the `@udf` decorator and executed in Snowflake's secure sandbox, whereas regular Python functions are executed on the client side and not pushed down to Snowflake as SQL.
- Snowpark Python UDFs are executed on the client side and not pushed down to Snowflake as SQL, whereas regular Python functions are executed in Snowflake's secure sandbox.
- Snowpark Python UDFs are registered using the `@udf` decorator and executed in Snowflake's secure sandbox, whereas regular Python functions are executed in the Snowflake cloud service but not pushed down to Snowflake as SQL.
- Snowpark Python UDFs are registered using the `@udf` decorator and executed in Snowflake's secure sandbox, whereas regular Python functions are executed in Snowflake's secure sandbox as well.
Answer: A. Snowpark Python UDFs are registered using the `@udf` decorator and executed in Snowflake's secure sandbox, whereas regular Python functions are executed on the client side and not pushed down to Snowflake as SQL.
Snowpark Python UDFs are specifically designed to be pushed down to Snowflake for execution within the secure sandbox, whereas regular Python functions are executed locally on the client side and are not integrated with Snowflake's query execution engine.
Frequently asked questions
- How many questions are in the Advanced Snowflake test?
- 40 questions (24 multiple choice, 12 multi-answer, 4 predict-the-output), with 40 minutes to answer them.
- What does the Advanced Snowflake test cover?
- Snowflake query performance, Snowflake role-based access, Snowflake secure data sharing, Snowflake cost control, Snowpark.
- Is the Advanced Snowflake test free?
- Yes. It is free to take with a readyforhires account.
- What level is the Advanced Snowflake test?
- Advanced, in Data.