Datový sklad (Data Warehouse, DWH) je centralizované, historizované a tematicky orientované úložiště, které konsoliduje data z heterogenních zdrojů za účelem podpory analytiky, reportingu, plánování a rozhodování. Na rozdíl od operačních systémů klade důraz na konzistenci, auditovatelnost, časovou dimenzi a výkon analytických dotazů. Základními vlastnostmi jsou integrace, nezávislost na zdrojích, nekonfliktní definice metrik a řízená kvalita dat.
Architektonické vrstvy a topologie
Landing/Raw: izolované uložení surových dat (nejlépe neměnné – „immutable“) v původní granularitě včetně metadat o načtení, původu a schématu.
Staging/Integration: technická integrační vrstva pro čištění, standardizaci a slučování; zde probíhá většina transformační logiky a deduplikace.
Core DWH: stabilizovaný model (hvězda/sněhová vločka/Data Vault), historizace a řízení klíčů; zdroj pro řízené datové marty.
Data Marts: tematicky zaměřené podsady pro konkrétní domény (prodej, finance, marketing) optimalizované pro uživatelské dotazy a BI nástroje.
Semantic/Presentation: sémantická vrstva (definice metrik, role, bezpečnost), která sjednocuje význam metrik napříč nástroji.
Topologie: on-prem MPP, cloudové sklady, lakehouse přístup (object storage + SQL engine), hybridy se separací výpočetní vrstvy a úložiště.
Datové modelování: volba paradigmatu
Dimenzionální model (Kimball): faktové tabulky (měřitelné události, aditivní/semiaditivní) a dimenzní tabulky (kdo, co, kdy, kde, jak). Výhoda – jednoduchost dotazů, výkon agregací.
Data Vault 2.0: Huby (business klíče), Linky (vztahy), Satelity (atributy v čase). Výhoda – odolnost vůči změnám zdrojů, auditovatelnost; nad Data Vaultem se budují mapované hvězdy pro reporting.
Lakehouse: formáty typu Parquet/Delta/Iceberg s ACID vlastnostmi, time-travel a separovaným výpočetním prostředím; flexibilní pro ELT a data science.
Granularita, fakta a dimenze
Granularita (grain): nejnižší úroveň detailu faktu – určující pro budoucí flexibilitu; vždy explicitně definovat (např. „řádek účtenky po položkách“).
Typy faktů: transakční (aditivní), snapshot (stav k datu), „accumulating snapshot“ (životní cyklus procesu).
Dimenze: konformační (sdílené napříč marty), role-playing (např. datum pro prodej i expedici), degenerované (kód v faktu).
Pomalé změny dimenzí (SCD) a historizace
Typ SCD
Chování
Využití
Typ 0
Žádná změna (zafixování)
Historické referenční hodnoty
Typ 1
Přepis (overwrite)
Opravy chyb, nerelevantní historie
Typ 2
Historie v řádcích (valid-from/to, current flag)
Auditovatelné změny pro analytiku
Typ 3
Limitovaná historie ve sloupcích
Porovnání „před/po“ pro vybrané atributy
Hybrid
Kombinace (např. 1+2)
Pragmatická optimalizace
ETL vs. ELT: operační strategie
Aspekt
ETL (Transformace mimo DWH)
ELT (Transformace v DWH/Lake)
Výpočet
Middleware / ETL server
Push-down do MPP / clusteru
Agilita
Silná kontrola, pomalejší změny
Rychlé iterace, SQL / Notebooky
Náklady
Licencování ETL, menší výpočetní cloudové náklady
Spotřeba výpočtů ve skladu
Správa schémat
Upfront modelování
Schema-on-read, pozdější kurátorství
Datové vědy
Méně přirozené
Nativní integrace s lakehouse
Získávání dat: dávka, CDC a streaming
Full/Incremental load: kompletní načtení versus přírůstky podle časových značek (timestamp) či identifikátorů; nutno zohlednit pozdní příchody dat.
CDC (Change Data Capture): logově orientované CDC (binlog/WAL), triggerově založené, na základě timestampů; snižuje zátěž zdrojových systémů.
Streaming: event-driven ingest (Kafka / PubSub), Lambda / Kappa architektury; vyžaduje „exactly-once“ sémantiku a strategie opětovného zpracování.
Čištění, standardizace a slučování (Cleansing & Conformance)
Profilace: kardinalita, vzory, anomálie, referenční integrita; automatizované profilační běhy při změně schématu.