Courseiva

SnowPro Advanced: Architect (ARA-C01) — Questions 1–75

209 questions total · 3pages · All types, answers revealed

Page 1 of 3

Page 2
1
Multi-Selecthard

Which TWO of the following are common indicators that a query is poorly optimized and requires tuning?

Select 2 answers
A.High remote disk spilling metrics.
B.High query result cache hit rate.
C.Low partition pruning efficiency.
D.Query completes in under 500 milliseconds.
E.Warehouse auto-resume triggers.
AnswersA, C

Remote disk spilling indicates that the query has exhausted its local compute memory and is relying on remote storage, which is much slower. This is a clear indicator that the query needs more resources or better optimization to ensure operations stay within the faster, local memory space.

Why this answer

High 'Remote Disk Spilling' and low partition pruning efficiency are classic indicators of poor performance. Spilling suggests that memory is insufficient for the data volume, while low pruning indicates that the query is forced to scan a large portion of the table, often due to missing clustering keys or inefficient filter predicates. Both issues are easily detectable via the Query Profile.

Exam trap

Candidates often look only at execution duration, ignoring core underlying hardware indicators like disk spilling and poor pruning efficiency.

2
MCQmedium

An architect is configuring a Snowflake account to support a workload that requires reading data from an external Apache Iceberg table stored in an external cloud storage location. The architect wants to ensure that queries against the Iceberg table can leverage Snowflake's compute and caching. Which Snowflake feature should the architect use?

A.Secure views
B.Iceberg tables
C.External tables
D.External stages
AnswerB

Snowflake Iceberg tables provide native support for Apache Iceberg, allowing Snowflake to read and write Iceberg data stored externally while leveraging Snowflake's compute and caching. They support ACID transactions, schema evolution, and time travel. This is the optimal feature for querying external Iceberg data with Snowflake's performance benefits.

Why this answer

Snowflake Iceberg tables enable native integration with Apache Iceberg, allowing Snowflake to query and write to external Iceberg data using its compute and caching. This feature supports ACID transactions and schema evolution, making it ideal for lakehouse architectures. External tables and stages do not provide the same level of integration.

Exam trap

The trap here is equating external tables with Iceberg tables; external tables are for generic external files, while Iceberg tables provide full Iceberg semantics and performance benefits.

3
MCQmedium

An architect notices a large table is frequently queried using a range filter on a timestamp column. The table is currently clustered by a high-cardinality ID column. What is the most efficient way to improve query performance?

A.Add a search optimization service index on the timestamp column.
B.Increase the warehouse size to handle the large table scan.
C.Define a clustering key on the timestamp column.
D.Convert the table to a temporary table to reduce metadata overhead.
AnswerC

Defining a clustering key on the timestamp column allows Snowflake to organize data into micro-partitions based on time ranges. This enables partition pruning, where the engine skips partitions that fall outside the query range. This significantly reduces data retrieval time and improves overall performance for time-series analytical workloads.

Why this answer

Clustering by a timestamp column significantly improves range query performance by physically organizing data according to the filter criteria. Snowflake's automatic clustering service then maintains this order as DML operations occur. This reduces micro-partition scanning during query execution, minimizing I/O overhead.

Proper clustering is essential for large datasets where full table scans lead to excessive resource consumption and longer wait times for end users.

Exam trap

Candidates often assume that changing the clustering key is a destructive or complex operation, or they suggest creating a secondary index, which does not exist in Snowflake.

4
MCQmedium

An architect is designing a pipeline to transform data from a raw landing zone to a gold-tier reporting layer. The pipeline requires complex multi-table joins and aggregations that must stay updated within a five-minute latency window. Which Snowflake feature provides the most simplified declarative approach for this requirement?

A.Streams and Tasks with manual MERGE statements
B.Materialized Views on top of the raw tables
C.Dynamic Tables with a TARGET_LAG of '5 minutes'
D.External Tables with auto-refresh enabled
AnswerC

Dynamic Tables automatically track changes across multiple source tables and joins, refreshing only when necessary to meet the lag requirement. This declarative approach reduces the need for complex merge logic and manual scheduling, significantly simplifying the architecture for continuous data integration and business logic application.

Why this answer

Dynamic Tables simplify the declarative pipeline process by automatically managing refreshes based on a specified target lag. Unlike Streams and Tasks, which require imperative logic and manual scheduling, Dynamic Tables optimize for the desired state of data, making them ideal for complex transformations where managing manual dependencies becomes a significant operational burden for architects.

Exam trap

Candidates often confuse Dynamic Tables with Streams and Tasks, incorrectly choosing imperative orchestration tools when the question explicitly asks for a simplified, declarative, and automated approach for data pipelines.

5
MCQhard

An architect is investigating a performance regression in a query that previously ran quickly. The query involves a join between a large fact table and a small dimension table. The query profile shows a significant amount of time spent in the 'Join' operator, with many rows being processed. Which of the following is the most likely cause of the performance degradation?

A.The warehouse size was reduced, causing less memory for join operations.
B.Statistics on the fact table are stale, leading to a poor join order.
C.The small dimension table has grown significantly and is no longer suitable for a broadcast join.
D.The fact table has been clustered on a different column, causing poor pruning.
AnswerC

If the dimension table has grown, the optimizer may no longer choose a broadcast join, which is efficient for small tables. Instead, it might perform a hash join that requires shuffling the large fact table, leading to increased time in the Join operator. This is a common cause of performance regression in such scenarios.

Why this answer

When a small dimension table grows, it may exceed the threshold for a broadcast join, causing the optimizer to switch to a hash join that shuffles the large fact table. This increases data movement and join processing time. The other options would typically manifest in different operators or with additional symptoms like spills.

Exam trap

The trap here is assuming that join performance issues are always due to warehouse size or statistics, when a change in table size can alter the join strategy and cause shuffling.

6
MCQmedium

A Snowflake architect is designing a solution where external users need to access specific data in a Snowflake database without having Snowflake accounts. They want to provide read-only access to a few tables and ensure that the external users cannot see any other data. Which Snowflake feature should they use?

A.Secure Data Sharing
B.External Tables
C.Materialized Views
D.Snowflake Reader Accounts
AnswerD

Reader Accounts are a feature of Secure Data Sharing that allow providers to create accounts for consumers who do not have Snowflake accounts. The provider manages the reader account and can grant read-only access to specific shares. This enables external users to query shared data without needing their own Snowflake account.

Why this answer

Reader Accounts are designed for sharing data with consumers who do not have Snowflake accounts. The provider creates and manages the reader account, and can grant access to specific shares, ensuring read-only access to the desired tables. This meets the requirement for external users to access data without having their own Snowflake accounts.

Exam trap

The trap here is confusing Secure Data Sharing with Reader Accounts; Secure Data Sharing requires the consumer to have a Snowflake account, while Reader Accounts are for those without.

7
MCQhard

Which of the following describes the correct behavior of a Masking Policy applied to a column that is also referenced in a Row Access Policy?

A.The Masking Policy is evaluated first.
B.The Row Access Policy is evaluated first.
C.Only the Masking Policy is applied.
D.Only the Row Access Policy is applied.
AnswerB

Snowflake evaluates the Row Access Policy first to determine the rows that the user is permitted to see. Once the result set is filtered at the row level, the Masking Policies are applied to the columns to ensure that sensitive data is appropriately obfuscated for the current user's session.

Why this answer

Snowflake enforces policies in a specific sequence. When both Row Access and Masking Policies are present, the Row Access Policy is evaluated first to determine the visible rows, and then the Masking Policy is applied to the visible data. This ensures that the security constraints are applied logically and cumulatively.

This behavior is crucial for preventing information leakage, ensuring that users cannot bypass row-level filters by using column-level masking logic or vice versa, providing a consistent security model.

Exam trap

Candidates often assume the masking policy applies first to hide data before row access evaluation, failing to realize Snowflake evaluates the row access policy first to determine which rows are visible.

8
MCQmedium

An organization has a 500TB table containing IoT sensor data. Users frequently run point-lookup queries filtering by a specific Sensor_ID, which has very high cardinality. The table is currently clustered by Event_Timestamp. Performance for these Sensor_ID lookups is poor. Which architectural change would provide the most cost-effective performance improvement for these specific queries?

A.Re-cluster the table using Sensor_ID as the primary clustering key.
B.Enable the Search Optimization Service for the Sensor_ID column.
C.Create a Materialized View that filters for the most active Sensor_IDs.
D.Increase the Virtual Warehouse size to 4X-Large to improve scanning speed.
AnswerB

Enabling the Search Optimization Service creates a persistent search access path that allows the query optimizer to bypass scanning irrelevant micro-partitions. This is specifically designed for high-cardinality columns and point lookups, providing significantly faster response times for filtered queries without the need to manually manage or re-sort the underlying table data.

Why this answer

The Search Optimization Service is a background process that speeds up point lookup queries by creating an optimized data structure. Unlike clustering, which reorders the actual data, this service tracks values across micro-partitions. It is ideal for high-cardinality columns and queries using equality predicates or specific functions like LIKE, where traditional pruning methods might scan too many partitions.

Exam trap

Candidates frequently recommend changing the clustering key for high-cardinality point lookups, failing to realize that clustering is ineffective for high-cardinality equality searches which instead require the Search Optimization Service.

9
MCQmedium

A data engineer is designing a batch transformation pipeline using Dynamic Tables. The source table is updated hourly, and the target Dynamic Table must reflect changes within 30 minutes. The transformation involves a complex join and aggregation. Which approach best meets the freshness requirement while minimizing cost?

A.Set the target lag to 30 minutes and use a dedicated virtual warehouse sized as XSMALL.
B.Set the target lag to 30 minutes and use a dedicated virtual warehouse sized based on the complexity of the transformation, monitoring and adjusting as needed.
C.Set the target lag to 30 minutes and use a multi-cluster warehouse with a minimum of 1 and maximum of 3 clusters.
D.Set the target lag to 30 minutes and use a dedicated virtual warehouse sized as LARGE.
AnswerB

The target lag defines the maximum acceptable delay. The warehouse size should be chosen to ensure the refresh completes within that lag. Starting with a moderate size and monitoring refresh duration allows you to adjust up or down, balancing performance and cost. This iterative approach is recommended for Dynamic Tables because refresh time depends on data volume and transformation complexity.

Why this answer

Dynamic Tables refresh automatically based on the target lag. The warehouse size must be adequate to complete the refresh within the lag. Starting with a size based on transformation complexity and monitoring allows tuning to meet freshness without overspending.

This approach balances performance and cost effectively.

Exam trap

The trap here is assuming that a larger warehouse or multi-cluster warehouse is always better; the key is to match warehouse size to the refresh workload and monitor to adjust.

10
MCQeasy

A company wants to allow their data analysts to query data in a specific database but prevent them from viewing the underlying table definitions. Which Snowflake feature should the architect recommend?

A.Object tagging
B.Column-level security
C.Secure views
D.Row access policies
AnswerC

Secure views are designed to hide the view definition and the underlying query logic from users who do not have the necessary privileges. When a user queries a secure view, they can access the data but cannot see the view's SQL definition or the base tables. This directly meets the requirement of allowing queries while preventing viewing of table definitions, as the view abstracts the underlying schema.

Why this answer

Secure views hide both the view definition and the underlying table definitions from users who do not have the necessary privileges. When analysts query a secure view, they can retrieve data without seeing the SQL or the base tables. This makes secure views the appropriate feature to meet the requirement of querying data while preventing viewing of table definitions.

Exam trap

The trap here is confusing data filtering features like row access policies or masking with the ability to hide object definitions, which is specific to secure views.

11
MCQmedium

An organization requires a storage solution for semi-structured data that must be accessible by multiple independent compute clusters without data duplication. Which Snowflake architectural component facilitates this requirement?

A.Virtual Warehouses
B.Micro-partitions
C.The Cloud Services Layer
D.The Centralized Storage Layer
AnswerD

The centralized storage layer stores all data in a single, durable cloud storage bucket. Because it is decoupled from compute, any number of virtual warehouses can mount the same data simultaneously. This provides a single source of truth without the overhead or latency of duplicating data across compute clusters.

Why this answer

Snowflake utilizes a decoupled architecture where the centralized storage layer is physically separated from independent compute clusters. This allows multiple virtual warehouses to concurrently access the same underlying data without requiring data movement or replication. This architecture is vital for minimizing storage costs and ensuring consistency across diverse analytical workloads, such as ETL pipelines and ad-hoc BI queries sharing a single source of truth.

Exam trap

Candidates often confuse the 'Storage Layer' with the 'Cloud Services Layer'. They incorrectly assume that because Snowflake is a cloud service, the storage logic resides within the Cloud Services layer instead of the decoupled storage.

12
MCQhard

A Snowflake architect is implementing a Type-2 slowly changing dimension (SCD2) on the CUSTOMER_DIM table using a Stream on the source table CUSTOMER_RAW and a task that runs every 5 minutes. The task currently reads the stream and applies a MERGE that only handles inserts and updates. Historical versions are lost. The architect must preserve prior attribute values for changed customers and mark each row with effective and end timestamps. Which approach should the architect use to meet this requirement?

A.Add a row-version column to CUSTOMER_DIM and use a MERGE with a WHEN MATCHED THEN UPDATE clause that increments the version and overwrites the attribute values in place.
B.Configure the CUSTOMER_DIM table with CHANGE_TRACKING = TRUE and query the table's change tracking metadata to reconstruct prior versions on demand.
C.Replace the task with a Materialized View over CUSTOMER_RAW that automatically retains a copy of each historical version whenever the base table changes.
D.Use a MERGE that, for matched rows whose tracked attributes changed, sets the end timestamp and an is_current flag to false on the existing row, and inserts a new row with a new effective timestamp and is_current true.
AnswerD

This is the standard SCD2 pattern in Snowflake: the MERGE detects attribute changes from the stream, expires the current row by setting its end timestamp and clearing the current flag, and inserts a fresh version with a new effective date. It preserves full history, keeps exactly one current row per business key, and can be driven entirely by the stream's change metadata inside a scheduled task.

Why this answer

SCD2 requires that a changed business key produce a new row while the previous row is expired rather than overwritten. A MERGE driven by the stream can detect changed attributes, close the existing current row with an end timestamp and a false current flag, and insert a new current row with a new effective timestamp. This preserves complete history and keeps exactly one active version per key.

Exam trap

The trap here is assuming that adding a version counter and updating values in place preserves history, when in fact overwriting the attributes destroys the prior versions that SCD2 must retain.

13
Multi-Selecthard

Under which TWO scenarios should an architect choose to increase the warehouse size (Vertical Scaling) rather than increasing the maximum number of clusters (Horizontal Scaling)?

Select 2 answers
A.A single complex query is spilling significant amounts of data to remote storage.
B.The number of concurrent users has increased from 10 to 100.
C.A query involving multiple large table joins is taking too long to execute.
D.The organization wants to reduce the time it takes for a warehouse to auto-suspend.
E.The dashboard queries are small but are frequently queuing behind each other.
AnswersA, C

When a query spills to remote storage, it means the local memory and SSD on the current warehouse nodes are exhausted. Increasing the warehouse size provides more resources per node, allowing the query to keep more data in memory or local disk, which significantly improves performance compared to remote spilling.

Why this answer

Vertical scaling (larger warehouse) provides more memory and local storage per node, which is essential for complex queries that perform large joins or aggregations and might otherwise spill to disk. Horizontal scaling (multi-cluster) is specifically designed to handle high concurrency, where many different users are submitting queries at the same time.

Exam trap

Candidates often choose horizontal scaling assuming it solves all performance issues, confusing high user concurrency with single-query resource bottlenecks that actually require vertical scaling memory upgrades.

14
MCQeasy

A startup is preparing for its first SOC 2 audit. The auditor asks how the company prevents a compromised employee credential from being used from an unknown location while still allowing legitimate travel. The architect has already created a network policy listing the corporate ranges. What should the architect do to apply this control account-wide?

A.Assign the network policy to each user individually using ALTER USER ... SET NETWORK_POLICY so that only named users are restricted.
B.Create a share that exposes the network policy to the account and grant it to PUBLIC so all roles inherit the restriction.
C.Enable the account parameter REQUIRE_NETWORK_POLICY and rely on Snowflake to block sessions that lack a matching policy.
D.Set the network policy as the account-level policy using ALTER ACCOUNT SET NETWORK_POLICY so it applies to all users by default.
AnswerD

An account-level network policy applies to every user unless a user-level policy overrides it. Setting it with ALTER ACCOUNT establishes the default allowlist of corporate ranges, blocking access from unknown locations. This gives the account-wide control the auditor expects while still permitting targeted overrides where justified.

Why this answer

Applying a network policy at the account level makes it the default for all users, restricting connections to the listed corporate ranges and blocking unknown locations. User-level policies can still override it for specific cases such as traveling executives. Per-user assignment, sharing, or invented parameters do not deliver the account-wide default control the auditor is asking about.

Exam trap

The trap here is thinking network policies must be granted or shared, when they are simply attached at the account, user, or role level.

15
Multi-Selectmedium

When creating a Zero-copy Clone of a production database to a development environment, which THREE statements accurately describe the behavior? (Choose THREE)

Select 3 answers
A.The clone does not incur additional storage costs until the data in the clone or source is modified.
B.The operation is nearly instantaneous as it only involves metadata manipulation.
C.Changes made to the production database are automatically reflected in the development clone.
D.Cloning a database also clones the associated Virtual Warehouses used by that database.
E.The clone has its own independent Time Travel retention period and history.
AnswersA, B, E

Because cloning only duplicates metadata pointers to the existing micro-partitions, no new data is written initially. Only when rows are updated or deleted in either the source or the clone do new micro-partitions get created, at which point the account begins to incur storage charges for the unique data.

Why this answer

Zero-copy cloning is a powerful architectural feature that duplicates the metadata of an object without copying the underlying data. This makes the operation nearly instantaneous and cost-effective. However, the clone is an independent object; changes in the source don't reflect in the clone, and the clone starts with its own Time Travel history.

Exam trap

Candidates often assume that a clone shares the same Time Travel history as the source. In reality, the clone is a distinct object that begins its own unique history from the moment of creation.

16
Multi-Selectmedium

An architect needs to optimize point-lookup queries on a VARIANT column that stores JSON data. Which TWO methods are most effective for improving performance for these types of queries?

Select 2 answers
A.Enable Search Optimization on the VARIANT column.
B.Flatten the entire JSON structure into a separate table every hour.
C.Create a Materialized View that extracts and casts the most-queried fields.
D.Use the FLATTEN function in every query to access the data.
E.Convert the JSON data into a large STRING column.
AnswersA, C

Snowflake supports Search Optimization for VARIANT columns. This allows the service to index the fields within the JSON structure, enabling fast point lookups for specific key-value pairs without requiring a full scan of the table or the manual extraction of fields into separate columns.

Why this answer

Optimizing semi-structured data involves either making the data look like structured data through views/clustering or using specialized services. Since point lookups are the target, the Search Optimization Service on VARIANT columns or extracting common fields into their own clustered columns are the most effective strategies for performance.

Exam trap

Candidates frequently suggest standard clustering keys on raw VARIANT columns without realizing Snowflake requires the Search Optimization Service or extracted columns for performance.

17
MCQmedium

Which object acts as the logical container for storing data in Snowflake, and how is it related to the underlying physical storage?

A.A Schema, which manages physical disk allocation.
B.A Table, which maps directly to a specific physical file on disk.
C.A Database, which organizes schemas, tables, and views.
D.A Warehouse, which handles the persistent storage of data.
AnswerC

A database is the top-level logical container in Snowflake that houses schemas and their contained objects. It represents the logical boundary for data, while the actual physical storage is managed by Snowflake as immutable micro-partitions, completely abstracted from the user's view of the database structure.

Why this answer

A database is the logical container in Snowflake. Snowflake's architecture separates the logical database objects (tables/views) from the physical storage layer (micro-partitions in cloud storage). This abstraction is central to Snowflake's design, allowing users to interact with relational constructs while the engine handles the complexities of storage management, encryption, and partitioning without requiring manual maintenance from the end-user.

Exam trap

Candidates often confuse logical containers with physical storage units, assuming that databases or schemas directly dictate how data is physically laid out on disk rather than relying on automated micro-partitions.

18
MCQhard

A company is using Search Optimization Service (SOS) to speed up point lookups. They notice that after adding SOS to a column, the storage costs have increased significantly. Which architectural factor most likely contributes to this cost increase?

A.The SOS service creates a full physical copy of the table in a separate region.
B.The maintenance of the search access path for a high-churn table with many updates.
C.The SOS service requires a dedicated X-Large virtual warehouse to be running 24/7.
D.SOS automatically converts the table from columnar storage to a row-based format.
AnswerB

In a high-churn table, every update or delete operation requires the Search Optimization Service to update its auxiliary data structures. This background maintenance is a serverless process that consumes credits and generates new storage versions. Architects must carefully weigh the performance benefits of SOS against the maintenance costs in frequently changing tables.

Why this answer

Search Optimization Service works by creating and maintaining an auxiliary data structure (a search access path) that tracks the values in the optimized columns. This structure requires additional storage. More importantly, when data in the table changes, this auxiliary structure must be updated, which consumes serverless compute resources and creates new versions of the search data, increasing storage and maintenance costs.

Exam trap

Candidates often overlook the relationship between data churn and SOS costs, assuming that SOS only costs money for the initial index creation rather than the ongoing maintenance required for every update.

19
MCQhard

When designing an ELT pipeline using Snowflake, why is it recommended to perform transformations inside Snowflake rather than using an external ETL tool?

A.External ETL tools cannot connect to Snowflake via standard interfaces.
B.It keeps data within the Snowflake ecosystem, reducing latency and egress costs.
C.External ETL tools are unable to handle complex SQL logic.
D.Snowflake does not support programmatic data manipulation.
AnswerB

Moving data out of Snowflake for transformation incurs egress costs and increases latency. By performing transformations inside Snowflake using its MPP engine, data stays local to the storage, maximizing performance and significantly lowering total cost of ownership by eliminating data movement between different compute environments.

Why this answer

Snowflake's architecture separates storage and compute, allowing it to act as a highly scalable transformation engine. By performing ELT (Extract, Load, Transform), engineers ingest raw data first, then use SQL to transform it. This approach leverages Snowflake's massively parallel processing (MPP) power, avoids unnecessary data egress costs, and keeps transformation logic centralized within the database, which simplifies auditing and improves overall data lineage and pipeline performance.

Exam trap

Candidates often prioritize external tools for familiarity, failing to account for the significant performance penalty and cost associated with egressing data out of Snowflake for transformation and then reloading it.

20
MCQhard

A healthcare organization uses Snowflake to store sensitive patient data. They need to implement column-level security that allows users with the role 'DOCTOR' to see full patient IDs, while users with the role 'RESEARCHER' should see only the last four digits. The organization wants a centralized, reusable solution that can be applied to multiple columns across different tables. Which Snowflake feature should the architect use?

A.Row Access Policies that limit which rows are visible based on the user's role.
B.Dynamic Data Masking with a masking policy that checks the current role and applies the appropriate masking.
C.Object Tagging with a tag that indicates the sensitivity level, combined with a policy that enforces access.
D.Secure Views that filter the data based on the current role.
AnswerB

Dynamic Data Masking uses masking policies that can be attached to columns. The policy can evaluate the current role and conditionally mask the data. By creating a policy that returns the full value for the DOCTOR role and a masked value for others, the organization achieves column-level security. Masking policies are centralized and can be reused across multiple columns, satisfying the requirement for a reusable solution.

Why this answer

Dynamic Data Masking with a masking policy is the correct feature because it allows column-level masking based on the current role. The policy can be written to show full data to the DOCTOR role and masked data to others. Masking policies are centralized and can be applied to multiple columns, making them reusable.

Secure views, row access policies, and object tagging do not provide the required dynamic column-level masking.

Exam trap

The trap here is confusing column-level masking with row-level security or metadata tagging, when the requirement is specifically for dynamic masking of column values based on role.

21
MCQhard

An architect is designing a data pipeline that ingests JSON data into a Snowflake table with a VARIANT column. The pipeline uses Snowpipe for continuous ingestion. The architect notices that some JSON records contain nested arrays and occasionally exceed 16 MB in size. Which statement accurately describes a limitation or behavior the architect must consider?

A.The VARIANT data type has no size limit, but Snowpipe enforces a 16 MB limit per file.
B.The VARIANT data type can store up to 16 MB of uncompressed data per value, and exceeding this limit causes the load to fail with an error.
C.Snowpipe compresses JSON data, so the 16 MB limit applies to the compressed size, allowing larger uncompressed records.
D.Snowpipe automatically splits large JSON records larger than 16 MB into multiple VARIANT rows to comply with the size limit.
AnswerB

Snowflake's VARIANT type has a maximum size of 16 MB for uncompressed data. If a single JSON record exceeds this, the ingestion fails. Architects must ensure individual records are within this limit, possibly by splitting or aggregating differently. Snowpipe does not automatically handle oversized records, so validation and preprocessing are essential.

Why this answer

VARIANT columns in Snowflake have a strict 16 MB uncompressed size limit per value. When ingesting JSON via Snowpipe, if any single record exceeds this, the load fails. Architects must preprocess data to split or truncate large records.

Compression does not change the uncompressed size limit, and Snowpipe does not split records automatically.

Exam trap

The trap here is confusing file-level size limits with per-value VARIANT limits; Snowpipe can ingest large files, but individual VARIANT values must be within 16 MB uncompressed.

22
MCQmedium

A data architect is designing a multi-cluster warehouse strategy. They require the warehouse to automatically scale up if queueing persists while maintaining cost efficiency during periods of low activity. Which configuration best addresses these requirements?

A.Set MAX_CONCURRENCY_LEVEL to 1 and disable auto-suspend.
B.Set the warehouse to 'MAXIMIZED' mode with auto-suspend at 60 minutes.
C.Enable Auto-scale with MIN_CLUSTER_COUNT=1 and MAX_CLUSTER_COUNT=5, and set Auto-suspend to 60 seconds.
D.Increase warehouse size to 4XL and disable multi-cluster scaling.
AnswerC

This configuration enables horizontal scaling to address queueing while ensuring idle clusters are terminated promptly. Using a short 60-second auto-suspend window minimizes costs by ensuring that expensive compute resources are not held during periods of inactivity, providing an optimized balance of performance and fiscal responsibility.

Why this answer

Configuring 'Multi-cluster' with 'Auto-scale' mode allows Snowflake to spin up additional clusters to handle concurrency, preventing queueing. Setting the 'Auto-suspend' parameter to a short duration ensures compute resources are released when idle, directly controlling costs. This combination is the architectural standard for balancing high-concurrency demand spikes with efficient resource utilization in dynamic environments where workloads fluctuate significantly throughout the business day.

Exam trap

Many test-takers confuse scaling up (increasing warehouse size for complex queries) with scaling out (adding clusters for concurrency), selecting the wrong setting to handle continuous ingestion queueing spikes.

23
MCQmedium

An architect is trying to optimize a query that scans many small files. What is the most effective approach to improve performance?

A.Increase the warehouse size.
B.Use the SEARCH OPTIMIZATION service.
C.Consolidate the small files into larger files during the ingestion process.
D.Enable auto-clustering on the table.
AnswerC

Consolidating files ensures that each file is closer to the recommended size, which significantly reduces the metadata overhead for the query engine. This allows Snowflake to read data more efficiently, improving scan performance and reducing the time spent on overhead tasks instead of actual data processing.

Why this answer

Scanning many small files results in high metadata overhead and inefficient I/O. The most effective way to address this is to consolidate these small files into larger ones, which reduces the number of operations required and improves throughput. Snowflake's storage engine performs best when data is stored in optimally sized files, typically between 100MB and 250MB, minimizing the overhead of opening and reading many tiny files.

Exam trap

Candidates often incorrectly suggest increasing the warehouse size or using clustering keys to solve small file issues, failing to realize that metadata overhead must be resolved at the ingestion source level.

24
MCQmedium

A Snowflake architect is optimizing a virtual warehouse for a workload that consists of many small, concurrent queries with high concurrency requirements. The queries are simple and return small result sets. The architect wants to minimize queuing and ensure fast response times while controlling costs. Which warehouse configuration should the architect choose?

A.A multi-cluster warehouse with Economy scaling policy and a medium warehouse size.
B.A single-cluster warehouse with a small warehouse size and increased statement timeout.
C.A multi-cluster warehouse with Standard scaling policy and a small warehouse size.
D.A single-cluster warehouse with a large warehouse size.
AnswerC

A multi-cluster warehouse with Standard scaling policy automatically adds clusters when queries are queued, immediately reducing queuing for high concurrency. A small warehouse size is cost-effective for simple queries with small result sets. This configuration balances performance and cost by scaling out only when needed, making it ideal for many small, concurrent queries.

Why this answer

A multi-cluster warehouse with Standard scaling policy and a small warehouse size is optimal for many small, concurrent queries. Standard policy adds clusters immediately when queries are queued, reducing latency. Small size keeps costs low for simple queries.

This setup ensures high concurrency without over-provisioning compute resources.

Exam trap

The trap here is assuming that a larger single warehouse can handle high concurrency better, but concurrency is limited by the number of clusters, not just size.

25
MCQhard

A data architect is designing a table that will store 10TB of semi-structured JSON data in a VARIANT column. Queries frequently filter on specific JSON attributes using dot notation, such as data:customer_id::string. The architect wants to minimize query latency and storage costs. Which approach should the architect take?

A.Use a materialized view that pre-aggregates the JSON data by customer_id.
B.Extract frequently queried JSON attributes into separate relational columns and cluster on those columns.
C.Enable the Search Optimization Service on the VARIANT column to accelerate point lookups.
D.Store the JSON data in an external table and query it directly with Snowflake.
AnswerB

Extracting frequently accessed JSON attributes into native columns allows Snowflake to store them in a columnar format, enabling efficient pruning and compression. Clustering on those columns further improves pruning for filtered queries. This approach reduces the amount of data scanned and can lower storage costs because native columns are more efficient than VARIANT. It is the recommended best practice for performance and cost.

Why this answer

Extracting frequently queried JSON attributes into native columns and clustering on them allows Snowflake to prune micro-partitions efficiently, reducing the amount of data scanned. This improves query latency and can reduce storage costs because native columns are more compact than VARIANT. Other options either add overhead or do not address the need for efficient filtering on specific attributes.

Exam trap

The trap here is assuming that enabling Search Optimization Service on a VARIANT column is always the best way to accelerate JSON queries, overlooking its cost and limited applicability.

26
MCQmedium

What is the primary benefit of using Snowflake's Result Cache for repeated queries?

A.It eliminates the need for data loading processes.
B.It provides performance benefits by avoiding compute resource usage for identical queries.
C.It allows for cross-region replication of data.
D.It updates dynamically as base tables receive new data.
AnswerB

By returning results directly from the cache, Snowflake avoids executing the query on the warehouse. This eliminates compute costs and latency, providing an immediate response. This feature is highly efficient for workloads with high repetition, such as executive dashboards, where the same queries are executed multiple times within a day.

Why this answer

The Result Cache stores the output of query executions for 24 hours. If a subsequent query exactly matches a previous one and the underlying data has not changed, Snowflake returns the cached results immediately. This bypasses the compute layer entirely, saving costs and providing near-instant response times.

This is a critical architectural feature for optimizing workloads that involve repetitive dashboard refreshes or common reporting metrics that do not require constant re-computation.

Exam trap

Candidates often think the Result Cache is a form of local storage for table data, failing to distinguish it from the actual persistent storage or virtual warehouse cache.

27
MCQmedium

An architect is evaluating Snowflake's Virtual Warehouse architecture for a new workload that requires continuous, high-concurrency query execution with minimal latency. The workload consists of many small, short-running queries issued by hundreds of users simultaneously. Which configuration should the architect recommend to best meet these requirements?

A.Deploy a single multi-cluster warehouse with a minimum of 3 clusters and a maximum of 10 clusters, using STANDARD scaling policy.
B.Deploy a single large warehouse with a maximum cluster count of 1 and enable auto-suspend after 60 seconds.
C.Deploy a single multi-cluster warehouse with ECONOMY scaling policy and a maximum of 2 clusters.
D.Deploy multiple independent warehouses, each sized X-Small, and assign each user to a dedicated warehouse.
AnswerA

Multi-cluster warehouses with STANDARD scaling policy automatically add clusters when queries are queued and remove them when load decreases, directly addressing high-concurrency short queries. A minimum of 3 clusters ensures baseline capacity, while the maximum of 10 provides headroom for peak loads, minimizing latency without over-provisioning.

Why this answer

High-concurrency, short-running queries benefit from a multi-cluster warehouse with STANDARD scaling, which aggressively adds clusters to reduce queuing. A minimum of 3 clusters handles baseline concurrency, and a maximum of 10 allows scaling for peaks. ECONOMY scaling is more conservative and may introduce latency, while single-cluster or per-user warehouses do not scale as efficiently.

Exam trap

The trap here is assuming that a larger warehouse size or more warehouses per user solves concurrency, when the key is horizontal scaling via multi-cluster warehouses with the appropriate scaling policy.

28
MCQeasy

A data architect is designing a multi-tenant environment where each tenant has its own database. The architect wants to ensure that users from one tenant cannot access data from another tenant, even if they have the same role name. Which Snowflake feature should the architect use to isolate access?

A.Network policies
B.Separate accounts per tenant
C.Database roles
D.Secure views
AnswerB

Using separate Snowflake accounts for each tenant provides the strongest isolation because accounts are completely independent. There is no shared metadata or access control, so users in one account cannot access data in another. This is a common pattern for multi-tenant architectures requiring strict isolation.

Why this answer

For strict multi-tenant isolation, using separate Snowflake accounts per tenant is the most robust approach. Each account is a separate security and management domain, ensuring that users, roles, and data are completely isolated. This prevents any possibility of cross-tenant access through shared roles or objects.

Exam trap

The trap here is assuming that database roles or secure views alone can provide complete tenant isolation, when they only provide fine-grained access control within a shared account.

29
Multi-Selecthard

Which THREE of the following are valid methods for securing data in transit for connections to Snowflake?

Select 3 answers
A.Enforcing TLS 1.2+ for all client drivers.
B.Using Snowflake Private Link for private connectivity.
C.Implementing client-side data encryption with PGP.
D.Restricting access to approved IP addresses via Network Policies.
E.Enabling the Snowflake data sharing feature.
AnswersA, B, D

Snowflake requires TLS 1.2 for all encrypted communications. Ensuring that client drivers, connectors, and applications are configured to support this protocol is essential. It provides the necessary cryptographic handshake to verify the server's identity and ensure that the traffic between the client and Snowflake remains encrypted and tamper-proof throughout the transit.

Why this answer

Snowflake enforces TLS 1.2 or higher for all client connections. Securing data in transit is a non-negotiable requirement for compliance (e.g., HIPAA, SOC2). Architects must ensure that the client software and drivers are configured to use secure protocols, that private connectivity is utilized for sensitive environments, and that connections are validated against trusted sources, thereby mitigating the risk of man-in-the-middle attacks and data interception during transit.

Exam trap

Candidates often select incorrect options like 'Data Encryption at Rest' when the question specifically asks for 'data in transit'. They fail to distinguish between encryption methods for stored data versus network communication protocols.

30
MCQmedium

Refer to the exhibit. Based on the configuration provided, how will the multi-cluster warehouse behave when the query load increases?

A.A new cluster will start immediately as soon as a single query is queued.
B.The warehouse will scale up to an X-Large size to handle the increased load.
C.A second cluster will only start if the system estimates it will remain busy for 6 minutes.
D.All five clusters will start simultaneously when the first query is submitted to the warehouse.
AnswerC

The 'Economy' scaling policy specifically waits to spin up additional clusters until there is a consistent workload. It uses a heuristic to ensure that the cluster, once started, will be utilized effectively for at least six minutes, thereby avoiding the costs of frequently starting and stopping clusters for transient spikes.

Why this answer

The Economy scaling policy is designed to conserve credits by only starting a new cluster if Snowflake estimates there is enough concurrent load to keep the new cluster busy for at least six minutes. This contrasts with the Standard policy, which starts clusters immediately to minimize queuing, making Economy better for workloads where latency is less critical.

Exam trap

Test-takers often confuse Economy and Standard multi-cluster warehouse policies, incorrectly believing the Economy policy spins up additional clusters immediately when queues begin to form.

31
MCQmedium

Which system function should an architect use to evaluate the clustering health of a table and determine if the current clustering key is effectively organizing the data into distinct micro-partitions?

A.SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS
B.SYSTEM$CLUSTERING_DEPTH
C.SYSTEM$CLUSTERING_INFORMATION
D.SYSTEM$QUERY_PROFILE_ANALYZER
AnswerC

This is the correct function for analyzing clustering health. It returns a JSON object containing the total partition count, average depth, and a histogram of overlapping partitions. This data is essential for an architect to decide whether to add, change, or remove a clustering key to improve query performance.

Why this answer

The SYSTEM$CLUSTERING_INFORMATION function provides detailed metrics about a table's clustering, including the average clustering depth and the overlap between micro-partitions. A high clustering depth indicates that the clustering key is not effective or that the table has become disorganized over time, requiring re-clustering or a new key.

Exam trap

Candidates frequently suggest querying the metadata tables (like TABLE_STORAGE_METRICS) instead of using the dedicated system function, which provides a more direct calculation of clustering depth and overlap.

32
MCQeasy

Which statement accurately describes the characteristics of micro-partitions in Snowflake's architecture?

A.They are physical files that users must manually define using partition keys.
B.They are immutable files that are encrypted and stored in the storage layer.
C.They use a row-based storage format to optimize for high-frequency OLTP writes.
D.They are stored in the Cloud Services layer to allow for faster metadata access.
AnswerB

Micro-partitions are immutable, meaning they cannot be modified once written. When data is updated or deleted, Snowflake creates new versions of the partitions. These files are automatically encrypted at rest and stored in the cloud provider's object storage. This immutability is the foundation for Snowflake's data versioning capabilities.

Why this answer

Micro-partitions are the fundamental unit of storage in Snowflake. They are automatically created, immutable, and columnar in nature. This architecture enables Snowflake to perform efficient pruning and supports features like Time Travel and Zero-copy cloning.

Understanding micro-partitions is vital for understanding how Snowflake achieves high performance without requiring manual indexing or partitioning strategies.

Exam trap

Candidates frequently confuse micro-partitions with traditional database blocks or index pages, incorrectly assuming they are mutable and can be updated in place by the compute layer during DML operations.

33
MCQmedium

When designing a role hierarchy, what is the primary benefit of granting one role to another role instead of directly to users?

A.It increases query performance.
B.It enables automatic data encryption.
C.It simplifies privilege management through inheritance.
D.It bypasses the need for MFA.
AnswerC

Role inheritance allows privileges to flow from child roles to parent roles. This structure makes it much easier to manage complex access requirements, as you can define granular roles for specific tasks and bundle them into broader functional roles, drastically reducing the number of individual grants required per user.

Why this answer

Role inheritance simplifies privilege management by allowing an architect to create a logical hierarchy. When a parent role inherits a child role, it automatically gains all the child's privileges. This reduces administrative overhead, as permission changes only need to be made once at the child level to propagate upwards.

It also improves visibility and auditability, allowing for a clearer mapping between job functions and the access required to perform those functions efficiently across the organization.

Exam trap

Candidates think granting roles directly to individual users improves isolation, completely missing the administrative scaling benefits of role inheritance.

34
MCQeasy

A Snowflake architect is designing a multi-cluster warehouse to handle varying concurrency demands for a BI dashboard that experiences peak usage during business hours. The architect wants to ensure that queries are not queued and that the warehouse scales out automatically. Which configuration should the architect use?

A.Set the warehouse to multi-cluster mode with a minimum cluster count of 1 and maximum cluster count of 1.
B.Set the warehouse to multi-cluster mode with scaling policy set to STANDARD.
C.Set the warehouse to single-cluster mode with a larger warehouse size.
D.Set the warehouse to multi-cluster mode with scaling policy set to ECONOMY.
AnswerB

The STANDARD scaling policy starts additional clusters immediately when queries are queued, minimizing wait times. It is designed for high concurrency and ensures that queries are not queued by scaling out proactively. This meets the requirement of automatic scaling without queuing during peak usage.

Why this answer

To prevent queuing during peak concurrency, a multi-cluster warehouse with the STANDARD scaling policy is optimal. The STANDARD policy adds clusters immediately when queries are queued, ensuring low latency. ECONOMY may delay scaling, and single-cluster or fixed cluster count configurations cannot scale out dynamically.

Exam trap

The trap here is assuming that a larger warehouse size solves concurrency issues, when actually multi-cluster scaling is needed to handle multiple concurrent queries.

35
MCQmedium

A Snowflake architect needs to design a solution for a global retail company that requires near real-time analytics on streaming point-of-sale data. The data arrives continuously via Snowpipe and must be immediately available for complex joins with historical sales data. The architect must minimize data latency and ensure that the compute resources for ingestion do not compete with those for analytical queries. Which Snowflake feature should the architect implement to meet these requirements?

A.Snowpipe with auto-ingest
B.Snowpipe Streaming
C.Snowflake Tasks with streams
D.Snowflake External Tables
AnswerB

Snowpipe Streaming enables low-latency, high-throughput ingestion of streaming data directly into Snowflake tables without the need for a stage or file-based ingestion. It uses a separate compute resource (Snowpipe Streaming service) that does not consume virtual warehouse credits, thus avoiding competition with analytical queries. This meets the requirement for near real-time availability and resource isolation.

Why this answer

Snowpipe Streaming is the correct choice because it provides a direct, low-latency path for streaming data into Snowflake tables, bypassing the need for file staging and reducing latency to seconds. It uses a separate compute service that does not consume virtual warehouse credits, ensuring that ingestion does not compete with analytical queries. This aligns with the need for near real-time analytics on streaming point-of-sale data.

Exam trap

The trap here is assuming that Snowpipe with auto-ingest provides real-time ingestion, but it actually has higher latency due to file staging and notification delays.

36
MCQeasy

A user runs a query that takes 10 minutes to execute. They immediately run the exact same query again, but it still takes 10 minutes. Which of the following is a likely reason why the Result Cache was not utilized?

A.The query contains a non-deterministic function like CURRENT_DATE().
B.The warehouse used for the second query was a different size.
C.The table data was updated via a SELECT statement.
D.The user does not have the same role as the previous user.
AnswerA

Non-deterministic functions are evaluated every time a query is run. Because the value of functions like CURRENT_DATE() or CURRENT_TIMESTAMP() can change between executions, Snowflake cannot guarantee that the cached result is still valid. Therefore, it bypasses the Result Cache and re-executes the query to ensure data accuracy.

Why this answer

The Snowflake Result Cache stores the results of queries for 24 hours. However, for a query to use the Result Cache, it must be identical to the previous query and must not contain non-deterministic functions like CURRENT_TIMESTAMP() or UUID_STRING(), which are evaluated at execution time and prevent cache reuse.

Exam trap

Candidates often assume that any identical query will hit the Result Cache, forgetting that non-deterministic functions invalidate the cache regardless of the underlying data remaining unchanged.

37
MCQmedium

An architect is considering the Query Acceleration Service (QAS) for a specific workload. Which type of query is most likely to benefit from QAS?

A.Small, frequent point-lookups on a table with Search Optimization enabled.
B.A query that scans a large volume of data but filters it down significantly.
C.A query that is currently spilling data to remote storage during a sort.
D.A query that is entirely served from the Snowflake Result Cache.
AnswerB

QAS is ideal for queries that perform massive table scans or filters that are compute-intensive. By offloading these scans to the QAS shared compute resources, the query can complete much faster without requiring the user to permanently resize their warehouse to a larger, more expensive T-shirt size.

Why this answer

The Query Acceleration Service (QAS) acts like an 'adhoc' burst of compute for specific parts of a query, typically large scans or filters. It is most effective for 'outlier' queries that scan massive amounts of data but produce few rows, allowing the main warehouse to avoid being bogged down by a single massive scan.

Exam trap

Candidates often assume QAS improves all slow queries, whereas it specifically targets large-scale scans that would otherwise consume excessive resources on the primary warehouse.

38
MCQhard

An architect is tuning a query that joins a large fact table to a dimension table. The query profile shows that the join is a full outer join and that the fact table is scanned entirely, even though the query filters on a column from the dimension table. The dimension table is small. The architect wants to reduce the amount of data scanned without changing the result set. Which action is most likely to improve performance?

A.Increase the warehouse size to give the join more memory.
B.Materialize the dimension table as a temporary table before the join.
C.Rewrite the full outer join as an inner join if the business logic does not require unmatched rows.
D.Add a clustering key on the fact table's join column to improve pruning.
AnswerC

A full outer join prevents the optimizer from pushing down filters from the dimension table to the fact table, because it must preserve unmatched rows from both sides. If the business logic does not require unmatched rows, rewriting as an inner join allows the optimizer to push the dimension filter to the fact scan, drastically reducing data read and improving performance without changing the intended result set.

Why this answer

Full outer joins prevent the optimizer from pushing dimension filters down to the fact table, forcing a full scan. When unmatched rows are not needed, rewriting as an inner join allows predicate pushdown, so the fact table reads only matching rows. This reduces I/O and speeds up the query without altering the required result set.

Exam trap

The trap here is assuming that a larger warehouse or a clustering key will fix a scan caused by join semantics, when the real issue is that the full outer join blocks filter pushdown.

39
MCQmedium

A security team is designing a Snowflake deployment where they need to centrally manage user access to a set of databases across multiple accounts in an organization. They want to define a set of privileges once and grant them to roles in each account without recreating the roles in every account. Which Snowflake feature should they use?

A.Organization roles
B.Account roles
C.Application roles
D.Database roles
AnswerA

Organization roles are designed for cross-account access management within a Snowflake organization. They allow you to define a role once at the organization level and grant it to accounts, enabling centralized privilege management. This matches the requirement to manage access across multiple accounts without recreating roles.

Why this answer

Organization roles allow centralized management of privileges across multiple accounts within a Snowflake organization. They are defined once and can be granted to accounts, eliminating the need to recreate roles in each account. This provides a scalable and consistent way to manage access, which is exactly what the security team needs.

Exam trap

The trap here is confusing database roles or account roles with organization roles, as all are role types but only organization roles operate across accounts.

40
MCQmedium

Refer to the exhibit. An administrator has executed a 'SHOW GRANTS TO ROLE ANALYST_ROLE' command. Based on the output, what is the significance of the 'grant_option' value for the 'SELECT' privilege on the 'SALES_DATA' table?

A.The ANALYST_ROLE can grant the SELECT privilege on the SALES_DATA table to other roles in the account.
B.The ANALYST_ROLE is a managed access role and cannot modify any privileges on the SALES_DATA table.
C.The SELECT privilege is automatically granted to any role that is a child of the ANALYST_ROLE.
D.The ANALYST_ROLE can only grant the SELECT privilege if they also have the OWNERSHIP privilege on the table.
AnswerA

When the 'grant_option' is set to 'true', it indicates that the privilege was granted using the 'WITH GRANT OPTION' clause. This allows any user active in the `ANALYST_ROLE` to grant that same SELECT privilege to other roles, effectively delegating administrative control over that specific object's access.

Why this answer

The 'grant_option' in Snowflake access control determines if a grantee has the authority to pass privileges to other roles. Understanding this output is crucial for architects to audit security and ensure that the principle of least privilege is maintained, as the ability to further delegate access can lead to unauthorized permission expansion if not strictly controlled.

Exam trap

Candidates frequently mistake 'grant_option' for general administrative rights, failing to realize it specifically authorizes the grantee to delegate that exact privilege to other roles in the system.

41
MCQhard

Refer to the exhibit. A query profile shows that 'partitions_scanned' is 5,000 while 'partitions_total' is 5,000 for a specific TableScan operator. What architectural issue does this indicate, and what is the recommended solution?

A.The warehouse is too small; increase it to improve the scan speed.
B.The query is hitting the metadata cache; no action is required.
C.Data is poorly clustered for the query filters; define a Cluster Key.
D.The table is a Transient table; convert it to a Permanent table.
AnswerC

Zero pruning indicates that the min/max values for the filtered columns overlap across all micro-partitions, or the filters are not being applied effectively. By defining a Cluster Key, Snowflake will reorganize the data so that values are grouped together, allowing the Cloud Services layer to prune the majority of partitions based on their metadata.

Why this answer

When the number of scanned partitions equals the total partitions, it means that no pruning occurred, and Snowflake performed a full table scan. Architecturally, this usually happens because the query filter does not align with the way data is organized in micro-partitions. Defining a Cluster Key on the columns used in the filter is the standard architectural fix to enable efficient pruning.

Exam trap

Candidates often suggest scaling up the warehouse size when partitions scanned equals total partitions, failing to realize that compute power cannot fix a missing partition pruning strategy.

42
MCQmedium

How does the Snowflake Cloud Services layer facilitate zero-copy cloning?

A.It performs a background process that copies micro-partitions to a new storage location.
B.It updates the metadata to point to existing micro-partitions.
C.It uses a temporary cache to manage differences between the clone and source.
D.It forces a full snapshot of the object storage bucket to ensure consistency.
AnswerB

By simply creating a new reference in the metadata layer, the clone points to the original micro-partitions. Because micro-partitions are immutable, this is safe; subsequent changes to the clone trigger the creation of new partitions, ensuring that the original data remains untouched and consistent for all users.

Why this answer

The Cloud Services layer maintains metadata maps that track which micro-partitions belong to which tables. When a zero-copy clone is performed, Snowflake simply creates a new metadata entry that points to the existing micro-partitions of the source table. No data is physically copied, which allows for near-instant creation of environments.

This architectural design highlights how metadata separation allows for efficient data management without the storage overhead associated with traditional database cloning methods.

Exam trap

Candidates often mistakenly believe that cloning copies the actual data blocks, failing to realize that Snowflake only creates new metadata pointers to existing micro-partitions without duplicating the underlying storage files.

43
MCQmedium

Which object type should an architect use to manage granular access permissions to a specific schema within a database?

A.User
B.Role
C.Warehouse
D.Integration
AnswerB

Roles are the fundamental unit of access control in Snowflake. They act as containers for privileges, which can then be granted to users. By creating custom roles for specific schemas, an architect can effectively group permissions and grant them to the appropriate users in a manageable and auditable way.

Why this answer

Role-Based Access Control (RBAC) in Snowflake relies on roles to manage privileges. By assigning specific privileges like USAGE or SELECT to a role, and then granting that role to users or other roles, the architect implements the principle of least privilege. This hierarchy allows for scalable management of security, ensuring that users only have the access they need to perform their jobs while maintaining auditability for compliance and security monitoring purposes across the entire organization.

Exam trap

Candidates often choose 'User' or 'Account' instead of 'Role'. They mistakenly think permissions are assigned directly to users, ignoring Snowflake's best practice of assigning all privileges to roles for easier maintenance.

44
Multi-Selectmedium

A security architect is designing a Snowflake environment for a company with strict data governance requirements. They need to implement column-level security to mask sensitive data based on the user's role and also track which columns are being accessed by which users. Which two Snowflake features should the architect use to achieve these goals? (Choose two.)

Select 2 answers
A.Dynamic Data Masking
B.Secure Views
C.Object Tagging
D.Row Access Policies
E.Access History
AnswersA, E

Dynamic Data Masking allows you to apply masking policies to columns so that users see masked values unless they have the appropriate role. This directly addresses the requirement to mask sensitive data based on role. Masking policies are evaluated at query time and can reference CURRENT_ROLE(), making them ideal for column-level security.

Why this answer

The requirements are to mask sensitive data based on role and to track column access. Dynamic Data Masking provides column-level masking based on the user's role, satisfying the first requirement. Access History records which columns are accessed by which queries and users, satisfying the second requirement.

Row Access Policies filter rows, Object Tagging is for classification, and Secure Views do not provide the needed masking or auditing.

Exam trap

The trap here is confusing row-level security with column-level security and assuming that Object Tagging or Secure Views can provide access tracking.

45
MCQmedium

Refer to the exhibit. What is the primary purpose of the WHEN clause in this Task definition?

A.To ensure the Task only runs if the sales_summary table is empty.
B.To check for the existence of the 'sales_stream' object before starting the warehouse.
C.To skip the task execution and avoid warehouse costs if no changes are present in the stream.
D.To validate that the data in the stream matches the schema of the sales_summary table.
AnswerC

This is a critical cost-optimization technique. By evaluating the stream's data status before the warehouse is provisioned, Snowflake avoids spinning up compute resources for a task that has no data to process, effectively reducing unnecessary credit consumption in the automated pipeline.

Why this answer

The WHEN clause in a Task allows for conditional execution based on a boolean expression. In this case, the SYSTEM$STREAM_HAS_DATA function checks if the associated stream contains any change tracking data. This prevents the Task from starting a warehouse and consuming credits when there is no work to perform.

Exam trap

Candidates frequently mistake the WHEN clause for data filtering or row selection, rather than recognizing its role in conditional task scheduling and credit conservation.

46
MCQeasy

Which property of External Tables should an architect configure to ensure that Snowflake does not scan all files in the underlying S3/Azure/GCS bucket for every query?

A.AUTO_REFRESH = TRUE
B.PARTITION BY
C.FILE_FORMAT = (TYPE = PARQUET)
D.INTEGRATION = 'MY_STORAGE_INT'
AnswerB

The PARTITION BY clause allows the architect to define a logical structure based on the file paths in the external stage. When a query filters on these partition columns, Snowflake can prune the file list and only scan the specific sub-folders that contain relevant data, mimicking the pruning behavior of internal tables.

Why this answer

Partitioning is the key to performance for External Tables. By defining partitions that match the folder structure in cloud storage, Snowflake can use the metadata to skip entire directories (files) that do not match the query's filter criteria, significantly reducing the I/O required for the query.

Exam trap

Candidates often confuse external table partitioning with automatic clustering, forgetting that external tables require explicit folder definitions to prune cloud storage files effectively.

47
MCQhard

A Snowflake architect is designing a multi-cluster warehouse for a workload that experiences unpredictable spikes in concurrency. The architect wants to ensure that queries are not queued unnecessarily while minimizing credit consumption during periods of low demand. The warehouse is configured with a minimum cluster count of 1 and a maximum of 5. Which scaling policy should the architect choose to best meet these goals?

A.Auto-suspend scaling policy
B.Maximized scaling policy
C.Standard scaling policy
D.Economy scaling policy
AnswerC

The Standard scaling policy starts additional clusters immediately when queries are queued, up to the maximum, and shuts them down after a period of inactivity (default 60 seconds). This minimizes queuing during sudden spikes and reduces credits during low demand by scaling down. It is designed for workloads that require high concurrency and can tolerate some credit usage for responsiveness, matching the scenario's need to avoid unnecessary queuing while controlling costs.

Why this answer

The Standard scaling policy is designed to minimize queuing by promptly adding clusters when queries are waiting, and it scales down after inactivity to save credits. Economy scaling is more conservative and may allow queuing during rapid spikes. Auto-suspend is unrelated to cluster scaling, and Maximized is not a valid policy.

Therefore, Standard best meets the requirement to handle unpredictable concurrency without excessive credit use.

Exam trap

The trap here is confusing the warehouse auto-suspend setting with the multi-cluster scaling policy, or assuming a policy called Maximized exists.

48
MCQmedium

A healthcare analytics company stores patient encounter data in a Snowflake table with columns: encounter_id (NUMBER), patient_id (NUMBER), encounter_date (DATE), and diagnosis_code (VARCHAR). The table is 20 TB and grows by 100 GB per day. Most queries filter on encounter_date and join to a patient dimension on patient_id. The architect must design a clustering key to optimize these queries while minimizing reclustering cost. Which clustering key should the architect choose?

A.CLUSTER BY (patient_id, encounter_date)
B.CLUSTER BY (encounter_date, patient_id)
C.CLUSTER BY (encounter_id)
D.CLUSTER BY (diagnosis_code, encounter_date)
AnswerB

This key orders data first by encounter_date, which is the primary filter column, and then by patient_id, which supports the join. Snowflake can prune micro-partitions efficiently on date ranges and co-locate related patient rows within each date, reducing scanned data for both filters and joins while keeping reclustering overhead manageable.

Why this answer

The clustering key should lead with the column most frequently used in range filters, which is encounter_date, and then include the join column patient_id. This order enables partition pruning on date ranges and improves join performance by co-locating related patient rows. The reversed order or unrelated columns fail to support the dominant query patterns and would increase scan volume and reclustering overhead.

Exam trap

The trap here is assuming that the join column must come first to optimize joins, when in fact leading with the high-selectivity filter column delivers greater pruning benefits for this workload.

49
MCQhard

Which feature of the Cloud Services layer specifically ensures that all transactions maintain ACID properties?

A.The local SSD cache on the Virtual Warehouse nodes.
B.The Global Transaction Manager within the Cloud Services layer.
C.The object storage layer's native versioning capability.
D.The client-side driver which handles transaction sequencing.
AnswerB

The transaction manager within the Cloud Services layer acts as a centralized coordinator for all state-changing operations. It ensures that every transaction follows ACID principles by managing locks (at the metadata level), sequencing, and ensuring atomicity. This allows Snowflake to scale compute indefinitely while maintaining strict data consistency throughout the system.

Why this answer

The Cloud Services layer maintains a centralized metadata repository and a transaction manager that ensures ACID compliance across all distributed operations. By using a global transaction manager, Snowflake ensures that all DML operations are either fully committed or rolled back, providing the consistency and isolation required for complex analytical and transactional applications. This centralized control is essential for maintaining data integrity in a massively parallel, distributed environment where concurrent writes are common.

Exam trap

Candidates often confuse the Global Transaction Manager with the compute engine, incorrectly believing that the warehouse is responsible for maintaining ACID transaction states during DML operations.

50
MCQmedium

A retail company ingests a daily 2 TB CSV file into a Snowflake table. The file is stored in an internal stage. The COPY INTO command currently runs with a single large file, and the load takes over 4 hours. The architect wants to reduce load time by leveraging parallelism. Which action should the architect take?

A.Use the VALIDATION_MODE = RETURN_ERRORS option to check for errors before loading, then rerun the COPY INTO command.
B.Split the large CSV file into multiple smaller files (e.g., 100–250 MB each) and use a single COPY INTO command with a pattern to load all files.
C.Increase the warehouse size to 4X-Large and rerun the same COPY INTO command on the single large file.
D.Convert the CSV file to JSON and load it using the VARIANT data type with a single COPY INTO command.
AnswerB

Splitting the file enables Snowflake to load multiple files in parallel across the compute resources of the warehouse. A single COPY INTO with a pattern can reference all files, and the load is distributed. This is the recommended approach for large data loads.

Why this answer

The key to faster loads is parallelizing across multiple files. A single large file is loaded by one thread, so splitting into smaller files allows Snowflake to distribute the load across many threads, significantly reducing elapsed time. Increasing warehouse size or changing format does not address the single-file bottleneck.

Exam trap

The trap here is assuming that a larger warehouse will automatically speed up a single-file load, but parallelism requires multiple files.

51
MCQeasy

A data architect needs to load data from an external stage into a Snowflake table. The data files are in Parquet format and are updated daily. The architect wants to minimize storage costs and avoid data duplication. Which command should be used to load only new or changed files?

A.COPY INTO with the VALIDATION_MODE option to validate files before loading.
B.COPY INTO with the PATTERN option to match file names based on date.
C.COPY INTO with the FILES option to specify a list of files to load.
D.COPY INTO with the load metadata tracking enabled to skip files already loaded.
AnswerD

Snowflake's COPY INTO command automatically tracks load metadata for external stages, recording which files have been loaded. By default, it skips files that have already been loaded successfully, preventing duplicates. This is the recommended way to load only new or changed files without manual intervention, minimizing storage costs and avoiding duplication.

Why this answer

COPY INTO leverages Snowflake's load metadata to track which files have been loaded from an external stage. It skips files that were previously loaded, ensuring only new or changed files are ingested. This automatic tracking prevents duplicates and reduces storage costs by avoiding redundant data.

Exam trap

The trap here is thinking that PATTERN or FILES options can handle incremental loads, but they do not track load history; only the built-in load metadata does.

52
MCQmedium

An architect is optimizing a query that joins a large fact table and a small dimension table. The query is slow. What should be the first step to improve performance?

A.Create a clustering key on the fact table.
B.Analyze the Query Profile to check for broadcast joins.
C.Increase the warehouse size to its maximum.
D.Convert the dimension table into a temporary table.
AnswerB

The Query Profile reveals how the join is being performed. A broadcast join sends the small dimension table to every node, which is optimal. If it is not being broadcast, the architect can investigate why the optimizer chose a different method and potentially adjust the query to force better behavior.

Why this answer

In star schema joins, Snowflake's optimizer typically handles small dimension tables by broadcasting them to all nodes, which is very efficient. However, if the query is still slow, checking the Query Profile to see if the join is actually being broadcast is essential. If the optimizer is not broadcasting the small table, the architect can use a hint or reorganize the join to ensure it happens.

Exam trap

Candidates often jump to rewriting the SQL query or changing the table structure before checking the actual execution plan, which is the most efficient way to diagnose join behavior.

53
MCQmedium

Refer to the exhibit. Task T2 is a child task of T1. If T1 completes successfully but the stream 'S1' is empty, what will be the status and behavior of Task T2?

A.T2 will fail with an error indicating that the stream contains no records for processing.
B.T2 will enter a 'SKIPPED' state and will not consume any warehouse credits.
C.T2 will run and perform a full table scan of the stream, resulting in zero rows inserted.
D.T2 will wait until S1 has data before executing, potentially delaying the rest of the DAG.
AnswerB

When the condition in the WHEN clause (SYSTEM$STREAM_HAS_DATA) evaluates to false, Snowflake skips the task execution. This is the intended behavior for efficient pipeline design, ensuring that the warehouse is not started and no credits are billed for tasks that have no work to perform.

Why this answer

In a Snowflake Task DAG, the WHEN clause is evaluated after the predecessor task finishes. If the condition in the WHEN clause is false, the task is skipped. This skip behavior is considered a successful state in the context of the DAG's flow, and it prevents the consumption of warehouse credits for an empty operation.

Exam trap

Candidates often think an empty stream causes the task execution to fail or enter an error state, rather than recognizing the intentional 'SKIPPED' behavior which incurs zero costs.

54
MCQhard

A data engineer is observing high costs associated with Snowpipe for a high-volume ingestion pipeline where many small files arrive every second. What is the most effective architectural change to reduce Snowpipe costs while maintaining near real-time ingestion?

A.Increase the size of the virtual warehouse used by Snowpipe
B.Implement a file grouping strategy in the cloud storage layer
C.Switch from Snowpipe to a scheduled COPY INTO command
D.Use the PURGE = TRUE option in the Snowpipe definition
AnswerB

Reducing the total number of files by grouping smaller records into fewer, larger files (ideally 100-250MB) significantly lowers the per-file overhead costs of Snowpipe. This strategy optimizes the serverless resource utilization and reduces the metadata management load required for every single ingestion notification.

Why this answer

Snowpipe costs are influenced by the number of files processed due to per-file overhead. By aggregating small files into larger batches at the source or using a more efficient staging strategy, architects can reduce the overhead. Monitoring the pipe's utilization and file sizing is a core responsibility for optimizing serverless compute usage in Snowflake.

Exam trap

Test-takers mistakenly believe they can tweak pipe parameters or warehouse sizes to reduce per-file Snowpipe costs caused by an influx of tiny files.

55
MCQhard

Which security integration type should an architect use to allow a third-party BI tool to access Snowflake without storing the user's credentials in the tool?

A.SAML2 Security Integration.
B.External OAuth Security Integration.
C.SCIM Security Integration.
D.API Authentication Integration.
AnswerB

External OAuth allows Snowflake to validate tokens issued by an external authorization server like Okta or PingFederate. This enables the BI tool to present a token that Snowflake trusts, allowing the tool to execute queries as the authorized user without the need for password storage.

Why this answer

OAuth is the industry-standard protocol for delegated authorization, allowing third-party applications to access Snowflake on behalf of a user. By using OAuth, the BI tool never sees the user's password; instead, it receives a secure token that grants specific, time-limited access to the Snowflake environment.

Exam trap

Candidates often confuse internal and external OAuth. They fail to identify that third-party tools require External OAuth to delegate access without storing user credentials.

56
MCQmedium

Refer to the exhibit. An architect reviews the status of a Snowpipe and notices a high 'pendingFileCount'. The warehouse is not under heavy load. What is the most effective way to improve the ingestion throughput for this pipe?

A.Scale up the virtual warehouse assigned to the pipe to a larger size.
B.Reduce the number of files by aggregating data into larger files (100-250 MB) before they reach the S3 bucket.
C.Increase the MAX_CONCURRENCY_LEVEL parameter in the Pipe definition to allow more parallel loads.
D.Use the ALTER PIPE ... REFRESH command to force the pipe to process the pending files faster.
AnswerB

Snowflake's ingestion services are most efficient when processing files in the 100MB to 250MB range. Having many small files increases the overhead of metadata management and file opening, which can lead to a backlog. Consolidating files reduces this overhead and allows Snowpipe to process more data per unit of time.

Why this answer

A high pending file count in Snowpipe often indicates that the ingestion rate is slower than the file arrival rate. Since Snowpipe is serverless, users cannot scale the compute manually. The best approach is to optimize the file size and count, or ensure that the files are correctly formatted to be processed as quickly as possible.

Exam trap

Test-takers often try to manually scale up or alter compute warehouses for Snowpipe, forgetting that Snowpipe is serverless and managed automatically.

57
MCQhard

An architect is analyzing a Snowflake query that performs poorly. The Query Profile shows a high percentage of time spent in the 'TableScan' operator with a large number of partitions scanned, despite a filter on a column with high selectivity. The table is not clustered. Which action is most likely to improve performance?

A.Enable the Query Acceleration Service on the warehouse.
B.Add a clustering key on the filtered column.
C.Create a materialized view on the filtered column.
D.Increase the warehouse size to add more compute nodes.
AnswerB

Clustering on the filtered column will co-locate similar values in the same micro-partitions, enabling Snowflake to prune partitions that do not match the filter. This reduces the number of partitions scanned, directly addressing the high TableScan time. It is the most targeted fix for this scenario.

Why this answer

The query scans many partitions because the table is not clustered, even though the filter is selective. Adding a clustering key on the filtered column reorganizes data so that only relevant micro-partitions are read. This reduces I/O and TableScan time.

Other options may provide some benefit but do not directly solve the partition pruning issue.

Exam trap

The trap here is thinking that increasing warehouse size or enabling Query Acceleration Service will always fix slow scans, but they do not address the root cause of scanning unnecessary partitions.

58
MCQhard

An architect is designing a security model where a specific service account should only have access to perform SELECT operations on tables within a specific schema. How should this be implemented to adhere to the principle of least privilege?

A.Grant the SECURITYADMIN role to the service account.
B.Create a custom role, grant USAGE on database and schema, then grant SELECT on all tables.
C.Assign the ACCOUNTADMIN role to the service account.
D.Grant SELECT on the whole database to the PUBLIC role.
AnswerB

This approach isolates the service account's permissions to only the necessary operations (SELECT) within the required scope (Database/Schema). By avoiding the use of powerful predefined roles, the architect ensures that the service account remains restricted, minimizing the blast radius if the service account's credentials were to be inadvertently exposed.

Why this answer

Implementing least privilege requires defining specific roles with limited scope. The best approach is to create a custom role, grant USAGE on the database and schema, and grant SELECT on the tables. This prevents the service account from performing DDL or DML operations, limiting the impact of a compromised account.

This granular control is essential for preventing lateral movement and ensuring data integrity in production pipelines.

Exam trap

Candidates often forget the USAGE privilege on the parent database and schema. They think granting SELECT on the table is sufficient, but the query will fail without the prerequisite USAGE permissions on containers.

59
MCQeasy

A Snowflake architect is tasked with improving the performance of a dashboard that runs several queries against a large fact table. The queries filter on different columns and are run concurrently by many users. The architect notices that the warehouse is often queued due to high concurrency. Which configuration change is most appropriate to reduce queuing and improve concurrency?

A.Enable the Query Acceleration Service on the warehouse.
B.Enable multi-cluster warehouse with a minimum and maximum cluster count greater than 1.
C.Increase the warehouse size to a larger T-shirt size.
D.Set the warehouse to auto-suspend after 60 seconds of inactivity.
AnswerB

Multi-cluster warehouses automatically add or remove clusters based on concurrency and queueing. Setting minimum and maximum clusters greater than 1 allows the warehouse to scale out to handle concurrent queries, reducing queuing. This directly addresses the high concurrency issue described.

Why this answer

High concurrency causing queuing is best resolved by scaling out with a multi-cluster warehouse. By configuring minimum and maximum clusters greater than 1, Snowflake can automatically add clusters when queries are queued, allowing more concurrent queries to run. Scaling up or enabling other features does not increase concurrency capacity.

Exam trap

The trap here is confusing scaling up (larger warehouse size) with scaling out (multi-cluster), where only scaling out increases concurrent query capacity.

60
MCQhard

Which component of the Snowflake architecture is responsible for managing metadata, access control policies, and the global state of the database objects across all accounts?

A.The Virtual Warehouse layer.
B.The Cloud Services layer.
C.The Database Storage layer.
D.The Result Cache.
AnswerB

The Cloud Services layer coordinates all activities in Snowflake, including session management, security, and metadata management. It ensures that data remains consistent globally by tracking state changes, which allows features like time travel and cloning to function reliably across all regions and compute clusters in an account.

Why this answer

The Cloud Services layer acts as the brain of Snowflake, handling authentication, query parsing, optimization, and metadata management. It maintains the global state and security integrity without requiring direct user interaction with storage or compute nodes. Understanding this layer is crucial for architects because it governs the metadata repository that enables features like zero-copy cloning, time travel, and robust security controls that are foundational to the Snowflake ecosystem.

Exam trap

Students often attribute metadata management and global state tracking to the storage layer or compute warehouses, forgetting that the Cloud Services layer acts as Snowflake's central brain.

61
MCQeasy

A retail company uses Snowflake to analyze point-of-sale data. They notice that queries filtering on the 'transaction_date' column are slow because the table is not clustered on that column. The table is very large and experiences frequent inserts. Which Snowflake feature should the architect recommend to automatically maintain clustering on the 'transaction_date' column?

A.Use a task to periodically run ALTER TABLE ... CLUSTER BY on the table.
B.Create a materialized view that selects all columns and filters on 'transaction_date'.
C.Enable the search optimization service on the 'transaction_date' column.
D.Define a clustering key on 'transaction_date' and enable automatic clustering.
AnswerD

Automatic clustering is a Snowflake service that continuously reorganizes micro-partitions in the background to maintain the clustering key as new data is inserted. By defining a clustering key on 'transaction_date' and enabling automatic clustering (which is on by default for clustered tables), the table remains optimally clustered without manual intervention. This improves query performance for filters on that column.

Why this answer

Defining a clustering key on 'transaction_date' and enabling automatic clustering allows Snowflake to maintain the clustering as new data is inserted. Automatic clustering runs in the background, ensuring that queries filtering on that column benefit from partition pruning. This is the native, recommended solution for large, frequently updated tables.

Other options either do not address clustering or are inefficient.

Exam trap

The trap here is assuming that manual reclustering via tasks or materialized views can replace automatic clustering, when in fact automatic clustering is the designed feature for ongoing maintenance.

62
MCQhard

Which feature is essential for ensuring that queries on PII (Personally Identifiable Information) columns are masked from unauthorized users?

A.Row-Level Security (RLS).
B.Dynamic Data Masking (DDM).
C.Data Encryption at Rest.
D.Object Tagging.
AnswerB

Dynamic Data Masking is specifically designed to redact or obfuscate sensitive data at query time based on the active role of the user. This is the optimal way to handle PII as it ensures data integrity while allowing for functional access to the rest of the table's data, meeting compliance standards for data security.

Why this answer

Dynamic Data Masking is the correct feature for protecting sensitive data like PII. It allows an architect to apply a policy to a table column that masks the data based on the user's role. This ensures that unauthorized users see masked, non-sensitive versions of the data, while authorized users see the original raw values, providing a robust solution for compliance and data protection without duplicating data or creating complex views.

Exam trap

Candidates suggest creating restricted views or separate physical tables, which violates the requirement for dynamic, policy-driven column protection.

63
Multi-Selectmedium

A data engineer is concerned about the performance of a large-scale batch transformation that runs every night. Which TWO techniques can be used to improve the performance of a complex join between two very large tables (billions of rows)?

Select 2 answers
A.Define a Clustering Key on the join columns for both large tables.
B.Increase the size of the virtual warehouse to provide more memory and prevent spilling to disk.
C.Use the SEARCH_OPTIMIZATION_SERVICE on the join columns of the smaller table.
D.Convert the tables to Iceberg format to utilize external metadata indexing.
E.Enable Query Acceleration Service (QAS) for the warehouse running the ETL.
AnswersA, B

When both tables in a join are clustered on the join key, Snowflake can perform a more efficient join by pruning micro-partitions that do not contain matching values. This significantly reduces the amount of data that must be scanned and shuffled across the network, leading to much faster query execution.

Why this answer

Optimizing large joins in Snowflake involves ensuring that the data is physically organized to minimize data movement and that the compute resources are sufficient. Clustering allows for partition pruning, while larger warehouses provide the memory necessary to perform hash joins without spilling data to local or remote storage.

Exam trap

Candidates often suggest adding more clusters to the warehouse (multi-cluster) instead of increasing warehouse size, confusing throughput scaling with memory-intensive join performance requirements.

64
MCQmedium

When designing a multi-layered architecture (Raw -> Silver -> Gold), which Snowflake object type is best suited for building the 'Silver' layer for incremental transformations?

A.Standard Views
B.Dynamic Tables
C.Materialized Views
D.Stored Procedures
AnswerB

Dynamic Tables provide a declarative way to define data pipelines. They automatically manage incremental materialization based on a target lag, eliminating the need for manual task orchestration and complex refresh logic. This makes them the ideal choice for building performant, scalable data layers in an ELT architecture.

Why this answer

Dynamic Tables are designed for declarative data pipelines. Instead of managing complex TASK-based workflows with intermediate tables, an engineer defines the transformation logic and the target lag. Snowflake handles the materialization, incremental updates, and orchestration.

This significantly reduces the boilerplate code and management overhead, allowing engineers to focus on business logic rather than pipeline orchestration, which is the primary goal of modern data architecture.

Exam trap

Candidates often default to complex Task and Stream orchestration for incremental layers, forgetting that Dynamic Tables offer a declarative, automated approach designed specifically for these workflows.

65
Multi-Selecthard

An architect is designing a near-real-time ingestion path using Snowpipe streaming into a target table. The team must choose TWO design decisions that reduce end-to-end latency and cost for continuously arriving events. (Choose two.)

Select 2 answers
A.Use the Snowpipe streaming SDK or Snowflake Ingest SDK to push rows directly rather than writing files and triggering a pipe.
B.Tune the client to flush rows at a smaller interval or size so events are committed to the target more frequently.
C.Batch events into larger files and rely on a scheduled COPY INTO to load them periodically.
D.Configure the target table with clustering on the event timestamp to improve insert throughput.
E.Disable the pipe and instead use a task that runs every minute to call INSERT statements against the target table.
AnswersA, B

Snowpipe streaming writes rows through the SDK without staging files, so events become queryable with much lower latency than the file-based path. It also avoids the cost and delay of writing and listing many small files. For continuously arriving events, this is the intended low-latency mechanism and directly reduces both freshness delay and file-handling overhead.

Why this answer

Snowpipe streaming lowers latency by pushing rows directly through the SDK instead of staging files, and the client flush interval determines how quickly buffered rows become visible. Together these reduce freshness delay and avoid file-handling overhead. Clustering, scheduled file-based loads, and task-driven inserts either add delay, add cost, or replace the streaming path with a slower polling model.

Exam trap

The trap here is conflating query-performance tuning such as clustering with ingestion-latency tuning, when streaming freshness is governed by the client flush behavior and the SDK path.

66
MCQeasy

Which Snowflake feature should be used to improve performance for point lookups on tables with billions of rows?

A.Automatic Clustering.
B.Search Optimization Service.
C.Materialized Views.
D.Result Caching.
AnswerB

The Search Optimization Service provides an indexed access path that enables extremely fast performance for point lookups. By maintaining specialized metadata, it allows the query processor to jump directly to the specific micro-partitions containing the requested data, bypassing the need for scanning the vast majority of the table storage.

Why this answer

The Search Optimization Service is designed specifically for point lookups where you need to find specific rows based on equality or inequality predicates. It creates persistent data structures that allow the engine to find relevant data without scanning the entire table. This significantly reduces latency for frequent, highly selective queries on massive datasets that would otherwise be impractical to scan.

Exam trap

Candidates frequently suggest clustering as the primary solution for point lookups, overlooking that the Search Optimization Service is specifically purpose-built for high-performance retrieval of individual rows.

67
MCQhard

A data engineer needs to share data with an external organization without moving or copying the data. Which feature is the most efficient and secure way to implement this?

A.Use a scheduled task to export data to an S3 bucket.
B.Implement Snowflake Data Sharing.
C.Create a read-only user for the other organization.
D.Use the Snowflake Data Replication feature.
AnswerB

Data Sharing enables secure access to live data without copying or moving it. The data provider maintains ownership, and the data consumer sees the most current version. This avoids the cost, latency, and security risks associated with data replication and physical file distribution.

Why this answer

Snowflake Data Sharing allows secure access to live data without replication. This eliminates the overhead of managing ETL jobs for data distribution, ensures the data consumer always sees the most current information, and provides granular control over what is shared. This is the cornerstone of the Snowflake Data Cloud, enabling organizations to build data-driven partnerships while maintaining full governance and security compliance over their shared assets.

Exam trap

Candidates often choose traditional ETL pipelines or table cloning to share data, forgetting that Snowflake Data Sharing provides secure, live access without data duplication or movement overhead.

68
MCQmedium

In Snowflake's architecture, what happens to the existing data in a table when a new Cluster Key is defined and the Automatic Clustering service is enabled?

A.The table is immediately locked and the data is rewritten to match the new key.
B.Snowflake uses a serverless background service to incrementally re-cluster the data.
C.The user must run the RECLUSTER command to trigger the data movement manually.
D.Existing data remains unchanged; only new data will be clustered using the new key.
AnswerB

Automatic Clustering is a serverless feature that monitors the clustering health of tables. When a key is defined, the service uses its own compute resources to reshuffle data into new micro-partitions that better align with the key. This process is incremental and prioritizes the most 'out-of-order' partitions to improve query pruning efficiency.

Why this answer

When a cluster key is defined, Snowflake does not immediately rewrite the table. Instead, the Automatic Clustering service, which is a serverless background task, identifies micro-partitions that are poorly clustered according to the new key. It then incrementally reorganizes the data by creating new micro-partitions and marking the old ones for deletion, all without impacting active workloads.

Exam trap

Candidates often mistakenly believe that defining a Cluster Key triggers an immediate, full-table rewrite, which would cause significant performance degradation and consume massive compute resources during the re-clustering process.

69
MCQhard

An architect is designing a Snowflake environment for a global e-commerce platform. The platform needs to support read-heavy workloads from multiple regions with low latency. The data is stored in a single Snowflake account in the US West (Oregon) region. The architect wants to minimize data transfer costs and improve query performance for users in Europe and Asia. Which approach should the architect recommend?

A.Use Snowflake's multi-cluster warehouse feature to deploy warehouses in each region that read from the primary database.
B.Configure a Snowflake materialized view in each region that refreshes from the primary table.
C.Enable Snowflake's global data sharing by creating a share and granting access to accounts in each region.
D.Create a read-only replica of the primary database in each region using database replication and configure clients to connect to the nearest replica.
AnswerD

Database replication creates a read-only copy of the database in another region. Clients in Europe and Asia can query the local replica, reducing latency and avoiding cross-region data transfer costs for read queries. This is the recommended approach for global read-heavy workloads with low latency requirements.

Why this answer

Database replication allows you to create a read-only replica of a database in another region. Clients can connect to the replica in their region, reducing latency and avoiding cross-region data transfer costs for reads. This is ideal for global read-heavy workloads.

Exam trap

The trap here is assuming that multi-cluster warehouses or data sharing can provide regional low-latency access, when only database replication creates a local copy in another region.

70
MCQhard

A healthcare analytics team uses Snowflake to analyze patient records. They have a large fact table 'ENCOUNTERS' that is clustered by 'PATIENT_ID' and 'ENCOUNTER_DATE'. The team frequently runs queries that filter on 'FACILITY_ID' and 'DIAGNOSIS_CODE', which are not part of the clustering key. These queries perform poorly. The architect needs to improve performance without changing the existing clustering key, as it benefits other queries. What should the architect do?

A.Create a search optimization service on the columns FACILITY_ID and DIAGNOSIS_CODE.
B.Add a secondary clustering key on FACILITY_ID and DIAGNOSIS_CODE to the table.
C.Create a materialized view on ENCOUNTERS that includes FACILITY_ID and DIAGNOSIS_CODE, and rewrite queries to use the materialized view.
D.Recluster the table manually using ALTER TABLE ... RECLUSTER, specifying the new columns.
AnswerA

The search optimization service can significantly improve performance for selective point lookups and filtered queries on columns not in the clustering key. It maintains a search access path that allows efficient pruning. This is ideal when the existing clustering key must remain for other queries. It does not require changing the clustering key and can be added to specific columns.

Why this answer

The search optimization service is designed to accelerate queries with filters on columns that are not part of the clustering key. It creates a persistent data structure that enables efficient pruning for equality and IN filters. This allows the team to keep the existing clustering key for other queries while improving performance for FACILITY_ID and DIAGNOSIS_CODE filters.

It is the appropriate solution without altering the clustering key.

Exam trap

The trap here is assuming that you can add a second clustering key or that reclustering can target new columns, when Snowflake only supports one clustering key per table.

71
MCQeasy

A data engineer is building a dashboard that queries a large sales table with filters on region and date. The table is not clustered, and queries scan many micro-partitions. The engineer wants to improve query performance with minimal ongoing maintenance. Which Snowflake feature should the engineer use?

A.A materialized view that pre-aggregates sales by region and date.
B.Search Optimization Service on the region column.
C.A clustering key on the region and date columns.
D.Increasing the warehouse size to scan the table faster.
AnswerC

Clustering on region and date aligns the physical layout of the table with the dashboard's filter columns, allowing Snowflake to prune micro-partitions effectively. This reduces the amount of data scanned and improves query performance. Clustering is maintained automatically by Snowflake, so ongoing maintenance is minimal, making it a good fit for this scenario.

Why this answer

Clustering on the columns used in the dashboard filters (region and date) enables Snowflake to prune micro-partitions, reducing the data scanned. Snowflake automatically maintains clustering, so ongoing effort is minimal. This directly addresses the performance issue of scanning many micro-partitions and is the recommended approach for large tables with recurring filter patterns.

Exam trap

The trap here is choosing Search Optimization Service for range and broad filters, when it is intended for highly selective point lookups, not for general dashboard filtering.

72
MCQmedium

An architect is optimizing a Snowflake environment where a critical query joins a large fact table with a small dimension table. The Query Profile shows that the build side of the hash join is spilling to local disk. Which action is most likely to eliminate the spilling and improve performance?

A.Rewrite the query to use a nested loop join instead of a hash join.
B.Enable the Query Acceleration Service on the warehouse.
C.Increase the warehouse size to provide more memory per node.
D.Add a clustering key on the join column of the large fact table.
AnswerC

Hash join spilling occurs when the build side (often the smaller table) does not fit in memory. Increasing the warehouse size adds more memory per node, allowing the build side to fit in memory and eliminating spilling. This directly addresses the issue shown in the Query Profile.

Why this answer

Spilling to local disk in a hash join indicates that the build side does not fit in the available memory. Increasing the warehouse size provides more memory per node, allowing the build side to be held in memory. This eliminates spilling and improves join performance.

Other options do not address the memory constraint.

Exam trap

The trap here is assuming that clustering or Query Acceleration Service will fix spilling, but spilling is a memory issue that is best resolved by scaling up the warehouse.

73
MCQmedium

A financial organization needs to ensure that only connections originating from their corporate VPN IP range can access their Snowflake account. Which feature should the architect implement?

A.Enable MFA for all users.
B.Configure SCIM provisioning.
C.Apply a Network Policy at the account level.
D.Implement OAuth security integration.
AnswerC

Network Policies at the account level are the standard way to enforce IP allowlists and blocklists globally. By applying the policy to the account, Snowflake inspects the source IP of every incoming request against the defined CIDR blocks, ensuring that only traffic from the VPN is permitted.

Why this answer

Network Policies provide the primary mechanism for controlling access based on IP addresses. By defining an allowed list of CIDR blocks, the architect creates a perimeter defense that prevents unauthorized access from public networks. This is crucial for compliance in highly regulated industries, ensuring that data exposure risks are mitigated by restricting the attack surface to trusted network locations only, effectively blocking any connection attempts outside the defined enterprise perimeter.

Exam trap

Candidates often suggest object-level security or user-level settings. They fail to recognize that network-based access restrictions must be applied at the account level via Network Policies.

74
MCQmedium

A Snowflake architect is designing a pipeline that ingests semi-structured JSON events from an internal stage and needs to write them into a VARIANT column. The events contain nested keys that vary in depth and casing across sources, and the team wants to flatten only a fixed set of known top-level keys while preserving the remaining structure for later analysis. Which approach best satisfies these requirements?

A.Create a view that exposes the fixed top-level keys with colon path notation (for example, src:payload:eventType) and leave the raw VARIANT column available for ad hoc queries.
B.Use LATERAL FLATTEN with the RECURSIVE argument set to TRUE on the raw VARIANT column to expand every nested key into separate rows, then filter the resulting KEY column to the known top-level keys.
C.Load the JSON into a relational table with one column per possible nested key, using the INFER_SCHEMA option of COPY INTO to auto-detect every attribute at load time.
D.Store each event as a separate row using the PARSE_JSON function and then apply OBJECT_KEYS to return only the known top-level keys as an array column.
AnswerA

Colon path notation accesses specific keys of a VARIANT without destroying the rest of the document. The base column remains queryable, so unknown or deeply nested attributes stay available for later analysis, while consumers get stable projections of the known top-level keys. This is the standard Snowflake pattern for selectively surfacing semi-structured fields without losing fidelity.

Why this answer

Projecting known fields with colon path notation keeps the raw VARIANT column intact, so unknown keys and deeper nesting remain available. This satisfies both requirements: a stable interface for the fixed top-level keys and full retention of the original semi-structured payload for later analysis. Recursive flattening, inferred relational schemas, and key-name extraction all either destroy structure or fail to surface values.

Exam trap

The trap here is assuming that flattening semi-structured data must be destructive, when Snowflake path notation lets you project selected keys while leaving the original VARIANT untouched.

75
MCQmedium

A data engineer is designing an automated ingestion pipeline using Snowpipe Streaming to ingest high-frequency clickstream data from Kafka into Snowflake tables. The architecture requires low latency and cost-effective continuous loading. Which underlying Snowflake architectural feature makes Snowpipe Streaming uniquely capable of bypassing the traditional internal staging phase?

A.It leverages serverless tasks to automatically stage and bulk load streaming batches every minute.
B.It writes data directly to internal table micro-partitions via client-side API calls, avoiding file staging.
C.It requires continuous execution of a dedicated virtual warehouse to transform and commit micro-batches.
D.It automatically converts incoming streaming payloads into Parquet files before final table insertion.
AnswerB

Snowpipe Streaming uses client-side API calls to write rows straight into internal table micro-partitions, bypassing the internal staging phase entirely. This removes the file-write-and-load cycle that standard Snowpipe depends on, delivering the low latency and continuous, cost-effective ingestion the Kafka clickstream pipeline requires.

Why this answer

Snowpipe Streaming writes directly to Snowflake micro-partitions using native Java APIs without requiring files to be staged first in internal stages. This architectural shortcut significantly reduces latency and compute costs for real-time streaming pipelines compared to standard file-based Snowpipe loading.

Exam trap

Candidates often incorrectly assume Snowpipe Streaming is just an optimized version of standard Snowpipe, missing the key architectural difference: it bypasses file-based staging entirely by writing directly to partitions.

Page 1 of 3

Page 2

All pages