Přeskočit na obsah
_CORE
AI & agentní systémy Podnikové informační systémy Cloud & Platform Engineering Datová platforma & integrace Bezpečnost & compliance QA, testování & observabilita IoT, automatizace & robotika Mobilní & digitální produkty Bankovnictví & finance Pojišťovnictví Veřejná správa Obrana & bezpečnost Zdravotnictví Energetika & utility Telco & média Průmysl & výroba Logistika & e-commerce Retail & věrnostní programy
Reference Technologie Blog Know-how Nástroje
O nás Spolupráce Kariéra
CS EN DE
Pojďme to probrat

Slowly Changing Dimensions — správa historických změn v dimenzích

13. 06. 2024 Aktualizováno: 27. 03. 2026 1 min čtení intermediate

Slowly Changing Dimensions řeší otázku: co dělat, když se změní atributy dimenze? Zákazník změní adresu, produkt kategorii — jak zachovat historii a konzistenci reportů.

SCD typy

Type 1 — přepsání

Stará hodnota se přepíše novou. Žádná historie — nejjednodušší, ale ztráta informace.

Type 2 — nový řádek

Při změně se přidá nový řádek s platností (valid_from, valid_to). Kompletní historie.

CREATE TABLE dim_customer_scd2 (
    customer_key    INT PRIMARY KEY,  -- surrogate
    customer_id     VARCHAR(50),      -- natural
    customer_name   VARCHAR(200),
    segment         VARCHAR(50),
    valid_from      DATE NOT NULL,
    valid_to        DATE DEFAULT '9999-12-31',
    is_current      BOOLEAN DEFAULT TRUE
);

-- Historie zákazníka:
-- key=1: Jan Novák, SMB, 2024-01-01 → 2025-06-30
-- key=2: Jan Novák, Enterprise, 2025-07-01 → 9999-12-31 (current)

Type 2 v dbt

-- dbt snapshot pro SCD Type 2
{% snapshot customer_snapshot %}
{{ config(
    target_schema='snapshots',
    unique_key='customer_id',
    strategy='check',
    check_cols=['customer_name', 'segment', 'email'],
) }}
SELECT * FROM {{ source('raw', 'customers') }}
{% endsnapshot %}

Type 3 — přidání sloupce

Přidá se sloupec pro předchozí hodnotu (previous_segment). Omezená historie.

Shrnutí

SCD Type 2 je nejpoužívanější — kompletní historie s valid_from/to. dbt snapshots automatizují implementaci.

scddata modelingdimenzehistorie
Sdílet:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.