To put it most simply a Virtual Warehouse or more commonly known as ‘Warehouse’, is a cluster of compute resources within the Snowflake ecosystem. The Warehouse provides all the essential resources such as the CPU, Memory and Temporary Storage. In a traditional server this would be an MPP server which are used to execute user queries.
Figure 1: Snowflake Architecture
Why are these important? Well, they allow the users to, for example, execute and perform SQL SELECT statements, update tables, upload data and a variety of other essential tasks. Now, in order to even run one operation within Snowflake, A virtual warehouse must be running. Think of the tasks at hand as if you’re working within a physical warehouse. In an actual warehouse, the electricity and workers need to be onsite when the warehouse is operational for them to start being operational, the same can be said of Snowflakes Virtual Warehouses
Warehouses are required for all queries, DML operations and any loading of data into Snowflakes Table Schema. The warehouses are categorized by their size and the bigger the size of warehouse the more money it takes to run on snowflake. Furthermore, the bigger warehouses have other properties which can be set up to help control and automate the warehouse activity such as the data loading.
The unique property that snowflake virtual Warehouses have is that they can be started and stopped at any time and they can also be resized even whilst they are running to match the organization or project needs.
The benefits of Virtual Warehousing within the Snowflake Architecture include the flexibility of the virtual warehouses as any number can be deployed and sized to match each function that needs to be ru. This means less waste. There is zero contention for resources within the snowflake architecture compared with traditional physical database architectures where multiple groups have to share the same resources on the machine. Snowflake charges per second after the first minute meaning you only pay for the computing resources that you consume. In summary , the virtual warehousing within snowflake is flexible both in use and in price and is a level-up from traditional database structures in terms of contention and the elastic sizing .