DataLane
← All stacks

Snowflake

Credits, Time Travel, and warehouses you can explain to FinOps

13 questions with solutions

  1. Q1Capital OneVisaBank of America

    A Medium warehouse is slower but cheaper than Large. When is that true?

    Solution

    Size doubles credits per hour. If Medium takes only a little longer, total credits drop. Single-threaded SQL and tiny result sets will not scale with size — you just pay more for the same clock. Test one size down on a real job and compare credits, not elapsed time alone.

  2. Q2SnowflakeDeloitteAccenture

    Someone DELETED gold.orders. What do you do in the first ten minutes?

    Solution

    Query History for the last good timestamp. SELECT count(*) … AT (TIMESTAMP => …). CLONE to a _fix table and diff. Do not UNDROP as the first move if writers are live — you can race a reload. Time Travel is a restore window, not a backup policy. Fail-safe is Snowflake-only and not queryable.

  3. Q3McKinseyPwCEY

    Result cache vs warehouse cache vs metadata cache — which one did this dashboard hit?

    Solution

    Exact same query + role + unchanged source data → result cache (no warehouse). Warehouse local disk cache helps repeats on the same WH after it stayed warm. Metadata (services layer) makes COUNT(*) and MIN/MAX cheap. If auto-suspend is 60s and the dashboard ticks every 5 minutes, you pay resume every time.

  4. Q4PalantirScale AIconsulting AI labs

    Would you put Cortex COMPLETE inside a Looker explore?

    Solution

    No. Materialize once, serve many times. Explore refresh is a token bill and a non-deterministic answer. Classify or extract in an incremental model, store the label, BI reads the column. Cortex is an ELT step, not a metric.

  5. Q5NetflixAdobeSalesforce

    Micro-partitions and clustering: when does a clustering key pay for itself?

    Solution

    Natural ingestion order already clusters some tables (time-series). A clustering key helps when queries filter a column that is scattered across partitions (high clustering depth). It costs background credits. Check SYSTEM$CLUSTERING_INFORMATION before you turn it on. Search Optimization is a different product for point lookups.

  6. Q6AirbnbStripeSnowflake

    Streams and Tasks vs an external orchestrator. How do you choose?

    Solution

    Streams + Tasks are fine for a few in-Snowflake incremental loads. Once you have 30 jobs, cross-system dependencies, or a human on-call rotation, put Airflow / Dagster on top and keep Tasks as the SQL worker. Do not invent a second orchestrator inside Snowflake “just because it is native.”

  7. Q7LyftUberInstacart

    COPY INTO failed halfway. Is the target table half-loaded?

    Solution

    A single COPY INTO is transactional per file set: failed files can be skipped with ON_ERROR, but committed files stay. Know VALIDATION_MODE, PURGE, and force vs load history. Interviewers want “I check COPY_HISTORY, I do not assume all-or-nothing across a folder of 400 files.”

  8. Q8SnowflakeCapital OneAdobe

    Search Optimization vs a clustering key — one sentence each.

    Solution

    Clustering helps range/filter scans on poorly ordered columns. Search Optimization helps highly selective point lookups. They cost extra credits. Do not buy both “just in case.”

  9. Q9SnowflakeDeloitteStripe

    Zero-copy clone of prod for a destructive test. What do you warn finance?

    Solution

    Clone is cheap at t0. Storage grows as either side writes. Time Travel on the clone is not a backup of prod. Drop the clone when the test ends.

  10. Q10SnowflakeSalesforceWorkday

    A share vs an export. When is export still right?

    Solution

    Share when both sides are Snowflake and you want live data. Export when the consumer is not Snowflake, needs a file SLA, or cannot be a reader account.

  11. Q11SnowflakeAirbnbNotion

    Dynamic Tables vs Streams + Tasks. Pick one and defend it.

    Solution

    Dynamic Tables when the graph is SQL and you want a lag target. Streams+Tasks when you need custom Task logic or an external orchestrator already owns the clock. Do not run both on the same table without a reason.

  12. Q12SnowflakeCapital OneOpenAI

    SnowPro Specialty: Gen AI — where does COMPLETE belong?

    Solution

    In incremental ELT that writes a versioned column. Not in a Looker explore, not on every dashboard refresh, and not on raw PII.

  13. Q13SnowflakeMcKinseyDeloitte

    Cortex Analyst returns doubled revenue. First check?

    Solution

    The semantic model grain and joins — same fan-out you would debug in SQL. A bigger warehouse will not fix a bad metric definition.

↑↓ navigate openesc close