Explain the architectural differences between a traditional data warehouse and Snowflake, and how Snowflake handles compute and storage separation.