Kurz: Načtení externích dat pomocí Microsoft Entra ID

Tip

Microsoft Fabric Data Warehouse je relační sklad v podnikovém měřítku na základu datového jezera s architekturou připravenou pro budoucnost, integrovanou AI a novými funkcemi. Pokud s datovými sklady začínáte, začněte pracovat s Fabric Data Warehouse. Stávající úlohy fondu dedikované SQL můžou upgradovat na Fabric a získat tak přístup k novým funkcím napříč datovou vědou, analýzou v reálném čase a reportováním.

Tento článek vysvětluje, jak vytvořit externí tabulky pomocí Microsoft Entra ID passthrough.

Požadavky

K dokončení tohoto kurzu jsou potřeba následující zdroje informací:

  • Pracovní prostor Azure Synapse Analytics a vyhrazený SQL fond

Dejte účtu Microsoft Entra ID přístup k účtu úložiště.

Tento příklad používá účet Microsoft Entra ID (nebo skupinu) k ověření ke zdrojovým datům.

Pokud chcete povolit přístup k datům v účtech Azure Data Lake Storage (ADLS) Gen2, musíte svému účtu Microsoft Entra ID (nebo skupině) udělit přístup ke zdrojovému účtu. Pokud chcete udělit správná oprávnění, postupujte takto:

  1. Na webu Azure Portal vyhledejte svůj účet úložiště.
  2. Vyberte Úložiště dat –> Kontejnery a přejděte do složky, kde zdrojová data, ke které externí tabulka potřebuje přístup.
  3. Vyberte Řízení přístupu (IAM) .
  4. Vyberte >.
  5. V seznamu rolí funkcí úloh vyberte Čtenář dat objektů blob služby Storage a vyberte Další. Pokud potřebujete oprávnění k zápisu, vyberte Přispěvatel dat objektů blob služby Storage.
  6. Na stránce Přidat přiřazení role vyberte + Vybrat členy. V pravém horním rohu se otevře podokno Výběr členů.
  7. Zadejte název požadovaného účtu Microsoft Entra ID. Po zobrazení vyberte požadovaný účet a zvolte Vybrat.
  8. Na stránce Přidat přiřazení role se ujistěte, že seznam členů obsahuje vámi požadovaný účet Microsoft Entra ID. Po ověření vyberte Zkontrolovat a přiřadit.
  9. Na potvrzovací stránce zkontrolujte změny a vyberte Zkontrolovat a přiřadit.

Účet nebo skupina Microsoft Entra ID je nyní členem role Storage Blob Data Reader a má přístup ke zdrojové složce.

Ingestování dat pomocí funkce COPY INTO

Příkaz COPY INTO T-SQL poskytuje flexibilní vkládání dat s vysokou propustností do vašich tabulek a je primární strategií pro import dat do tabulek určeného SQL fondu. Umožňuje uživatelům ingestovat data z externích umístění, aniž by museli vytvářet další databázové objekty potřebné pro externí tabulky.

Tento COPY INTO příkaz používá CREDENTIAL argument k určení metody ověřování použité pro připojení ke zdrojovému účtu. Při ověřování pomocí Microsoft Entra ID nebo veřejného účtu úložiště ale není nutné zadávat CREDENTIAL. Pokud chcete pomocí ověřování Entra ID spustit příkaz COPY INTO, použijte následující příkaz T-SQL:

COPY INTO <TableName>
FROM 'https://<AccountName>.dfs.core.windows.net/<Container>/<Folder>/ '
WITH
(
    [<CopyIntoOptions>]
);

Kde:

  • <TableName> je název tabulky, do které se mají ingestovat data.
  • <AccountName> je název vašeho účtu ADLS Gen2.
  • <Container> je název kontejneru v rámci vašeho účtu úložiště, ve kterém jsou uložena zdrojová data.
  • <Folder> je složka (nebo cesta s podsložkami), ve které jsou zdrojová data uložená ve vašem kontejneru. Název souboru můžete zadat také v případě, že odkazujete přímo na jeden soubor.
  • <CopyIntoOptions> je seznam všech dalších možností, které chcete poskytnout příkazu COPY INTO.

Další informace a prozkoumání úplné syntaxe najdete v tématu COPY INTO (Transact-SQL).

Dotazování dat na ADLS Gen2 pomocí externích tabulek

Externí tabulky umožňují uživatelům dotazovat se na data z účtů Azure Data Lake Storage (ADLS) Gen2 bez nutnosti ingestovat data jako první. Uživatelé mohou vytvořit externí tabulku, která odkazuje na soubory v kontejneru ADLS Gen2, a dotazovat se na ni stejně jako běžná uživatelská tabulka.

Následující kroky popisují proces vytvoření nové externí tabulky odkazující na data v ADLS Gen2 pomocí ověřování Entra ID.

Vytvoření požadovaných databázových objektů

Externí tabulky vyžadují vytvoření následujících objektů:

  1. Externí zdroj dat, který odkazuje na zdrojovou složku
  2. Formát externího souboru, který definuje formát zdrojových souborů
  3. Definice externí tabulky, která se používá pro dotazy

Pokud chcete postupovat podle těchto kroků, musíte použít editor SQL v pracovním prostoru Azure Synapse nebo upřednostňovaný klient SQL připojený k vyhrazenému fondu SQL. Pojďme se na tyto kroky podívat podrobněji.

Vytvoření externího zdroje dat

Dalším krokem je vytvoření externího zdroje dat, který určuje umístění zdrojových dat používaných externí tabulkou.

K vytvoření externího zdroje dat použijte následující příkaz T-SQL:

CREATE EXTERNAL DATA SOURCE <ExternalDataSourceName>
WITH (
    TYPE = HADOOP,
    LOCATION = 'abfss://<Container>@<AccountName>.dfs.core.windows.net/<Folder>/'
);

Kde:

  • <ExternalDataSourceName> je název, který chcete použít pro externí zdroj dat.
  • <AccountName> je název vašeho účtu ADLS Gen2.
  • <Container> je název kontejneru v rámci vašeho účtu úložiště, ve kterém jsou uložena zdrojová data.
  • <Folder> je složka (nebo cesta s podsložkami), ve které jsou zdrojová data uložená ve vašem kontejneru.

Další informace o externích zdrojích dat najdete v tématu VYTVOŘENÍ EXTERNÍHO ZDROJE DAT (Transact-SQL).

Vytvoření formátu externího souboru

Dalším krokem je vytvoření formátu externího souboru. Určuje skutečné rozložení dat odkazovaných externí tabulkou.

K vytvoření formátu externího souboru použijte následující příkaz T-SQL. Nahraďte <FileFormatName> názvem, který chcete použít pro formát externího souboru.

CREATE EXTERNAL FILE FORMAT <FileFormatName>
WITH (
    FORMAT_TYPE = DELIMITEDTEXT,
    FORMAT_OPTIONS (
        FIELD_TERMINATOR = ',',
        STRING_DELIMITER = '"',
        FIRST_ROW = 2,
        USE_TYPE_DEFAULT = True
    )
);

V tomto příkladu upravte parametry, jako jsou FIELD_TERMINATOR, STRING_DELIMITER, FIRST_ROW a další podle potřeby v souladu s vašimi zdrojovými daty. Další možnosti formátování a další informace najdete v tématu CREATE EXTERNAL FILE FORMAT (Transact-SQL).

Vytvoření externí tabulky

Teď, když se vytvoří potřebné objekty, které obsahují metadata pro bezpečný přístup k externím datům, je čas vytvořit externí tabulku. K vytvoření externí tabulky použijte následující příkaz T-SQL:

-- Adjust the table name and columns to your desired name and external table schema
CREATE EXTERNAL TABLE <ExternalTableName> (
    Col1 INT,
    Col2 NVARCHAR(100),
    Col4 INT
)
WITH
(
    LOCATION = '<Path>',
    DATA_SOURCE = <ExternalDataSourceName>,
    FILE_FORMAT = <FileFormatName>
);

Kde:

  • <ExternalTableName> je název, který chcete použít pro externí tabulku.
  • <Path> je cesta ke zdrojovým datům vzhledem k umístění zadanému v externím zdroji dat.
  • <ExternalDataSourceName> je název externího zdroje dat, který jste vytvořili.
  • <FileFormatName> je název formátu externího souboru, který jste vytvořili.

Nezapomeňte upravit název tabulky a schéma na požadovaný název a schéma dat ve zdrojových souborech.

Provedení dotazu na externí tabulku

V tomto okamžiku se vytvoří všechna metadata potřebná pro přístup k externí tabulce. K otestování externí tabulky použijte k ověření vaší práce dotaz, například následující ukázku T-SQL:

SELECT TOP 10 Col1, Col2 FROM <ExternalTableName>;

Pokud bylo všechno správně nakonfigurované, měli byste v důsledku tohoto dotazu vidět data ze zdrojových dat.

Pro více informací o CREATE EXTERNAL TABLE, viz CREATE EXTERNAL TABLE (Transact-SQL).