Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:✅ Sklad v Microsoft Fabric
Sklad v Microsoft Fabric poskytuje integrované nástroje pro příjem dat. Pomocí těchto nástrojů můžete ingestovat data do skladů ve velkém měřítku pomocí prostředí bez kódu nebo s bohatým kódem.
Volba nástroje pro příjem dat
Zvolte možnost příjmu dat na základě následujících kritérií:
- Použijte příkaz COPY (Transact-SQL) pro operace příjmu dat s bohatým kódem. Poskytuje nejvyšší propustnost příjmu dat. Použijte ho, když potřebujete přidat příjem dat jako součást logiky Transact-SQL.
- Pokud chcete začít, podívejte se na Ingestování dat pomocí příkazu COPY.
- Warehouse také podporuje tradiční příkaz
BULK INSERTkvůli kompatibilitě. V prostředí Fabric Data Warehouse tento příkaz odpovídá chováníCOPY INTOpři použití klasických možností načítání. - Příkaz
COPYve skladu podporuje zdroje dat z účtů úložiště Azure a složek OneLake Lakehouse.
- K přímému příjmu dat na straně klienta použijte rozhraní BCP API (Preview), když jsou data ve vaší aplikační vrstvě a nemůžete napřed připravit soubory.
- Začněte tím, že si prohlédnete Ingestování dat pomocí rozhraní BCP API (Preview).
- Rozhraní BCP API podporuje bcp.exe skripty a rozhraní API aplikací, jako jsou C#
SqlBulkCopya JavaSQLServerBulkCopy. - Pro co nejvyšší propustnost ingestace dat ze souborů upřednostněte
COPY INTO, kdykoli je staging možný.
-
Kanály můžete používat pro bezkódové nebo nízkokódové, robustní pracovní postupy příjmu dat, které se spouštějí opakovaně, podle plánu nebo zahrnují velké objemy dat.
- Začněte zde: Načítání dat do datového skladu pomocí pipeline.
- Pomocí potrubí můžete orchestrovat robustní pracovní postupy pro úplnou zkušenost s extrakcí, transformací a načítáním (ETL). Toto prostředí zahrnuje aktivity, které vám pomůžou připravit cílové prostředí, spouštět vlastní příkazy Transact-SQL, vyhledávat nebo kopírovat data ze zdroje do cíle.
-
Toky dat můžete použít pro prostředí bez kódu, které umožňuje vlastní transformace zdrojových dat před příjmem dat.
- Pokud chcete začít, přečtěte si téma Ingestování dat pomocí toku dat.
- Tyto transformace zahrnují (ale nejsou omezené na) změny datových typů, přidávání nebo odebírání sloupců nebo použití funkcí k vytváření počítaných sloupců.
- Použijte funkci příjem dat pomocí T-SQL pro bohaté kódové zpracování, které umožňuje vytvářet nové tabulky nebo aktualizovat stávající tabulky se zdrojovými daty ve stejném pracovním prostoru nebo externím úložišti.
- Pokud chcete začít, přečtěte si téma Ingestování dat do vašeho skladu pomocí jazyka Transact-SQL.
- Pomocí funkcí Transact-SQL, jako jsou
INSERT...SELECT,SELECT INTOneboCREATE TABLE AS SELECT (CTAS), můžete číst data z tabulek, které odkazují na jiné sklady, jezera nebo zrcadlené databáze v rámci stejného pracovního prostoru. Pomocí těchto funkcí můžete také číst data z funkceOPENROWSET, která odkazuje na soubory v externích účtech úložiště Azure. - Můžete také přepisovat dotazy mezi databázemi mezi různými sklady v pracovním prostoru Fabric.
Podporované formáty a zdroje dat
Příjem dat pro warehouse ve Microsoft Fabric podporuje mnoho formátů a zdrojů dat. Každá možnost popsaná v tomto článku obsahuje vlastní seznam podporovaných typů datových konektorů a formátů dat.
Aby bylo možné provádět ingestování T-SQL, musí být zdroje dat tabulek ve stejném pracovním prostoru Microsoft Fabric, a zdroje dat souborů musí být umístěny v úložišti Azure Data Lake nebo Azure Blob Storage. Data můžete dotazovat pomocí třídílných názvů nebo OPENROWSET funkce pro zdrojová data. Zdroje dat tabulky můžou odkazovat na datové sady Delta Lake, zatímco OPENROWSET může odkazovat na soubory Parquet, CSV nebo JSONL v Azure Data Lake nebo Azure Blob Storage.
Předpokládejme například, že pracovní prostor má dva sklady, pojmenované Inventory a Sales. Dotaz, například následující, vytvoří v Inventory skladu novou tabulku s obsahem tabulky ve Inventory skladu, která je spojená s tabulkou ve Sales skladu, a s externími soubory obsahujícími informace o zákazníci:
CREATE TABLE Inventory.dbo.RegionalSalesOrders
AS
SELECT
s.SalesOrders,
i.ProductName,
c.CustomerName
FROM Sales.dbo.SalesOrders s
JOIN Inventory.dbo.Products i
ON s.ProductID = i.ProductID
JOIN OPENROWSET( BULK 'abfss://<container>@<storage>.dfs.core.windows.net/<customer-file>.csv' ) AS c
ON s.CustomerID = c.CustomerID
WHERE s.Region = 'West region';
Note
Čtení dat pomocí OPENROWSET může být pomalejší než dotazování na data v tabulce. Pokud chcete opakovaně přistupovat ke stejným externím datům, zvažte jejich ingestování do vyhrazené tabulky, abyste zlepšili výkon a efektivitu dotazů.
Příkaz COPY (Transact-SQL) aktuálně podporuje formáty souborů CSV, JSONL a PARQUET. Pro zdroje dat se aktuálně podporuje Azure Data Lake Storage (ADLS) Gen2 a Azure Blob Storage.
V případě přímých scénářů příjmu dat na straně klienta podporuje rozhraní BCP API (Preview) nástroje a rozhraní API, jako jsou bcp.exe, C# SqlBulkCopya Java SQLServerBulkCopy přes připojení SQL bez přípravných souborů.
Kanály a toky dat podporují širokou škálu zdrojů dat a formátů dat. Další informace najdete v tématu Kanály a toky dat.
Osvědčené postupy
Příkaz COPY ve službě Warehouse v Microsoft Fabric poskytuje jednoduché, flexibilní a rychlé rozhraní pro příjem dat s vysokou propustností pro úlohy SQL. V aktuální verzi podporuje načítání dat pouze z externích účtů úložiště.
Pomocí jazyka T-SQL můžete také vytvořit novou tabulku a pak ji vložit a pak aktualizovat a odstranit řádky dat. Data z libovolné databáze v pracovním prostoru Microsoft Fabric můžete vložit pomocí dotazů napříč databázemi. Pokud chcete ingestovat data z Lakehouse do skladu, můžete to udělat pomocí dotazu mezi databázemi. Například:
INSERT INTO MyWarehouseTable
SELECT * FROM MyLakehouse.dbo.MyLakehouseTable;
- Vyhněte se ingestování dat pomocí příkazů singleton
INSERT, protože tento přístup způsobuje nízký výkon dotazů a aktualizací. Pokud pro příjem dat použijete příkazy singletonINSERTpo sobě, vytvořte novou tabulku pomocíCREATE TABLE AS SELECT (CTAS)neboINSERT...SELECTvzorů, odstraňte původní tabulku a pak znovu vytvořte tabulku z tabulky, kterou jste vytvořili pomocíCREATE TABLE AS SELECT (CTAS).- Vyřazení existující tabulky má vliv na sémantický model, včetně všech vlastních měr nebo přizpůsobení, které jste v sémantickém modelu provedli.
- Při práci s externími daty na souborech se ujistěte, že soubory mají velikost aspoň 4 MB.
- U velkých komprimovaných souborů CSV zvažte rozdělení souboru do více souborů.
- Azure Data Lake Storage (ADLS) Gen2 nabízí lepší výkon než Azure Blob Storage (starší verze). Pokud je to možné, zvažte použití účtu ADLS Gen2.
- U kanálů, které běží často, zvažte izolování účtu úložiště Azure od jiných služeb, které by mohly přistupovat ke stejným souborům najednou.
- Explicitní transakce umožňují seskupit několik změn dat, aby byly viditelné pouze při čtení jedné nebo více tabulek, když je transakce plně potvrzena. Máte také možnost vrátit transakci zpět, pokud některé změny selžou.
- Pokud je
SELECTsoučástí transakce a předcházelo mu vložení dat, automaticky generované statistiky mohou být po vrácení transakce zpět nepřesné. Nepřesné statistiky můžou vést k neoptimalizovaným plánům dotazů a časům provádění. Pokud vrátíte transakci zpět sSELECTpo velkémINSERT, aktualizujte statistiky pro sloupce uvedené vSELECT.
Note
Bez ohledu na to, jak ingestujete data do skladů, úloha příjmu dat optimalizuje soubory parquet, které vytváří, pomocí optimalizace zápisu V-Order. V-Order optimalizuje soubory parquet tak, aby umožnil bleskově rychlé čtení ve výpočetních modulech Microsoft Fabric, jako jsou Power BI, SQL, Spark a další. Dotazy na sklad obecně využívají rychlejší dobu čtení dotazů s touto optimalizací a zároveň zajišťují, že soubory Parquet jsou 100% kompatibilní se specifikací open source. Nezakažujte V-Order, protože může mít vliv na výkon čtení. Další informace o objednávce V naleznete v tématu Vysvětlení a správa V-Order for Warehouse.
Nejčastější dotazy týkající se příjmu dat pro Fabric Data Warehouse
Jaké jsou pokyny k rozdělení souboru pro příkaz COPY, který načítá komprimované soubory CSV?
Zvažte rozdělení velkých souborů CSV, zejména pokud je počet souborů malý, ale pro zajištění lepšího výkonu udržujte soubory minimálně 4 MB.
Jaké jsou pokyny k rozdělení souboru pro příkaz COPY, který načítá soubory Parquet?
Zvažte rozdělení velkých souborů Parquet, zejména pokud je počet souborů malý.
Existují nějaká omezení počtu nebo velikosti souborů?
Počet nebo velikost souborů nejsou nijak omezeny. Pro zajištění nejlepšího výkonu však používejte soubory, které jsou alespoň 4 MB.
Jakou metodu ověřování používá příkaz COPY, pokud nezadám přihlašovací údaje?
Ve výchozím nastavení COPY INTO používá Microsoft Entra ID uživatele, který proces spustil.