Data warehouses, also called enterprise data warehouses (EDW), are highly parallel SQL or NoSQL databases designed for analysis. They let you import data from multiple sources and generate complicated reports quickly from petabytes of data.
The difference between a data warehouse and a data mart is that, typically, a data mart is limited to a single topic and a single department. The difference between a data warehouse and a data lake is that a data lake stores data in its natural format, often blobs or files, while a data warehouse stores data as a database.
Snowflake in brief
Snowflake is a fully relational ANSI SQL data warehouse that was built from the ground up for the cloud. Its architecture separates compute from storage so that you can scale up and down on the fly, without delay or disruption, even while queries are running. You get the performance you need exactly when you need it, and you only pay for the compute you use. Snowflake currently runs on Amazon Web Services and Microsoft Azure.