A database usually performs the role of a storage component of a complex software solution. Depending on the type of the solution and what problem it aims to solve, the configuration of the database and the data structure can be different. It's common to configure a database and data structure in one of two ways: online transaction processing (OLTP) or online analytical processing (OLAP).
In this chapter, we will discuss some features of PostgreSQL that help implement a data warehouse solution based on a PostgreSQL database, and theoretical concepts related to that, namely:
- OLTP and OLAP: their purpose and differences
- Online analytical processing: What it is and why it's special
- Partitioning: A way to physically organize and manage huge tables
- Parallel query: A feature that increases the speed of query execution
- Index-only scans: A way to...