Prepstellar

COF-C03 · Architecture Features and Compute

21 cards

Platform Architecture and Cloud Services

Swipe, scroll or use ← →
  1. Understand what you are and are not responsible for

    Before you tune anything in Snowflake, you need to know which side of the line each task sits on. Snowflake is a self-managed service that combines data storage, processing, and analytics in one platform, and that service model decides what a customer never has to do.

    Customers do not select, install, configure, or manage physical or virtual hardware for the service. Snowflake handles ongoing maintenance, management, upgrades, tuning, software updates, and infrastructure.

    Handled by Snowflake Still decided by you
    Selecting and installing hardware Which SQL statements to run
    Configuring and managing that hardware Which tables a query reads
    Maintenance, upgrades, and tuning Which warehouse supplies the compute
    Software updates and infrastructure How workloads are separated

    The service model removes infrastructure work, not workload decisions. You still choose what to run and where to run it.

    1 / 21
  2. Understand what you are and are not responsible for

    The service uses public-cloud infrastructure for virtual compute instances and persistent data storage. That choice has a hard consequence for deployment planning: Snowflake cannot be installed and run locally or on private-cloud infrastructure, whether that infrastructure is on-premises or hosted.

    "Hosted" does not create an exception. A private cloud that someone else operates is still a private cloud, so the answer to "can we install it in our own hosted private cloud?" is no.

    Two requests that sound similar therefore land very differently:

    • "Keep our persistent table data on public-cloud storage and let Snowflake patch it." — this is exactly the documented model.
    • "Install the Snowflake engine inside our hosted private cloud." — this conflicts with the service model, and no configuration setting changes that.
    2 / 21
  3. Quick check

    An architect proposes four options for a new Snowflake project. Which one conflicts with the service model?

    1. APersisting table data on public-cloud storage

      Public-cloud infrastructure is exactly where the service holds persistent data, so this matches the model.

    2. BInstalling Snowflake on hosted private-cloud infrastructure

      Right. Snowflake cannot be installed and run locally or on private-cloud infrastructure, and a hosted private cloud is no exception.

    3. CLetting Snowflake apply software updates and manage infrastructure

      Snowflake-managed updates, maintenance, and infrastructure are defining advantages of the self-managed service.

    3 / 21

  4. See why the architecture is a hybrid

    Traditional systems force a trade. Shared-disk designs keep one copy of the data that every node can read, which is simple to manage but concentrates work. Shared-nothing designs spread data across nodes for parallel speed, but every node then owns a slice, which complicates management.

    Snowflake combines characteristics of both. Like a shared-disk system, it keeps persisted data in a central repository that all compute nodes can access. Like a shared-nothing system, it processes queries with massively parallel processing compute clusters whose nodes keep a portion of the data set locally.

    Trait borrowed From What it buys
    Central repository for persisted data, reachable by every compute node Shared disk Data-management simplicity
    Query processing by MPP clusters, each node holding a portion of the data set locally Shared nothing Performance and scale-out

    This design joins the data-management simplicity of shared disk with the performance and scale-out benefits of shared nothing.

    4 / 21
  5. See why the architecture is a hybrid

    The word "locally" is where learners usually slip. A node holding a portion of the data set during massively parallel processing is not the same thing as a cluster owning a permanent private copy of the table.

    Keep the two ideas separate:

    • Persisted data lives once, centrally, and every compute node can reach it.
    • Processing data is distributed across the nodes of an MPP cluster while a query runs.

    That is precisely why the hybrid works: management stays centralized while execution stays parallel.

    5 / 21
  6. Quick check

    Why is Snowflake described as a hybrid of shared-disk and shared-nothing architectures?

    1. AIt combines a central repository for persisted data with MPP compute clusters whose nodes hold a portion of the data locally

      Right. Central persisted storage is the shared-disk characteristic and MPP query processing is the shared-nothing characteristic.

    2. BIt stores a full permanent copy of every table inside each compute cluster

      Persisted data stays in one central repository; nodes hold portions of the data set during processing, not full permanent copies.

    3. CIt replaces central storage with private local disks attached to one shared server

      Snowflake uses public-cloud infrastructure and parallel clusters, not local private disks behind a single server.

    6 / 21

  7. Map the three layers

    The architecture has three key layers: database storage, compute, and cloud services. Each one owns a different question, and most exam scenarios are solved by deciding which question is being asked.

    Layer Owns Typical evidence in a scenario
    Database storage How persisted table data is represented and organized File size, compression, columnar format, micro-partitions, statistics
    Compute Which resources execute the work Warehouses, isolation, query execution
    Cloud services How the request is coordinated Sign-in, authentication, metadata, parsing, optimization, dispatch

    Networking, client drivers, user hardware, and local storage are not architectural layers. When an option offers those instead, it is describing the surroundings of the platform rather than its structure.

    7 / 21
  8. Quick check

    Which set names the three architectural layers?

    1. ADatabase storage, networking, and client drivers

      Networking and client drivers are not layers of the architecture; compute and cloud services are missing here.

    2. BCloud services, local storage, and user hardware

      Persisted data lives in cloud storage rather than a local-storage layer, and user hardware is not part of the architecture.

    3. CDatabase storage, compute, and cloud services

      Right. The three key layers are database storage, compute, and cloud services.

    8 / 21

  9. Keep your progress in the app

    That’s 3 of 8 quick checks. In the app they stay answered, and every lesson remembers where you left off.

  10. Let database storage own the physical detail

    When data is loaded into a Snowflake table, Snowflake reorganizes it into an optimized, compressed, columnar format in cloud storage. From that point on, the physical representation is the platform's responsibility, not the customer's.

    Snowflake manages storage organization, file size, structure, compression, metadata, and statistics. Snowflake tables are also automatically divided into contiguous storage units called micro-partitions.

    So a team that asks to set file size, compression, and internal organization by hand for every table is asking for work that the platform already performs. The optimized representation persists in cloud storage; it is not something each warehouse configures, each client driver negotiates, or each query rebuilds before it runs.

    9 / 21
  11. Let database storage own the physical detail

    Storage owns representation only. It does not authenticate anybody and it does not execute anything.

    Task Layer that owns it
    Compressed columnar representation and storage metadata Database storage
    Micro-partitioning of table data Database storage
    Parsing SQL and dispatching an optimized query Cloud services
    Authenticating the user who submitted a request Cloud services
    Supplying the independent cluster that runs the statement Compute

    Reading the table down this axis settles most questions quickly: anything about identity belongs to cloud services, anything about execution resources belongs to compute, and everything about how bytes are laid out belongs to storage.

    10 / 21
  12. Quick check

    A team wants to set the file size, compression, and internal organization of every Snowflake table manually. What should the architect explain?

    1. AEach virtual warehouse must configure those storage details independently

      Warehouses supply execution resources; they do not govern how persistent table data is laid out.

    2. BEvery query rebuilds those details before execution begins

      The optimized representation persists in cloud storage rather than being recreated for each query.

    3. CSnowflake manages organization, file size, structure, compression, metadata, and statistics for table data

      Right. Data loaded into a Snowflake table is reorganized into an optimized, compressed, columnar form whose storage details Snowflake manages.

    11 / 21

  13. Use compute for isolation

    A virtual warehouse is a cluster of compute resources that processes SQL statements and can run Java, Python, and Scala code through Snowpark. It is the layer that actually executes work.

    Its defining property is independence: each virtual warehouse is an independent compute cluster that does not share compute resources with other virtual warehouses. Consequently, the workload on one virtual warehouse does not affect the performance of another virtual warehouse.

    That single property answers a whole family of design questions. If two teams query the same persisted tables but one team's heavy workload must not slow the other down, give each team its own warehouse. They keep reading the same central data, and only their compute is separated.

    12 / 21
  14. Use compute for isolation

    Notice what the isolation is not. Warehouses do not each own a private persistent copy of the tables, they do not merge into one pool that is divided by priority, and they do not start sharing nodes because they happen to read the same table.

    Proposed fix for a noisy-neighbour workload Verdict
    Give each team an independent virtual warehouse Works: compute is isolated while data stays centrally accessible
    Put both teams on the same warehouse cluster Fails: they contend for that warehouse's finite compute
    Copy every table into each warehouse's own persistent storage Fails: persisted data is central, not warehouse-owned
    Provision a separate cloud-services layer per team Fails: cloud services coordinates the platform and is not a per-team isolation unit
    13 / 21
  15. Quick check

    Two teams query the same persisted tables, but one team's heavy workload must not reduce the other team's compute performance. What addresses this?

    1. APlace both teams on the same warehouse cluster and set query priorities

      One warehouse means one finite set of compute resources shared by both workloads, which is the problem being solved.

    2. BCopy every table into storage owned by each team's warehouse

      Persisted data stays in a central repository reachable by all compute nodes; warehouses do not own separate persistent copies.

    3. CGive each team its own independent virtual warehouse

      Right. Independent warehouses do not share compute resources, so one workload cannot affect the other while both read the same central data.

    14 / 21

  16. Let cloud services coordinate the request

    The cloud services layer coordinates activity across Snowflake and ties the components together for requests from sign-in through query dispatch. It is the layer you never provision and always use.

    It manages security, authentication, access control, infrastructure coordination, metadata, query parsing, query optimization, and regulatory compliance. Like the rest of the platform, it runs on compute instances provisioned by Snowflake from the cloud provider, so it is not something a customer sizes or installs.

    A useful shorthand: cloud services decides what should happen; a warehouse makes it happen; storage keeps what happened.

    15 / 21
  17. Quick check

    Which activity is coordinated by the cloud services layer?

    1. AAuthenticating a request and optimizing its query

      Right. Cloud services manages security, authentication, access control, metadata, parsing, and query optimization.

    2. BPersisting table rows in compressed columnar form

      Compressed columnar persistence is managed by the database-storage layer.

    3. CExecuting the statement on an independent warehouse cluster

      Execution resources are supplied by the selected virtual warehouse in the compute layer.

    16 / 21

  18. Follow one request through the layers

    Putting the layers in order turns the architecture into a sequence you can narrate.

    For a query request, cloud services performs coordination such as authentication, metadata handling, parsing, optimization, and dispatch. The selected virtual warehouse then supplies the independent compute resources that execute the work. Persisted table data remains in centrally accessible cloud storage rather than being owned by one warehouse.

    Step Layer What happens
    1 Cloud services The request is authenticated and access is checked
    2 Cloud services Metadata is consulted, the SQL is parsed and optimized
    3 Cloud services The work is dispatched to the selected warehouse
    4 Compute The warehouse's independent resources execute the statement
    5 Database storage Persisted data stays centrally accessible throughout
    17 / 21
  19. Follow one request through the layers

    The handoff at step 3 is the one worth memorizing. If a request has been authenticated and parsed but nothing has executed yet, what comes next is dispatch to the selected warehouse.

    The alternatives are all layer confusions:

    • Database storage does not authenticate requests on compute nodes; authentication is a cloud-services function.
    • A warehouse does not relocate persisted data into private-cloud storage; the data stays in centrally accessible public-cloud storage.
    • A client driver does not optimize and execute the query on its own; optimization is coordinated by cloud services and execution that needs compute uses a warehouse.

    This separation is the payoff of the whole design: it lets multiple independent warehouses access the same persisted data while isolating their compute resources.

    18 / 21
  20. Quick check

    A request has been authenticated and parsed, but no execution resources have run the SQL yet. What happens next?

    1. AA client driver optimizes and executes the query without using compute

      Optimization is coordinated by cloud services, and execution that requires compute is performed by a warehouse.

    2. BCloud services dispatches the work to the selected virtual warehouse

      Right. Cloud services coordinates authentication, parsing, optimization, and dispatch, and the selected warehouse then supplies execution compute.

    3. CDatabase storage authenticates the request again on a compute node

      Authentication belongs to cloud services and is not repeated by the storage layer on a query node.

    19 / 21

  21. Key takeaways

    • Snowflake is a self-managed public-cloud service. Customers do not select, install, configure, or manage the hardware, and the platform cannot be installed locally or on private-cloud infrastructure, whether on-premises or hosted.
    • The hybrid architecture combines centrally accessible persisted storage with massively parallel compute clusters, giving shared-disk simplicity together with shared-nothing performance and scale-out.
    • Database storage persists managed data, reorganized into an optimized, compressed, columnar format and divided into micro-partitions, with organization, file size, structure, compression, metadata, and statistics handled by Snowflake.
    • Virtual warehouses execute work independently, so one warehouse's workload does not affect another's performance even when both read the same tables.
    • Cloud services coordinates requests and platform-wide services, from sign-in and access control through metadata, parsing, optimization, and dispatch.
    20 / 21
  22. Quick check

    Which summary keeps the three layers in their correct roles?

    1. ACloud services coordinates the request, a warehouse executes it in isolation, and storage keeps the managed data central

      Right. Coordination, isolated execution, and central managed persistence are the distinct roles of the three layers.

    2. BWarehouses own a private copy of each table, storage parses the SQL, and cloud services executes every statement

      Persisted data is central rather than warehouse-owned, parsing belongs to cloud services, and execution belongs to compute.

    3. CClient drivers dispatch queries, each warehouse installs its own infrastructure, and storage authenticates the user

      Dispatch and authentication are cloud-services functions, and Snowflake provisions the infrastructure rather than each warehouse.

    21 / 21

  23. 8 quick checks · then the test

    In the app, finishing the quick checks opens this lesson’s 10-question test, and the ones you miss come back exactly when you’re about to forget them.

The whole course, on your phone

Lessons you can read, audio you can listen to on the way to work, and practice that remembers what you got wrong.