Adatok lekérdezése a múltban
A következőre vonatkozik:✅ Warehouse a Microsoft Fabricben
A Microsoft Fabric raktára lehetővé teszi az előzményadatok lekérdezését a múltban. Az adatraktározási iparágban időutazásként ismert, hogy egy adott időbélyegből lekérdezhetők az adatok.
- Az időutazás az adatok konzisztenciájának és pontosságának fenntartásával elősegíti a stabil jelentéskészítést.
- Az időutazás lehetővé teszi a korábbi trendek elemzését azáltal, hogy lekérdezi az idő különböző pontjait, és segít előrejelezni a jövőbeli trendeket.
- Az időutazás leegyszerűsíti a korábbi adatverziók alacsony költségű összehasonlítását.
- Időutazási segédletek a teljesítmény időbeli elemzéséhez.
- Az időutazás lehetővé teszi a szervezetek számára, hogy idővel naplózják az adatváltozásokat, ami gyakran megfelelőségi célokból szükséges.
- Az időutazás segít reprodukálni a gépi tanulási modellek eredményeit.
- Az időutazás lekérdezheti a táblákat, mivel azok egy adott időpontban voltak ugyanazon a munkaterületen több raktáron.
Mi az időutazás?
Az adattárházban az időutazás alacsony költségű és hatékony lehetőség az adatok korábbi verzióinak gyors lekérdezésére.
A Microsoft Fabric jelenleg a következő módokon teszi lehetővé a korábbi adatállapotok lekérését:
- Az utasítás szintjén a FOR TIMESTAMP AS OF
- A tábla szintjén a CLONE TABLE (KLÓNOZÁSI TÁBLA) táblával
Időutazás a FOR TIMESTAMP AS OF T-SQL paranccsal
Egy Raktárelemen belül a táblák lekérdezhetők a T-SQL-szintaxis IDŐBÉLYEGZŐJE lehetőséggel az adatok múltbeli időpontokban való lekéréséhez. A FOR TIMESTAMP AS OF
záradék hatással van a teljes utasításra, beleértve az összes csatlakoztatott raktártáblát is.
Az időutazási lekérdezésekből kapott eredmények eredendően írásvédettek. Az olyan írási műveletek, mint az INSERT, az UPDATE és a DELETE, nem fordulhatnak elő a FOR TIMESTAMP AS OF lekérdezési tipp használata során.
Az OPTION záradék használatával adja meg a FOR TIMESTAMP AS OF lekérdezési tippet. A lekérdezések pontosan úgy adják vissza az adatokat, ahogyan az az időbélyegben is létezett, a következőként YYYY-MM-DDTHH:MM:SS[.fff]
megadva: . Példa:
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
Használja a szintaxist CONVERT
a szükséges dátum/idő formátumhoz a 126-os stílussal.
Az időbélyeg csak egyszer adható meg a OPTION
lekérdezések, tárolt eljárások, nézetek stb. záradékával. Ez OPTION
a SELECT utasításon belül mindenre vonatkozik.
A mintákért lásd : Hogyan: Lekérdezés időutazás használatával.
Adatmegőrzés
A Microsoft Fabricben egy raktár automatikusan megőrzi és karbantartja az adatok különböző verzióit, akár harminc naptári napig tartó alapértelmezett megőrzési időtartamig. Ez lehetővé teszi a táblák lekérdezését bármely korábbi időpontban. Az adattárházba beszúrt összes beszúrás, frissítés és törlés megmarad. A megőrzés automatikusan a raktár létrehozásának pillanatától kezdődik. A lejárt fájlok a megőrzési küszöbérték után automatikusan törlődnek.
- Jelenleg egy
SELECT
lekérdezésiFOR TIMESTAMP AS OF
tippet tartalmazó utasítás a táblaséma legújabb verzióját adja vissza. - A táblákban törölt rekordok lekérdezhetők a törlés előtt, ha a törlés a megőrzési időszakon belül van.
- A tábla sémájának módosításai , beleértve, de nem kizárólag oszlopok hozzáadását vagy eltávolítását a táblából, nem kérdezhetők le a séma módosítása előtt. Hasonlóképpen, az ugyanazon adatokkal rendelkező táblák elvetése és újra létrehozása eltávolítja az előzményeit.
Időutazási forgatókönyvek
Fontolja meg a korábbi adatokra való időutazás lehetőségét a következő helyzetekben:
Stabil jelentéskészítés
A kinyerési, átalakítási és betöltési (ETL-) feladatok gyakori végrehajtása elengedhetetlen a folyamatosan változó adatkészlettel való lépést. Az időutazás képessége támogatja ezt a célt azáltal, hogy biztosítja az adatintegritást, miközben rugalmasan hozhat létre jelentéseket a múltbeli időpontban visszaadott lekérdezési eredmények alapján, például az előző este, miközben a háttérfeldolgozás folyamatban van.
Az ETL-tevékenységek egyidejűleg is futtathatók, miközben ugyanazt a táblát lekérdezik egy korábbi időponthoz hasonlóan.
Előzmény trend és prediktív elemzés
Az időutazás leegyszerűsíti az előzményadatok elemzését, és segít feltárni az értékes trendeket és mintázatokat az adatok különböző múltbeli időkeretek közötti lekérdezésével. Ez megkönnyíti a prediktív elemzést azáltal, hogy lehetővé teszi a korábbi adathalmazokkal való kísérletezést és a prediktív modellek betanítását. Segíti a jövőbeli trendek előrejelzését, és segít a megalapozott, adatvezérelt döntések meghozatalában.
Elemzés és összehasonlítás
Az időutazás hatékony és költséghatékony hibaelhárítási képességet nyújt azáltal, hogy előzménylencsét biztosít az elemzéshez és összehasonlításhoz, megkönnyítve a kiváltó ok azonosítását.
Teljesítményelemzés
Az időutazás segíthet a raktári lekérdezések túlóra teljesítményének elemzésében. Ez segít azonosítani a teljesítménycsökkenési trendeket, amelyek alapján a lekérdezések optimalizálhatók.
Naplózás és megfelelőség
Az időutazás leegyszerűsíti a naplózási és megfelelőségi eljárásokat azáltal, hogy lehetővé teszi az auditoroknak az adatelőzmények közötti navigálást. Ez nemcsak a szabályozásoknak való megfelelést segíti elő, hanem a megbízhatóság és az átláthatóság növelését is.
Gépi tanulási modellek
Az időutazási képességek segítenek a gépi tanulási modellek eredményeinek reprodukálásában azáltal, hogy megkönnyítik az előzményadatok elemzését és a valós forgatókönyvek szimulálását. Ez javítja a modellek általános megbízhatóságát, hogy pontos, adatvezérelt döntéseket lehessen hozni.
Kialakítási szempontok
Megfontolandó szempontok az IDŐBÉLYEG MINT lekérdezési tipp beállításához:
- A
FOR TIMESTAMP AS OF
lekérdezési tipp nem használható a nézetek létrehozására a megőrzési időszakon belüli bármely korábbi időpontban. A megőrzési időszakon belül a nézetek lekérdezésére használható az elmúlt időponttól kezdve. - A
FOR TIMESTAMP AS OF
lekérdezési tipp csak egyszer használható egy utasításonSELECT
belül. - A
FOR TIMESTAMP AS OF
lekérdezési tipp egy tárolt eljárásban definiálható azSELECT
utasításban.
Időutazásra vonatkozó engedélyek
Bármely felhasználó, aki rendszergazdai, tagi, közreműködői vagy megtekintői munkaterületi szerepkörrel rendelkezik, lekérdezheti a táblákat egy korábbi időpontban. Amikor a felhasználók táblákat kérdeznek le, a rendszer automatikusan alkalmazza az oszlopszintű biztonság (CLS), a sorszintű biztonság (RLS) vagy a dinamikus adatmaszkolás (DDM) által előírt korlátozásokat.
Korlátozások
Adja meg a tört másodperc legfeljebb három számjegyét az időbélyegben. Ha nagyobb pontosságot ad meg, a hibaüzenet
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
jelenik meg.Az időutazáshoz jelenleg csak az egyezményes világidő (UTC) időzónája használható.
Az időutazási lekérdezések adatmegőrzési ideje jelenleg harminc naptári nap.
FOR TIMESTAMP AS OF
a záradék értékeinekOPTION
determinisztikusnak kell lenniük. A paraméterezésre példaként tekintse meg az időutazást egy tárolt eljárásban.Az időutazás nem támogatott a Lakehouse SQL Analytics-végpontja esetében.
A
OPTION FOR TIMESTAMP AS OF
szintaxis csak utasítássalSELECT
kezdődő lekérdezésekben használható. Olyan lekérdezések, mint példáulINSERT INTO SELECT
CREATE TABLE AS SELECT
aOPTION FOR TIMESTAMP AS OF
. Fontolja meg inkább a raktártábla klónozásának lehetőségét egy adott időpontban.A nézetdefiníciók nem tartalmazhatják a szintaxist
OPTION FOR TIMESTAMP AS OF
. A nézet a szintaxissalSELECT .. FROM <view> ... OPTION FOR TIMESTAMP AS OF
kérdezhető le. A nézet létrehozása előtt azonban nem kérdezhet le korábbi adatokat egy nézetben lévő táblákból.FOR TIMESTAMP AS OF
az időutazás szintaxisa jelenleg nem támogatott a Power BI Desktop Közvetlen lekérdezési módban vagy az Adatok feltárása lehetőségben.