Jaco van der Laan

PSA vs HSA: Clearing Up the Confusion in Data Historization

22/09/2025  ·  Data Architecture  ·  Data Engineering  ·  Data Modeling

article base/historisation-temporal
‹ ›

Why the Persistent Staging Area (PSA) is not the same as a Historical Staging Area (HSA), and how this distinction connects to modern historization patterns like bi-temporal SCD2.

Summary

In data architecture discussions, the terms Persistent Staging Area (PSA) and Historical Staging Area (HSA) are often used interchangeably. But they are not the same thing.

A PSA simply preserves raw data extracts for audit and recovery.

An HSA historizes data in a structured, queryable way — often with views to make the history directly consumable.

This difference is critical when designing scalable, model-driven historization patterns like Dual SCD2 and Exposure Views.

What is a Persistent Staging Area (PSA)?

The PSA concept (often attributed to Dan Linstedt’s Data Vault approach) is straightforward:

  • Store a raw, persistent copy of incoming source data.
  • Keep every extract, every load, without overwriting.
  • Use it as an insurance policy — if source systems go down, you can reprocess from the PSA.

✅ Strengths:

  • Great for auditing and compliance.
  • Prevents data loss.

❌ Weaknesses:

  • Not business-friendly.
  • Queries are cumbersome, requiring heavy downstream modeling.
  • Acts as a “dumping ground” more than a usable data layer.

Think of PSA as cold storage for data history.

What is a Historical Staging Area (HSA)?

The HSA, introduced by Roelant Vos in his Virtual Data Warehousing training and on his blog, goes further:

  • Still preserves history, but aligned to business keys.
  • Changes are tracked with validity ranges (valid-from/valid-to).
  • Views on top of the HSA make history directly queryable and analyzable.

✅ Strengths:

  • Usable history out-of-the-box.
  • Reduces need for heavy Data Vault remodeling.
  • Can act as a virtual integration layer.

❌ Weaknesses:

  • Requires more upfront design than PSA.
  • Needs governance around historization logic.

Think of HSA as a living archive — history that’s preserved and consumable.

PSA vs HSA vs Bi-Temporal SCD2

Why This Distinction Matters

If you confuse PSA with HSA, you risk two problems:

  1. Over-engineering PSA into something it isn’t — expecting business queries from a raw dump.
  2. Underestimating HSA — treating it as “just a persistent staging,” when in reality it’s a precursor to modern historization patterns.

In my work on From Historization to Exposure, this distinction is key. We don’t just want history for backup; we want usable, bi-temporal history that can serve business needs directly.

Connecting to Bi-Temporal SCD2

The HSA was, in many ways, a bridge:

  • PSA = store everything.
  • HSA = historize and expose via views.
  • Bi-Temporal SCD2 = formalize historization with system-time and business-time dimensions.

This progression shows a clear evolution of historization patterns — moving from storage, to usability, to governed bi-temporal architectures.

Conclusion

The confusion between PSA and HSA is more than semantics. It reflects how our field is evolving:

  • From raw storage (PSA),
  • To queryable historization (HSA),
  • To bi-temporal architectures (SCD2) that support real business use cases.

Roelant Vos’s HSA anticipated this shift. My work on dual SCD2 and exposure views builds on the same principle: history should not only be preserved — it should be usable, governed, and business-shaped.

📝 Summary

  • PSA = persistent storage of raw extracts.
  • HSA = historized, queryable staging with views.
  • Bi-Temporal SCD2 = full formalization of system and business time.

Understanding these differences helps avoid architectural confusion and design data platforms that make history truly usable.