Adatok betöltése a raktárba
A következőre vonatkozik:✅ Warehouse a Microsoft Fabricben
A Microsoft Fabric Warehouse beépített adatbetöltési eszközöket kínál, amelyek lehetővé teszik a felhasználók számára, hogy kód nélküli vagy kódban gazdag szolgáltatások használatával nagy léptékben betölthessenek adatokat a raktárakba.
Adatbetöltési beállítások
Az alábbi lehetőségek egyikével betölthet adatokat egy raktárba:
- COPY (Transact-SQL): a COPY utasítás rugalmas, nagy átviteli sebességű adatbetöltést kínál egy külső Azure Storage-fiókból. A COPY utasítást a Meglévő ETL/ELT logika részeként használhatja a Transact-SQL-kódban.
- Adatfolyamok: a folyamatok kód nélküli vagy alacsony kódszámú élményt biztosítanak az adatbetöltéshez. A folyamatok használatával robusztus munkafolyamatokat vezényelhet a teljes kinyerési, átalakítási, betöltési (ETL) felülethez, amelyek olyan tevékenységeket tartalmaznak, amelyek segítenek előkészíteni a célkörnyezetet, egyéni Transact-SQL-utasításokat futtatni, kereséseket végezni, vagy adatokat másolni egy forrásból egy célhelyre.
- Adatfolyamok: a folyamatok alternatívái, az adatfolyamok egyszerű adatelőkészítést, tisztítást és átalakítást tesznek lehetővé kód nélküli felületen.
- Raktárközi betöltés: a munkaterületi forrásokból származó adatbetöltés is lehetséges. Erre a forgatókönyvre akkor lehet szükség, ha létre kell hoznia egy új táblát egy másik tábla egy részhalmazával, vagy ha a raktárban és a lakehouse-ban különböző táblákat szeretne összekapcsolni. Raktárközi betöltéshez az említett lehetőségeken kívül a Transact-SQL olyan funkciói is elérhetők, mint az INSERT... A SELECT, SELECT INTO vagy CREATE TABLE AS SELECT (CTAS) egy munkaterületen belül működik a raktárak közötti munka során.
A használni kívánt adatbetöltési eszköz meghatározása
Annak eldöntéséhez, hogy melyik adatbetöltési beállítást használja, a következő feltételeket használhatja:
- Használja a COPY (Transact-SQL) utasítást a kódban gazdag adatbetöltési műveletekhez, a lehető legnagyobb adatbetöltési átviteli sebességhez, vagy ha egy Transact-SQL-logika részeként adatbetöltést kell hozzáadnia. Szintaxis : COPY INTO (Transact-SQL).
- Adatfolyamok használata kód nélküli vagy alacsony kódszámú, robusztus adatbetöltési munkafolyamatokhoz, amelyek ismétlődően, ütemezés szerint futnak, vagy amelyek nagy mennyiségű adatot foglalnak magukban. További információ: Adatok betöltése adatfolyamokkal.
- Használjon adatfolyamokat egy kód nélküli felülethez, amely lehetővé teszi, hogy az egyéni átalakítások az adatok forrásaként szolgáljanak a betöltés előtt. Ezek az átalakítások magukban foglalják (de nem kizárólag) az adattípusok módosítását, oszlopok hozzáadását vagy eltávolítását, vagy függvények használatát számított oszlopok létrehozásához. További információ: Adatfolyamok.
- A kódgazdag szolgáltatásokhoz használjon raktárközi betöltési szolgáltatásokat új táblák létrehozására ugyanazon a munkaterületen belül forrásadatokkal. További információ: Adatok betöltése Transact-SQL használatával és adatbázisközi lekérdezés írása.
Feljegyzés
A Warehouse COPY utasítása csak az Azure Storage-fiókokban lévő adatforrásokat támogatja, a OneLake-források jelenleg nem támogatottak.
Támogatott adatformátumok és források
A Microsoft Fabric warehouse-beli adatbetöltése számos adatformátumot és forrást kínál, amelyet használhat. A felvázolt lehetőségek mindegyike tartalmazza a támogatott adatösszekötő-típusok és adatformátumok saját listáját.
A raktárak közötti betöltéshez az adatforrásoknak ugyanabban a Microsoft Fabric-munkaterületen kell lenniük. A lekérdezések a forrásadatok háromrészes elnevezésével hajthatók végre.
Tegyük fel például, hogy egy munkaterületen két Raktár és Értékesítés nevű raktár található. Az alábbihoz hasonló lekérdezések létrehoznak egy új táblát a Leltárraktárban egy tábla tartalmával a Leltárraktárban, és egy táblához csatlakoznak az Értékesítési raktárban:
CREATE TABLE Inventory.dbo.RegionalSalesOrders
AS
SELECT s.SalesOrders, i.ProductName
FROM Sales.dbo.SalesOrders s
JOIN Inventory.dbo.Products i
WHERE s.ProductID = i.ProductID
AND s.Region = 'West region'
A COPY (Transact-SQL) utasítás jelenleg a PARQUET- és CSV-fájlformátumokat támogatja. Az adatforrások esetében jelenleg az Azure Data Lake Storage (ADLS) Gen2 és az Azure Blob Storage támogatott.
Az adatfolyamok és adatfolyamok számos különböző adatforrást és adatformátumot támogatnak. További információ: Adatfolyamok és adatfolyamok.
Ajánlott eljárások
A Microsoft Fabric Warehouse COPY parancsfunkciója egyszerű, rugalmas és gyors felületet használ az SQL-számítási feladatok nagy átviteli sebességű adatbetöltéséhez. A jelenlegi verzióban csak külső tárfiókokból támogatjuk az adatok betöltését.
A TSQL használatával is létrehozhat egy új táblát, majd beszúrhatja azt, majd frissítheti és törölheti az adatsorokat. Az adatok a Microsoft Fabric-munkaterület bármely adatbázisából beszúrhatók adatbázisközi lekérdezések használatával. Ha egy Lakehouse-ból egy raktárba szeretne adatokat beszedni, ezt adatbázisközi lekérdezéssel teheti meg. Példa:
INSERT INTO MyWarehouseTable
SELECT * FROM MyLakehouse.dbo.MyLakehouseTable;
- Kerülje az adatok egyszeri BESZÚRÁS utasításokkal való betöltését, mivel ez a lekérdezések és frissítések gyenge teljesítményét okozza. Ha az egyszeri INSERT utasításokat egymás után használták az adatbetöltéshez, javasoljuk, hogy hozzon létre egy új táblát a CREATE TABLE AS SELECT (CTAS) vagy az INSERT... SELECT-minták, az eredeti tábla elvetése, majd a tábla ismételt létrehozása a CREATE TABLE AS SELECT (CTAS) használatával létrehozott táblából.
- A meglévő tábla elvetése hatással van a szemantikai modellre, beleértve a szemantikai modell egyéni mértékeit vagy testreszabásait is.
- Ha külső adatokkal dolgozik a fájlokon, javasoljuk, hogy a fájlok mérete legalább 4 MB.
- Nagyméretű tömörített CSV-fájlok esetén fontolja meg a fájl több fájlra való felosztását.
- Az Azure Data Lake Storage (ADLS) Gen2 jobb teljesítményt nyújt, mint az Azure Blob Storage (örökölt). Amikor csak lehetséges, fontolja meg egy ADLS Gen2-fiók használatát.
- A gyakran futó folyamatok esetében fontolja meg az Azure Storage-fiók elkülönítését más olyan szolgáltatásoktól, amelyek egyszerre férhetnek hozzá ugyanazokhoz a fájlokhoz.
- Az explicit tranzakciók lehetővé teszik több adatmódosítás csoportosítását, hogy azok csak egy vagy több tábla olvasásakor legyenek láthatók, ha a tranzakció teljes véglegesítése folyamatban van. Ha bármelyik módosítás meghiúsul, visszaállíthatja a tranzakciót.
- Ha a SELECT egy tranzakción belül van, és adatbeszúrások előzték meg, az automatikusan létrehozott statisztikák pontatlanok lehetnek a visszaállítás után. A pontatlan statisztikák nem optimális lekérdezési tervekhez és végrehajtási időkhöz vezethetnek. Ha egy nagy INSERT után visszaállít egy SELECTs-tranzakciót, frissítse a SELECT-ben említett oszlopok statisztikáit .
Feljegyzés
Az adatbetöltési feladat által létrehozott parquet-fájlok a V-Order írásoptimalizálással optimalizálva lesznek, függetlenül attól, hogy hogyan történik az adatok betöltése a raktárakba. A V-Order optimalizálja a parquet-fájlokat, hogy villámgyors olvasást tegye lehetővé a Microsoft Fabric számítási motorjaiban, például a Power BI-ban, az SQL-ben, a Sparkban és másokban. A raktári lekérdezések általában gyorsabb olvasási időt élveznek az optimalizálással rendelkező lekérdezések esetében, így a parquet-fájlok 100%-ban megfelelnek a nyílt forráskódú specifikációnak. A Fabric adatmérnök ingtől eltérően a V-Order globális beállítás a Synapse Data Warehouse-ban, amely nem tiltható le. A V-Order szolgáltatással kapcsolatos további információkért lásd a V-Order for Warehouse ismertetése és kezelése című témakört.