Data warehouse is a pretty general term and can encompass a wide range of entities. However, it basically means a very large database that holds important information that is needed by a business. A data warehouse can be as simple as a customer directory or as complex as Google's systems that cache the internet.
There are defined protocols on how to get data into the data warehouse (also known as ETL - Extract Transform and Load) and how to get data out (also known as data mining). Most data warehouses maintain a data dictionary which contains information on what data is stored and what the different fields mean.