All Snowflake exams

Free ARA-C01 practice test: 30 questions with answers

30 original questions for SnowPro Advanced: Architect, drawn from every topic area. Answer each one to see whether you got it right and why. No sign-up.

Free questions
30
Full bank
100 questions

ARA-C01 exam guide: topics, cost and format

All 30 ARA-C01 questions with answers

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

Security and Governance Architecture (6 questions)

  1. Question 1

    A company wants employees to authenticate to Snowflake with tokens issued by its central identity provider rather than with Snowflake passwords. Which object should be configured?

    1. AA resource monitor in Snowflake
    2. BA network policy for IP allow and block lists
    3. CAn External OAuth security integration
    4. DA masking policy on email columns
    Show answer and explanation
    Correct answer: C

    An External OAuth security integration lets Snowflake accept access tokens issued by the customer's identity provider. Network policies restrict source addresses, masking policies hide values, and resource monitors track credits.

  2. Question 2

    A masking policy must show the real salary only to the HR_ANALYST role and a masked value to everyone else. Which expression in the policy evaluates the caller's role?

    1. ASYSTEM$TASK_INFO()
    2. BUSER_NAME()
    3. CGET_ACCOUNT_LOCATOR()
    4. DCURRENT_ROLE()
    Show answer and explanation
    Correct answer: D

    CURRENT_ROLE returns the active role of the session, which a CASE expression in the masking policy can compare with HR_ANALYST. The other functions return user, account or task information, not the role that decides visibility.

  3. Question 3

    Every column tagged as PII must be masked automatically, including columns added in future. Which approach scales this requirement?

    1. AExport the data to an external tool that masks it before users query it
    2. BAssign a tag-based masking policy to the PII tag
    3. CAdd a row access policy to every table
    4. DRun ALTER TABLE on each column manually after every change
    Show answer and explanation
    Correct answer: B

    A tag-based masking policy applies to every object carrying the tag, including new columns, which keeps protection consistent. Manual changes and row policies do not scale this way, and exporting data moves it outside the governed platform.

  4. Question 4

    Which two controls protect sensitive data in transit and at rest for Snowflake accounts? (Choose two.)

    1. ATLS for client connections to Snowflake
    2. BSnowflake-managed encryption of data at rest
    3. CShared administrator passwords stored in a wiki
    4. DUnencrypted external stages used for all sensitive files
    5. EDisabled certificate validation in client drivers
    Show answer and explanation
    Correct answer: A, B

    TLS protects data in transit between clients and Snowflake, and encryption at rest protects stored data. Shared passwords, unencrypted stages and disabled certificate validation each remove a protection rather than adding one.

  5. Question 5

    A bank requires that traffic between its network and Snowflake never crosses the public internet. Which connectivity design meets this?

    1. AA public endpoint protected by multi-factor authentication and TLS 1.3 encryption
    2. BA public endpoint restricted by an IP allow list configured in a network policy, with traffic still crossing the internet
    3. CPrivate connectivity through AWS PrivateLink or Azure Private Link, combined with network policies
    4. DA client VPN installed on individual employee laptops, with split tunneling enabled on each device for remote access
    Show answer and explanation
    Correct answer: C

    PrivateLink or Azure Private Link routes traffic over the cloud provider's private network to Snowflake, and network policies add source controls. Public endpoints with allow lists or MFA still traverse the public internet, and laptop VPNs do not cover system-to-system traffic.

  6. Question 6

    An auditor must determine which queries read specific columns that contain personal data. Which view supports this investigation?

    1. ASNOWFLAKE.ACCOUNT_USAGE.ACCESS_HISTORY
    2. BINFORMATION_SCHEMA.TABLE_CONSTRAINTS
    3. CSNOWFLAKE.ACCOUNT_USAGE.GRANTS
    4. DACCOUNT_USAGE.TABLE_STORAGE_METRICS
    Show answer and explanation
    Correct answer: A

    ACCESS_HISTORY records which objects and columns each query accessed, which supports column-level audits. The other sources describe table metadata, privileges or storage, not which queries read a column.

Data Engineering and Pipeline Design (6 questions)

  1. Question 7

    A task must run only when its source stream actually contains change records. Which task definition achieves this?

    1. AWAIT FOR NEW CDC ROWS IN orders_stream
    2. BWHEN SYSTEM$STREAM_HAS_DATA('orders_stream')
    3. CSCHEDULE = 'USING CRON * * * * *' ON_TICK
    4. DAFTER orders_stream_raw_ingest_v2
    Show answer and explanation
    Correct answer: B

    The WHEN clause with SYSTEM$STREAM_HAS_DATA skips runs when the stream is empty, which avoids idle warehouse use. A schedule alone runs regardless of data, and AFTER links tasks rather than streams, while WAIT FOR is not a task clause.

  2. Question 8

    Which two statements correctly compare Snowpipe Streaming with file-based Snowpipe? (Choose two.)

    1. AFile-based Snowpipe cannot use cloud storage notifications
    2. BSnowpipe Streaming ingests rows directly without first writing files to a stage
    3. CFile-based Snowpipe is triggered when new files arrive in a stage
    4. DSnowpipe requires a dedicated warehouse for each file loaded
    5. ESnowpipe Streaming can load only JSON data
    Show answer and explanation
    Correct answer: B, C

    Snowpipe Streaming sends rows straight to the table, while file-based Snowpipe reacts to files staged in cloud storage. Snowpipe is serverless and does not need a dedicated warehouse per file, it is not limited to JSON, and file-based Snowpipe commonly uses storage event notifications.

  3. Question 9

    A retried load job must not load the same staged files twice. Which default COPY INTO behavior protects against this?

    1. APURGE = TRUE removes files from the stage before loading them into the target table
    2. BLoad metadata records files already loaded, and FORCE = FALSE skips them
    3. CON_ERROR = CONTINUE loads duplicate rows silently on each retry
    4. DFORCE = TRUE reloads staged files on each retry attempt
    Show answer and explanation
    Correct answer: B

    COPY INTO tracks loaded files in load metadata and skips them unless FORCE is set to TRUE, which makes retries idempotent by default. FORCE = TRUE does the opposite, PURGE deletes source files, and CONTINUE only affects error rows.

  4. Question 10

    A late-arriving correction must update an existing row in a fact table, identified by a business key. Which statement pattern fits?

    1. AMERGE on the business key with WHEN MATCHED THEN UPDATE and WHEN NOT MATCHED THEN INSERT
    2. BTruncate and reload three years of history nightly from the source extract
    3. CDrop the fact table and rebuild it from scratch each time using CTAS
    4. DInsert every correction as a new row and filter duplicates with a QUALIFY clause in each report
    Show answer and explanation
    Correct answer: A

    MERGE matches on the business key, so the correction updates the existing row or inserts a new one. Insert-only designs push duplicate handling into every consumer, and rebuilds are expensive and disruptive.

  5. Question 11

    An external table over Parquet files in cloud storage is slow for queries that filter on a date folder. Which practice improves performance?

    1. APartition the external table on the folder-derived date column and keep metadata refreshed
    2. BDisable metadata refresh on the external table to save warehouse credits
    3. CStore the same data as compressed CSV in a single file with no partitioned folders
    4. DConsolidate the Parquet data into one very large file spanning the full date range for faster scans
    Show answer and explanation
    Correct answer: A

    Partitioning on folder-derived columns lets queries read only the relevant files, and refreshed metadata keeps the table aware of new files. Compressed CSV and single large files reduce parallelism, and stopping refresh leaves new data invisible.

  6. Question 12

    A directed graph of tasks must start a child task only after the root task completes. Which definition does this?

    1. ACREATE TASK child DEPENDS ON root
    2. BCREATE TASK child AFTER root
    3. CCREATE TASK child WAIT FOR root
    4. DCREATE TASK child CHAIN WITH root
    Show answer and explanation
    Correct answer: B

    AFTER defines a predecessor relationship in a task graph, so the child runs when the root finishes. The other clauses are not valid task dependency syntax in Snowflake.

Data Modeling and Architecture Design (6 questions)

  1. Question 13

    An IoT platform receives events whose nested attributes change frequently across firmware versions. The team wants to keep the raw payloads queryable without a rigid schema for each change. Which storage design fits best?

    1. AStore the raw payloads as BLOB values in one column and decode the bytes with custom UDFs inside each query
    2. BLand payloads in a VARIANT column and project frequently used attributes into typed columns
    3. CSplit every attribute into its own table with a foreign key to the event row
    4. DKeep payloads as large VARCHAR text in a single column and parse each one with regular expressions at query time
    Show answer and explanation
    Correct answer: B

    VARIANT keeps the raw semi-structured payload intact, and promoting the hot attributes to typed columns preserves performance for common queries. BLOB and large VARCHAR hide structure, and one table per attribute makes ingestion and queries fragile.

  2. Question 14

    A fact table of two billion rows is mostly filtered by a date column and then by region. Which clustering choice most improves micro-partition pruning?

    1. ACluster on the date column first, optionally followed by region, matching the filter pattern
    2. BCluster on a column that no query in the workload filters on, so reclustering spends credits for little pruning
    3. CDisable clustering on the table so that Snowflake's automatic micro-partition ordering can choose its own layout
    4. DCluster on the surrogate primary key, which is unique for every row, so each micro-partition covers a tight key range
    Show answer and explanation
    Correct answer: A

    Clustering on the frequently filtered date column co-locates similar values so pruning eliminates more micro-partitions. A unique surrogate key gives no pruning benefit for range filters, a column no query uses is wasted cost, and automatic layout does not match the workload.

  3. Question 15

    A dimension must keep full history when a customer's region changes. Which Type 2 slowly changing dimension pattern is correct in Snowflake?

    1. AOverwrite the dimension row in place and keep no history because prior region values are discarded during each nightly run
    2. BReload the whole dimension nightly with TRUNCATE and INSERT, without effective dates or flags
    3. CClose the current row with an end date and insert a new current row, applied through MERGE from a stream
    4. DKeep the history as CSV exports in an external stage, with no dimension table versions kept
    Show answer and explanation
    Correct answer: C

    A Type 2 pattern keeps each version with effective and end dates, and a MERGE driven by a stream applies the changes incrementally. Overwriting or reloading without dates destroys history, and external CSV history is not queryable as dimension versions.

  4. Question 16

    Which two design choices reduce duplicated data across development, test and production? (Choose two.)

    1. AFull nightly copies of production for every team
    2. BA duplicate table per region holding the same data
    3. CCSV exports copied between schemas by hand
    4. DZero-copy clones for development and test environments
    5. ESecure views over a single shared base table
    Show answer and explanation
    Correct answer: D, E

    Zero-copy clones share storage until data diverges, and secure views expose one base table to several audiences without copies. Full copies, per-region duplicates and manual CSV exports multiply storage and create drift.

  5. Question 17

    A SaaS vendor stores many tenants in shared tables and must guarantee that each tenant sees only its own rows. Which approach fits best?

    1. AA row access policy keyed to the tenant identifier, combined with secure views per tenant
    2. BOne dedicated virtual warehouse per tenant as the sole isolation control
    3. CA separate database per tenant, with grants managed by each tenant's administrator and no governance on roles
    4. DStoring each tenant's rows as JSON files in one internal stage, with the files read from the stage by each tenant
    Show answer and explanation
    Correct answer: A

    A row access policy enforces tenant filtering on every query against the shared table, and secure views give each consumer a controlled interface. Warehouses control compute rather than data visibility, and files in a stage do not restrict query results.

  6. Question 18

    An application needs single-row reads and writes with low latency, while analysts also run large aggregations on the same data. Which table type supports both patterns?

    1. ATransient table
    2. BTemporary table
    3. CExternal table
    4. DHybrid table
    Show answer and explanation
    Correct answer: D

    Hybrid tables are built for low-latency transactional row operations and can be analyzed alongside standard tables. Transient and temporary tables are for storage cost or session scope, and external tables are read-only views of files in cloud storage.

Performance Optimization and Cost Management (6 questions)

  1. Question 19

    Which two actions reduce cost for a long-running ETL workload? (Choose two.)

    1. AKeep all workloads on one shared warehouse at maximum concurrency
    2. BRight-size the warehouse and let it auto-suspend when idle
    3. CSeparate ELT and BI workloads onto different warehouses
    4. DRun every job on a 6XL warehouse around the clock
    5. EDisable auto-suspend to avoid cold starts
    Show answer and explanation
    Correct answer: B, C

    Right-sizing with auto-suspend stops idle billing, and separate warehouses isolate workloads so each is sized for its own needs. Oversized always-on warehouses and disabling suspend increase cost, and a single saturated warehouse slows critical jobs.

  2. Question 20

    Selective point lookups on a large table with a high-cardinality column are slow. Which feature is designed for this access pattern?

    1. AClustering on a random column
    2. BResult cache tuning
    3. CA larger warehouse only
    4. DSearch optimization service
    Show answer and explanation
    Correct answer: D

    The search optimization service builds access paths for selective lookups on high-cardinality columns. Clustering on a random column adds maintenance cost without pruning benefit, cache tuning does not help first-time queries, and a larger warehouse does not fix the access path.

  3. Question 21

    An aggregation over several joined tables must stay up to date within minutes. Which object is the best fit?

    1. AExternal table
    2. BMaterialized view over a join
    3. CStandard view
    4. DDynamic table
    Show answer and explanation
    Correct answer: D

    A dynamic table can contain joins and maintains results to a target lag, which fits this requirement. A standard view recomputes on each query, materialized views have restrictions on joins, and external tables read files in place.

  4. Question 22

    One very large scan query runs slowly while the warehouse shows low utilization. Which option can accelerate the scan portion?

    1. ACluster the table on a column that no workload query filters on
    2. BAdd more clusters to a multi-cluster warehouse for concurrency
    3. CDisable the result cache at session level for repeated queries
    4. DEnable the query acceleration service on the warehouse
    Show answer and explanation
    Correct answer: D

    Query acceleration offloads parts of a large scan to additional serverless compute, which suits this profile. More clusters help concurrency, disabling the cache removes reuse, and clustering on an unused column provides no benefit.

  5. Question 23

    A BI warehouse sees spikes of many concurrent users in the morning. Which warehouse settings allow it to scale out and back in automatically?

    1. AMAX_CONCURRENCY_LEVEL set on each table to cap concurrent user queries at 8
    2. BMIN_CLUSTER_COUNT and MAX_CLUSTER_COUNT on a multi-cluster warehouse
    3. CAUTO_CLUSTER on a standard warehouse with a single cluster
    4. DCLUSTER_KEYS set on the warehouse to group rows by sales date
    Show answer and explanation
    Correct answer: B

    A multi-cluster warehouse scales between minimum and maximum cluster counts as concurrency rises and falls. The other options are not valid warehouse settings for this, and clustering keys belong to tables.

  6. Question 24

    Which two techniques reduce the amount of data a query scans on a large table? (Choose two.)

    1. AUsing SELECT * in every query
    2. BWrapping filter columns in functions so that the filter is applied later
    3. CTurning off table statistics
    4. DPredicates on the partitioning or clustering columns that allow pruning
    5. EClustering or search optimization on the most frequent filter columns
    Show answer and explanation
    Correct answer: D, E

    Filters on clustered or partitioning columns let Snowflake prune micro-partitions, and search optimization speeds selective lookups. SELECT * reads more columns, wrapping filter columns in functions can prevent pruning, and statistics help the planner.

Data Sharing, Replication and Business Continuity (6 questions)

  1. Question 25

    A company must have its databases and roles copied to a second region and promoted there if the primary region becomes unavailable. Which Snowflake feature provides this?

    1. AA secure data share with no replication
    2. BA zero-copy clone refreshed monthly
    3. CTime Travel with a 90-day retention period
    4. DReplication with failover groups
    Show answer and explanation
    Correct answer: D

    Failover groups replicate selected databases, roles and other objects to a secondary account or region and let the secondary be promoted during an outage. Clones are point-in-time copies in the same account, shares do not provide recovery, and Time Travel covers history rather than regional failover.

  2. Question 26

    A partner has no Snowflake account but must query a dataset that the provider maintains. Which approach fits?

    1. ACreate a reader account owned and managed by the provider for the partner
    2. BShare the provider's administrator credentials with the partner team
    3. CExport CSV files of the customer tables and email them as copies to the partner each day
    4. DPublish a public stage link to the data files that anyone can open
    Show answer and explanation
    Correct answer: A

    A reader account is a Snowflake account the provider creates and manages so that a consumer without its own account can use shared data. Exports create copies, shared admin credentials are unacceptable, and public stage links expose files without access control.

  3. Question 27

    Which two statements about replication and secure data sharing are correct? (Choose two.)

    1. AReplication is possible only within the same region
    2. BSecure shares allow consumers to modify provider tables
    3. CReplication copies objects to another account or region for continuity
    4. DA secure share gives consumers read access without copying the data into their own storage
    5. EShares automatically copy all data into the consumer's storage
    Show answer and explanation
    Correct answer: C, D

    Replication creates a separate copy for recovery or locality, and a share exposes provider data read-only without duplicating it. Shares do not copy data into the consumer, replication works across regions, and consumers cannot change provider tables through a share.

  4. Question 28

    A provider wants to share a view while keeping its definition and the underlying table logic hidden from consumers. Which object should be used?

    1. ASecure view
    2. BStandard view
    3. CMaterialized view
    4. DDynamic table
    Show answer and explanation
    Correct answer: A

    A secure view hides its definition and limits the optimizer's exposure of underlying data, which suits shared data. A standard view exposes its definition to users with access, and materialized views and dynamic tables are storage and refresh objects.

  5. Question 29

    After the failed primary region recovers, the organization wants the original region to become primary again without losing changes. Which step is correct?

    1. ARestore from last week's full export and ignore the secondary changes
    2. BKeep both regions as primary with no synchronization between the two
    3. CReplicate changes back, confirm the original is caught up, then promote it to primary
    4. DRecreate the primary database from scratch and then discard the secondary changes entirely
    Show answer and explanation
    Correct answer: C

    Failback requires replicating the changes made during the outage back to the original region, verifying it is current, and then promoting it. Recreating from scratch or restoring old exports loses changes, and running two unsynchronized primaries causes divergence.

  6. Question 30

    Which recovery metric defines the maximum acceptable amount of data loss measured in time?

    1. ARecovery time objective
    2. BService level indicator
    3. CRecovery point objective
    4. DMean time between failures
    Show answer and explanation
    Correct answer: C

    The recovery point objective is the maximum tolerable age of recovered data, which is the amount of data that may be lost. Recovery time objective measures how long restoration may take, and the other terms do not describe data loss.