DEV Community

Cover image for Inside a Data Warehouse: Understanding Its Architecture
Rachel Muriuki
Rachel Muriuki

Posted on

Inside a Data Warehouse: Understanding Its Architecture

DATA WAREHOUSE ARCHITECTURE

Data Warehouse Architecture is the design that describes how data is collected, integrated, stored, managed and delivered for analytical purposes.

Example:
A retail company with separate systems for sales, inventory, human resource and customer management. If management wants to answer questions such as:

  • Which products generate the highest revenue?
  • Which customers spend the most?
  • Which regions are growing fastest?
  • Which marketing campaign produced the highest sales?

The data from these systems first needs to be brought together, cleaned, transformed and organized before it can be analyzed. This is what a data warehouse architecture is designed to accomplish.

Objectives of Data Warehouse Architecture

  • Integrate data from multiple sources such as CRM platforms, ERP systems, websites, mobile applications into a centralized environment
  • Improve data quality and consistency
  • Store historical data for trend analysis
  • Improve query performance by optimizing data
  • Support business intelligence and reporting by providing reliable and consistent data
  • Ensure security and governance through access controls, auditing and data quality standards
  • Scale as the organization's data volumes and number of users grow

The diagram below shows the overall flow of data in a data warehouse architecture.

Data Warehouse Architecture

Components of a Data Warehouse Architecture

1.Data Sources

These are the systems where data is created during an organization's day-to-day operations. They are designed to support transaction processing rather than analytics.

The two categories of data sources are:

Internal Sources - These are systems owned and managed by the organization

  • Enterprise Resource Planning (ERP) systems
  • Customer Relationship Management (CRM) systems
  • Human Resource systems
  • Payroll databases
  • Sales systems
  • Inventory systems
  • Accounting software
  • Manufacturing systems

External Sources - These are data sources outside the organization that provide additional information for analysis.

  • APIs
  • Social media platforms
  • Government databases
  • Weather data
  • Third-party data providers
  • Financial markets
  • Partner organizations

Each source stores data in its own format and structure, making it difficult to analyze the data together.

2.Data Extraction

It's the process of collecting data from all source systems after it has been created. It is the first stage of ETL (Extract, Transform, Load) or ELT (Extract, Load, Transform).

Types of Extraction:

a.Full Extraction - Copies all records from the source system to the data warehouse.

b.Incremental Extraction - Copies only new or modified records since the last extraction.

3.Staging Area

It's a temporary storage location where extracted data is held before it is transformed and loaded into the data warehouse.

It:

  • Receives raw data from source systems.
  • Preserves original data during processing.
  • Isolates transformation activities from operational systems.
  • Supports error handling and recovery

4.Data Transformation

Converts raw data into cleaned, standardized and improved format through:

  • Removing duplicate records
  • Correcting errors
  • Converting currencies or measurement units
  • Standardizing date and number formats
  • Renaming columns
  • Integrating data from multiple sources
  • Handling missing values
  • Creating calculated fields and aggregations

5.Data Loading

The transformed data is loaded into the data warehouse, where it becomes available for reporting, dashboards and analytics.

Types of Data Loading:

a.Initial Load - Occurs when a data warehouse is being populated for the first time. Every available record from the source systems is loaded into the warehouse.

b.Incremental Load - Loads only new or modified records since the last load.

c.Full Refresh - Deletes the existing data from a table and reloads it using the latest data from the source system.

d.Batch Loading - Processes data at scheduled intervals instead of continuously. Data is collected over a period and then loaded together

e.Real-Time Loading - Updates the warehouse almost immediately after new data is generated.

6.Data Warehouse

It's a centralized repository that stores cleaned, transformed, integrated and structured data collected from multiple operational systems.

Characteristics include:

  • Stores historical data for long-term analysis.
  • Organizes data for efficient querying
  • Integrate information from multiple source systems
  • Optimized for reading and analyzing large volumes of data.
  • Supports complex analytical workloads
  • Provides data for business intelligence tools, dashboards, machine learning models and data marts.

Most data warehouses organize data using dimensional modeling, which consists of; Fact Tables and Dimension Tables

7.Metadata Repository

Metadata is data about data. It helps users understand what the data represents, where it came from, how it was produced, who owns it and when it was last updated

Types of Metadata

a.Business Metadata - Describes the business meaning of the data, such as KPI definitions and revenue calculations

b.Technical Metadata - Describes the technical properties of the data, such as table names, column names, data types and source systems

c.Operational Metadata - It tracks warehouse operations such as refresh schedules, ETL job status and load times

8.Data Marts

It's a smaller, specialized version of a data warehouse designed for a specific department or business unit.

Examples include: Finance Mart, Sales Mart, Marketing Mart

9.OLAP Layer

It's the analytical layer that organizes warehouse data into multidimensional structures, enabling users to analyze data quickly from multiple perspectives.

It allows users to perform operations such as slice, dice, drill-down, roll-up and pivot for deeper analysis.

10.Presentation Layer

It presents warehouse data through reports, dashboards, scorecards, KPIs and visualizations, allowing organizations to analyze information and make informed decisions

Common tools used include: Power BI, Tableau, Looker, Apache Superset, Excel, Qlik Sense.

Types of Data Warehouse Architectures

Data warehouse architectures have evolved over time to meet changing business needs, increasing data volumes and advances in technology.

The four common architectures are:

1.Single-Tier Architecture

Stores operational and analytical data in the same database. Instead of having separate systems for transaction processing and analytics, all activities occur within a single environment.

Example: When a customer places an order, the order is stored in the operational database. If a manager wants to view today's sales, the reporting tool queries that same database

2.Two-Tier Architecture

Separates operational systems from analytical storage by introducing a dedicated data warehouse.

Data is extracted from operational systems, transformed and loaded into a centralized warehouse. Users connect directly to the warehouse to run reports and perform analysis.

3.Three-Tier Architecture

Most organizations use a three-tier architecture because it separates data collection, storage and presentation into three layers:

i)Bottom Tier - Responsible for collecting, cleaning and storing data. It includes; Source systems, ETL/ELT pipelines, Staging area, Data warehouse

ii)Middle Tier - Contains the OLAP server and metadata repository. It processes analytical queries efficiently and enables fast multidimensional analysis.

iii)Top Tier - It's the presentation layer where business users create reports, dashboards and visualizations.

4.Modern Cloud Data Warehouse Architecture

As businesses generated more data from mobile applications, IoT devices, social media and cloud services, traditional architectures faced challenges such as:

  • High hardware costs
  • Limited scalability
  • Lengthy infrastructure provisioning
  • Difficult maintenance
  • Separate storage and computing resources
  • Limited support for real-time analytics

To overcome these challenges, organizations adopted modern cloud data warehouse architectures.

The modern architecture separates storage from compute, supports both batch and streaming data and integrates seamlessly with modern data engineering and analytics tools.

Popular platforms include: Snowflake, Google BigQuery, Amazon Redshift, Azure Synapse Analytics, Microsoft Fabric.

Components of a Modern DW Architecture

Data Sources - operational databases, SaaS applications, IoT devices, APIs, event streams and log files.

Data Ingestion - The two ways include:

  • Batch processing – Data is collected and loaded at scheduled intervals
  • Streaming processing – Data is processed continuously as events occur, enabling near real-time analytics.

Cloud Storage - Organizations use scalable storage such as Amazon S3, Azure Data Lake Storage or Google Cloud Storage which can store virtually unlimited amounts of data.

Transformation Layer - Modern pipelines use ELT, where raw data is loaded into cloud storage first and transformed later using tools such as SQL engines, Apache Spark or dbt

Cloud Data Warehouse - Stores transformed data in a scalable analytical database that supports fast SQL queries, reporting, machine learning and business intelligence.

Analytics & BI Layer - Business intelligence tools, dashboards and machine learning models access the cloud data warehouse to generate reports and insights.

Conclusion

Understanding data warehouse architecture means understanding the journey that data takes before it becomes trusted information for decision-making. Every layer, from ingestion to presentation, contributes to ensuring that analytics are accurate, timely and scalable. These components enable organizations to make informed decisions while giving data professionals the foundation to build reliable and scalable analytical systems.

Top comments (0)