Práce s daty zákazníků v prostředcích infrastruktury
Microsoft Fabric OneLake je jednotné logické datové jezero pro celou organizaci navržené jako jediné místo pro všechna analytická data. Dodává se automaticky s každým tenantem Microsoft Fabric a je postaven na Azure Data Lake Storage (ADLS) Gen2. OneLake podporuje jakýkoli typ souboru, strukturované nebo nestrukturované a ukládá všechna tabulková data ve formátu Delta Parquet. Umožňuje spolupráci mezi různými obchodními skupinami tím, že poskytuje jedno datové jezero, které se ve výchozím nastavení řídí distribuovaným vlastnictvím pro spolupráci v rámci hranic tenanta. Pracovní prostory v rámci tenanta umožňují různým částem organizace distribuovat zásady vlastnictví a přístupu a ke všem datům v OneLake se dají přistupovat prostřednictvím datových položek, jako jsou Lakehouses a Warehouses.
Z hlediska úložišť dat slouží OneLake jako společné umístění úložiště pro příjem dat, transformaci, přehledy v reálném čase a vizualizace Business Intelligence. Centralizuje různé služby Fabric a je úložištěm datových položek využívaných všemi úlohami v Prostředcích infrastruktury.
Čtení a zápis dat v Microsoft Fabric
Microsoft Fabric je platforma, která umožňuje ukládání a správu zákaznických dat. Abyste mohli číst a zapisovat data v prostředcích infrastruktury, musíte použít rozhraní REST API prostředků infrastruktury a příslušné metody ověřování.
Oprávnění rozhraní API
Některé metody přístupu k zákaznickým datům vyžadují použití jiných služeb mimo prostředky infrastruktury, jako je Azure Storage nebo Azure SQL Database. Například v ukázce sady Microsoft Fabric Developer Kit se oprávnění rozhraní API azure Storage user_impersonation
používá ve spojení s oprávněním služba Power BI Lakehouse.Read.All pro přístup k datům z Lakehouses.
Azure SQL Database můžete použít k přístupu k tabulkovým datům z položek warehouse. V tomto případě nakonfigurujte aplikaci se službou Azure SQL Database user_impersonation
tak, aby dotazovali databázi jménem uživatele a služba Power BI Warehouse.Read.All a dotazovali se na koncový bod Get Warehouse rozhraní REST API Fabric.
Ujistěte se, že aplikaci Microsoft Entra ID nakonfigurujete podle vašich potřeb vývoje.
Ověřování
Než začnete používat rozhraní REST API prostředků infrastruktury nebo jiné služby, jako je Azure Storage a Azure SQL Database, jménem uživatele, musíte provést ověření pomocí tokenu. Tento token lze získat prostřednictvím procesu výměny tokenů.
Sada SDK sady Fabric Workload Development Kit poskytuje metodu pro získání přístupového tokenu ve front-endu úlohy. Podívejte se například na ukázkový kontroler úloh.
Tento token klienta se musí předat back-endu úlohy a vyměnit ho pomocí toku on-behalf-of pro token s potřebnými obory pro přístup k potřebným prostředkům, jako je OneLake. Například pro přístup a čtení z Lakehouse musí uživatel autorizovat aplikaci k volání rozhraní API svým jménem pomocí oprávnění Azure Storage user_impersonation
. Pak se v back-endu musí přístupový token získat s delegovaným oborem https://storage.azure.com/user_impersonation
, aby bylo možné používat Azure Storage.
Pokud se rozhodnete použít SQL pro přístup k datům zákazníka, musí být přístupový token získán s oborem https://database.windows.net//user_impersonation
použití služby Azure SQL Database a oboru názvů Microsoft.Data.SqlClient. Přístupový token musí být použit jako zapsaný, se dvěma lomítky před user_impersonation
, aby bylo možné ověřit pomocí třídy SQLConnection.
Další příklady ověřování tokenů najdete v ukázce sady Microsoft Fabric Developer Kit.
Další podrobnosti o tom, jak získat token, najdete v dokumentaci k rozhraní REST API pro vývoj úloh Microsoft Fabric.
Čtení metadat
Rozhraní REST API prostředků infrastruktury poskytují způsob, jak získat přístup k vlastnostem položky. Například dotazování rozhraní Get Lakehouse API poskytuje metadata pro určitý lakehouse, včetně užitečných vlastností, jako jsou cesty OneLake a SQL připojovací řetězec. Dalším užitečným koncovým bodem je rozhraní Get Warehouse API, které vrací následující informace:
{
Id: Guid
Type: string
DisplayName: string
Description: string
WorkspaceId: Guid
Properties {
ConnectionInfo: string
CreatedDate: DateTime
LastUpdatedTime: DateTime
}
}
V této části je vlastnost ConnectionInfo plně kvalifikovaným názvem domény (FQDN) serveru SQL Warehouse. Pomocí tohoto plně kvalifikovaného názvu domény můžete vytvořit připojení SQL. Další informace najdete v tématu Připojení k Skladování Dat v Microsoft Fabric. Příklady implementace najdete v sadě Microsoft Fabric Workload Development Kit.
Čtení dat
Po ověření se můžete k OneLake připojit pomocí rozhraní REST API služby Azure Data Lake Storage ke čtení různých typů dat. Ke čtení tabulek doporučujeme použít protokol Delta Lake.
Případně pokud se rozhodnete využít Azure SQL Database, můžete implementovat následující postup pro čtení dat ze skladu.
Vytvořte autorizační kontext. Příklad vytvoření kontextu autorizace, viz AuthenticateDataPlaneCall metoda.
Získejte token s oborem Warehouse.Read.All jménem uživatele pomocí nosného tokenu předaného z front-endu.
Pomocí tokenu Fabric můžete volat rozhraní API služby Get Warehouse. Je vyžadován přístup k informacím o připojení a zobrazovaném názvu skladu, což je počáteční katalog serveru.
Získání tokenu s obory SQL jménem uživatele K úspěšnému navázání připojení SQL použijte obor
https://database.windows.net//user_impersonation
.K otevření připojení SQL použijte token SQL a informace o připojení:
private SqlConnection GetSqlConnection(string token, string databaseFqdn, string initialCatalog) { var builder = new SqlConnectionStringBuilder(); builder.DataSource = databaseFqdn; // ConnectionInfo from Get Warehouse API builder.InitialCatalog = initialCatalog; //display name of the Warehouse builder.ConnectTimeout = 120; var connection = new SqlConnection(); connection.AccessToken = token; // SQL token acquired with the Azure SQL Database user_impersonation scope connection.ConnectionString = builder.ConnectionString; connection.Open(); return connection; }
Toto připojení se teď dá dotazovat pro přístup k datům ze skladu. Další informace o využití oboru názvů Microsoft.Data.SqlClient naleznete v dokumentaci k oboru názvů Microsoft.Data.SqlClient.
Zápis dat
Kromě čtení dat pomocí tokenu můžete také použít rozhraní API ADLS k zápisu dat do tabulek, jak popisuje protokol Delta Lake.
Rozhraní API můžete také použít k vytváření souborů a adresářů.
Alternativně můžete k zápisu dat do platformy použít jiné úlohy Infrastruktury. Můžete například použít rozhraní API úloh Lakehouse Fabric k efektivnímu načtení běžných typů souborů do optimalizované tabulky Delta. To se provádí odesláním požadavku POST do koncového bodu Table – Načtení koncového bodu rozhraní TABLE API.
Připojení SQL se dá použít také k provádění příkazů, které vkládají data do tabulek.