Dotazovať údaje tak, ako existovali v minulosti
Vzťahuje sa na:✅ Warehouse v službe Microsoft Fabric
Sklad v službe Microsoft Fabric ponúka možnosť dotazovať historické údaje tak, ako boli v minulosti. Možnosť dotazovať údaje z konkrétnej časovej pečiatky je v odvetví skladovania údajov známa ako cestovanie v čase.
- Cestovanie v čase uľahčuje stabilné vytváranie zostáv udržiavaním konzistencie a presnosti údajov v priebehu času.
- Cestovanie podľa času umožňuje analýzu historických trendov tým, že dotazuje rôzne minulé body v čase a pomáha predvídať budúce trendy.
- Cestovanie podľa času zjednodušuje porovnania nízkych nákladov medzi predchádzajúcimi verziami údajov.
- Pomôcky pre cestovanie v čase pri analýze výkonu v priebehu času.
- Cestovanie v čase umožňuje organizáciám auditovať zmeny údajov v priebehu času, čo je často potrebné na účely dodržiavania súladu.
- Cestovanie v čase pomáha reprodukovať výsledky z modelov strojového učenia.
- Cestovanie časom môže dotazovať tabuľky tak, ako existovali v konkrétnom časovom bode v rámci viacerých skladov v tom istom pracovnom priestore.
Čo je cestovanie v čase?
Cestovanie v čase v sklade údajov predstavuje nízku cenu a efektívnu možnosť rýchleho dotazovania predchádzajúcich verzií údajov.
Microsoft Fabric v súčasnosti umožňuje načítanie predchádzajúcich stavov údajov nasledujúcimi spôsobmi:
Cestovanie v čase pomocou príkazu PRE TIMESTAMP AS OF T-SQL
V rámci položky skladu je možné tabuľky dotazovať pomocou syntaxe OPTION FOR TIMESTAMP AS of T-SQL na načítanie údajov v minulých časových bodoch. Klauzula FOR TIMESTAMP AS OF
má vplyv na celý príkaz vrátane všetkých spojených tabuliek skladu.
Výsledky získané z dotazov na cestovanie časom sú vo svojej podstate iba na čítanie. Operácie zapisovania, ako napríklad INSERT, UPDATE a DELETE, sa nemôžu vyskytnúť pri využívaní tipu dotazu PRE TIMESTAMP AS OF.
Použite klauzulu OPTION na zadanie tipu dotazu FOR TIMESTAMP AS OF. Dotazy vracajú údaje presne tak, ako existovali v časovej pečiatke, zadanú ako YYYY-MM-DDTHH:MM:SS[.fff]
. Napríklad:
SELECT *
FROM [dbo].[dimension_customer] AS DC
OPTION (FOR TIMESTAMP AS OF '2024-03-13T19:39:35.28'); --March 13, 2024 at 7:39:35.28 PM UTC
CONVERT
Syntax použite pre potrebný formát datetime so štýlom 126.
Časovú pečiatku možno zadať iba raz pomocou OPTION
klauzuly pre dotazy, uložené procedúry, zobrazenia atď. Výraz OPTION
sa vzťahuje na všetko v príkaze SELECT .
Ukážky nájdete v téme Ako: Dotazovanie pomocou cestovania v čase.
Uchovávanie údajov
V službe Microsoft Fabric sklad automaticky zachová a udržiava rôzne verzie údajov, a to až do predvoleného obdobia uchovávania 30 kalendárnych dní. To umožňuje dotazovať tabuľky v akomkoľvek predchádzajúcom časovom okamihu. Všetky vloženia, aktualizácie a odstránenia vykonané do skladu údajov sa zachovajú. Uchovávanie údajov sa automaticky začína od chvíle vytvorenia skladu. Súbory s uplynutou platnosťou sa automaticky odstránia po prahovej hodnote uchovávania údajov.
- V súčasnosti príkaz
SELECT
s tipom dotazuFOR TIMESTAMP AS OF
vráti najnovšiu verziu schémy tabuľky. - Všetky záznamy, ktoré sa odstránia z tabuľky, sú k dispozícii na dotazovanie v rovnakom formáte, v akom existovali pred odstránením, ak sa odstránenie nachádza v období uchovávania údajov.
- Akékoľvek úpravy schémy tabuľky, vrátane (okrem iného) pridávania alebo odstraňovania stĺpcov z tabuľky, nie je možné pred zmenou schémy dotazovať. Podobne sa odstránením a opätovným vytvorení tabuľky s rovnakými údajmi odstráni jej história.
Scenáre cestovania v čase
V nasledujúcich scenároch zvážte možnosť cestovania na čas do predchádzajúcich údajov:
Stabilné vykazovanie
Na to, aby ste mali neustále sa meniace prostredie údajov, je nevyhnutné časté vykonávanie úloh extrahovania, transformácie a načítania (ETL). Možnosť cestovania časom podporuje tento cieľ tým, že zaisťuje integritu údajov a zároveň poskytuje flexibilitu generovania zostáv na základe výsledkov dotazov, ktoré sa vrátia v minulosti, ako napríklad predchádzajúci večer, zatiaľ čo prebieha spracovanie na pozadí.
Aktivity ETL sa môžu spúšťať súbežne, zatiaľ čo rovnaká tabuľka je dotazovaná ako z predchádzajúceho časového okamihu.
Historický trend a prediktívna analýza
Cestovanie časom zjednodušuje analýzu historických údajov a pomáha odhaliť hodnotné trendy a vzory prostredníctvom dotazovania údajov v rôznych časových rámcoch v minulosti. Toto uľahčuje prediktívnu analýzu povolením experimentovania s historickými množinami údajov a trénovaním prediktívnych modelov. Podporuje predvídanie budúcich trendov a pomáha prijímať informované rozhodnutia podložené údajmi.
Analýza a porovnanie
Cestovanie v čase ponúka efektívnu a nákladovo efektívnu schopnosť riešenia problémov tým, že poskytuje historické šošovky na analýzu a porovnanie, čím sa uľahčuje identifikácia hlavnej príčiny.
Analýza výkonu
Cestovanie v čase môže pomôcť analyzovať výkon nadčasov v skladových dotazoch. Týmto sa pomáhajú identifikovať trendy zhoršenia výkonu, na základe ktorých je možné dotazy optimalizovať.
Auditovanie a dodržiavanie súladu
Cestovanie v čase zjednodušuje postupy auditovania a dodržiavania súladu tým, že umožňuje audítorom prechádzať históriou údajov. Pomôže to nielen zachovať súlad s nariadeniami, ale tiež zvýšiť mieru záruk a transparentnosti.
Modely strojového učenia
Možnosti cestovania v čase pomáhajú reprodukovať výsledky modelov strojového učenia uľahčením analýzy historických údajov a simuláciou scenárov z reálneho sveta. Zvýši sa tým celková spoľahlivosť modelov, aby sa mohli vykonať presné rozhodnutia založené na údajoch.
Dôležité informácie týkajúce sa návrhu
Dôležité informácie o možnosti PRE ČASOVÚ PEČIATKU Z dôvodu tipu dotazu:
- Pomôcka
FOR TIMESTAMP AS OF
dotazu sa nedá použiť na vytvorenie zobrazení v akomkoľvek predchádzajúcom časovom bode v rámci obdobia uchovávania údajov. Môže sa použiť na dotazovanie zobrazení v priebehu minulého času v rámci obdobia uchovávania údajov. - Pomôcku
FOR TIMESTAMP AS OF
dotazu možno použiť iba raz v rámciSELECT
príkazu. - Pomôcku
FOR TIMESTAMP AS OF
dotazu možno definovať v rámciSELECT
príkazu v uloženej procedúre.
Povolenia na cestovanie v čase
Každý používateľ, ktorý má roly správcu, člena, prispievateľa alebo čitateľa, môže dotazovať tabuľky v minulosti. Keď používatelia dotazujú tabuľky, automaticky sa vynucujú obmedzenia vynútené zabezpečením na úrovni stĺpcov, zabezpečením na úrovni riadkov (RLS) alebo dynamickým maskovaním údajov.
Obmedzenia
V časovej pečiatke zadajte najviac tri číslice zlomkových sekúnd. Ak zadáte väčšiu presnosť, zobrazí sa chybové hlásenie
An error occurred during timestamp conversion. Please provide a timestamp in the format yyyy-MM-ddTHH:mm:ss[.fff]. Msg 22440, Level 16, State 1, Code line 29
.V súčasnosti sa na cestovanie v čase používa iba časové pásmo UTC (koordinovaný svetový čas).
V súčasnosti je uchovávanie údajov pre dotazy na pracovné cesty v čase tridsať kalendárnych dní.
FOR TIMESTAMP AS OF
hodnoty v klauzuleOPTION
musia byť deterministické. Príklad parametrizácie nájdete v téme Cesty v čase v uloženej procedúre.Cestovanie v čase nie je podporované pre koncový bod analýzy SQL pre Lakehouse.
Syntax
OPTION FOR TIMESTAMP AS OF
možno použiť iba v dotazoch, ktoré začínajú príkazomSELECT
. Dotazy akoINSERT INTO SELECT
aCREATE TABLE AS SELECT
nie je možné použiť spolu s dotazmiOPTION FOR TIMESTAMP AS OF
. Zvážte namiesto toho možnosť Naklonovať tabuľku skladu v určitom časovom okamihu.Definície zobrazenia nemôžu obsahovať
OPTION FOR TIMESTAMP AS OF
syntax. Zobrazenie je možné dotazovať pomocou syntaxeSELECT .. FROM <view> ... OPTION FOR TIMESTAMP AS OF
. Nemôžete však dotazovať minulé údaje z tabuliek v zobrazení z pred vytvorením zobrazenia.FOR TIMESTAMP AS OF
Syntax pre presun v čase nie je v súčasnosti podporovaná v režime priameho dotazu aplikácie Power BI Desktop ani v možnosti Preskúmať tieto údaje .