Mám záujem vedieť, či niekto tu má niekedy narazili na situáciu, v ktorej zdrojom nie je vždy jedinečný, pri jednaní s snímky v DBT.
Mám údajov jazero, kde sa dáta príde na pridávať len základ. Zakaždým, keď je zdroj aktualizované, nové nahraté je vytvorený na príslušné tabuľky v údajovom jazero.
V čase DBT riešenie je bežal, môj zdroj by mohol mať viac ako 1 riadok s jedinečným id ako dátový zmenilo viac ako raz od poslednej spustiť.
V ideálnom prípade, by som chcel aktualizovať príslušné dbt_valid_to stĺpcov z snímku tabuľka s najskôr updated_at záznam zo zdroja a následne pridávať nové záznamy na snímku tabuľka takže najnovšie updated_at nahrať aktuálny.
Viem, ako to dosiahnuť použitím funkcie okna, ale nie ste si istí ako zvládnuť takúto situáciu s dbt.
Zaujímalo by ma, či niekto má stretávajú to rovnaký problém, pred.
Snapshot Table
| **id** | **some_attribute** | **valid_from** | **valid_to** |
| 123 | ABCD | 2021-01-01 00:00:00 | 2021-06-30 00:00:00 |
| 123 | ZABC | 2021-06-30 00:00:00 | null |
Source Table
|**id**|**some_attribute**| **updated_at** |
| 123 | ABCD | 2021-01-01 00:00:00 |-> already been loaded to snapshot
| 123 | ZABC | 2021-06-30 00:00:00 |-> already been loaded to snapshot
-------------------------------------------
| 123 | ZZAB | 2021-11-21 00:10:00 |
| 123 | FXAB | 2021-11-21 15:11:00 |
Snapshot Desired Result
| **id** | **some_attribute** | **valid_from** | **valid_to** |
| 123 | ABCD | 2021-01-01 00:00:00 | 2021-06-30 00:00:00 |
| 123 | ZABC | 2021-06-30 00:00:00 | 2021-11-21 00:10:00 |
| 123 | ZZAB | 2021-11-21 00:10:00 | 2021-11-21 15:11:00 |
| 123 | FXAB | 2021-11-21 15:11:00 | null |