Zdieľať cez


Spustenie kódu T-SQL v poznámkových blokoch jazyka Python v jazyku Fabric

Kombinácia T-SQL a Python v moderných pracovných postupoch údajov ponúka výkonný a flexibilný prístup, ktorý spája silné stránky oboch jazykov. SQL zostáva najúčinnejším a čitateľným spôsobom dotazovania, filtrovania a spojenia štruktúrovaných údajov, zatiaľ čo jazyk Python exceluje v oblasti transformácie údajov, štatistickej analýzy, strojového učenia a vizualizácie. Kombináciou T-SQL a Pythonu môžu dátoví inžinieri využívať to najlepšie z oboch svetov, čo im umožňuje vytvárať robustné kanály, ktoré sú efektívne, udržiavateľné a schopné zvládnuť zložité úlohy spracovania údajov.

V poznámkových blokoch jazyka Python v službe Microsoft Fabric sme zaviedli novú funkciu s názvom Magický príkaz T-SQL. Táto funkcia umožňuje spustiť kód T-SQL priamo v poznámkových blokoch jazyka Python so zvýraznením syntaxe a dokončovaním kódu. Znamená to, že môžete písať kód T-SQL v poznámkovom bloku v jazyku Python, a tento kód sa vykoná, akoby išlo o bunku T-SQL. Táto funkcia je užitočná pre dátových inžinierov, ktorí chcú využívať možnosti T-SQL a zároveň stále využívajú flexibilitu poznámkových blokov v jazyku Python.

V tomto článku preskúmame magický príkaz T-SQL v poznámkových blokoch služby Microsoft Fabric. Popisujeme, ako povoliť tento príkaz, určiť, ktorý sklad použiť a ako naviazať výsledky dotazov T-SQL na premenné jazyka Python.

Táto funkcia je k dispozícii pre poznámkové bloky jazyka Python v jazyku Fabric. V poznámkovom bloku musíte nastaviť jazyk na Python a typ bunky na T-SQL.

Important

Táto funkcia je ukážky.

Použitie magický príkaz T-SQL na dotazovanie skladu údajov služby Fabric

Ak chcete povoliť T-SQL magický príkaz v notebooku fabric, musíte nastaviť %%tsql magický príkaz na začiatku bunky. Tento príkaz označuje, že kód v danej bunke by sa mal považovať za kód T-SQL.

V tomto príklade používame magický príkaz T-SQL na dotazovanie skladu údajov služby Fabric. Príkaz má nasledujúce parametre:

  • Parameter -artifact určuje názov skladu údajov, ktorý sa má použiť. Kód T-SQL v bunke sa spustí v zadanom dátovom sklade v štruktúre.
  • Parameter -type určuje typ položky Tkanina. Pre Fabric Data Warehouse použite Warehouse.
  • Parameter -bind určuje názov premennej, na ktorý sa majú naviazať výsledky dotazu T-SQL. V nasledujúcom príklade sú výsledky dotazu uložené v premennej jazyka Python s názvom df1. Ak potrebujete na premennú DF1 použiť ľubovoľnú transformáciu, môžete to urobiť pomocou kódu jazyka Python v ďalšej bunke. Parameter -bind je voliteľný, ale odporúča sa naviazať výsledky dotazu T-SQL na premennú jazyka Python. Tento parameter umožňuje jednoducho manipulovať a analyzovať výsledky pomocou kódu jazyka Python.
  • Parameter -workspace je voliteľný a používa sa, ak sa sklad nachádza v inom pracovnom priestore. Bez tohto parametra poznámkový blok používa aktuálny pracovný priestor.
%%tsql -artifact dw1 -type Warehouse -bind df1
SELECT TOP (10) [GeographyID],
            [ZipCodeBKey],
            [County],
            [City],
            [State],
            [Country],
            [ZipCode]
FROM [dw1].[dbo].[Geography]

Snímka obrazovky znázorňujúca magický príkaz tsql so skladom údajov.

Ak sa vynechajú parametre a parametre -artifact-type , poznámkový blok použije predvolenú skladovú položku v aktuálnom poznámkovom bloku.

Použitie magického príkazu T-SQL na dotazovanie databázy SQL

Môžete tiež použiť príkaz T-SQL magic na dotazovanie databázy SQL v službe Fabric. Syntax je podobná dotazovaniu na sklad údajov, ale parameter musí byť nastavený -type na SQLDatabase. Parameter -bind určuje názov premennej, na ktorý sa majú naviazať výsledky dotazu T-SQL.

V nasledujúcom príklade je výsledok dotazu uložený v premennej jazyka Python s názvom df2.

%%tsql -artifact sqldb1 -type SQLDatabase -bind df2
SELECT TOP (10) [AddressID]
      ,[AddressLine1]
      ,[AddressLine2]
      ,[City]
      ,[StateProvince]
      ,[CountryRegion]
      ,[PostalCode]
      ,[rowguid]
      ,[ModifiedDate]
  FROM [SalesLT].[Address];

Snímka obrazovky znázorňujúca magický príkaz tsql s databázou SQL.

Použitie magického príkazu T-SQL na dotazovanie koncového bodu analýzy SQL Lakehouse

Môžete tiež použiť príkaz T-SQL magic na dotazovanie koncového bodu analýzy SQL. Syntax je podobná dotazovaniu na sklad údajov, ale parameter musí byť nastavený -type na Lakehouse. Parameter -bind určuje názov premennej, na ktorý sa majú naviazať výsledky dotazu T-SQL.

V nasledujúcom príklade je výsledok dotazu uložený v premennej jazyka Python s názvom df3.

%%tsql -artifact lakehouse1 -type Lakehouse -bind df3
SELECT TOP (10) [ProductID],
      [Name],
      [ProductNumber],
      [Color],
      [StandardCost],
      [ListPrice]
FROM [lakehouse1].[dbo].[Product];

Použitie T-SQL magické príkaz ako riadok mágie

Namiesto spúšťania T-SQL v plnej kódovej bunke s %%tsql, môžete spustiť T-SQL v jednom riadku s %tsql ako čiarovou mágiou. Najskôr však musíte nadviazať spojenie na reláciu.

Important

Pred použitím %tsql čiarovej mágie musíte spustiť %%tsql príkaz cell magic s parametrom -session na inicializáciu SQL magického kontextu. Spustenie %tsql bez tohto nastavenia vedie k .SQLMagicContextInitializationException

Predpoklady pre líniovú mágiu

  1. Inicializujte reláciu: V bunke, ktorá používa magický príkaz, %%tsql zahrňte parameter -session na vytvorenie kontextu spojenia. Napríklad:

    %%tsql -artifact ContosoDWH -type Warehouse -session
    SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];
    
  2. Použite líniovú mágiu: Po inicializácii relácie môžete použiť %tsql v nasledujúcich políčkach. Čiarová mágia použije spojenie vytvorené v kroku 1 bez nutnosti špecifikovať -artifact a -type znova. Napríklad:

    df = %tsql SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];
    

Snímka obrazovky znázorňujúca magický príkaz tsql s magickou čiarou.

Odkaz na premenné jazyka Python v T-SQL

Môžete tiež odkazovať na premenné jazyka Python v kóde T-SQL. Použite na {} to symbol, za ktorým nasleduje názov premennej v jazyku Python. Ak máte napríklad premennú jazyka Python s názvom count, môžete naň odkazovať takto v kóde T-SQL:

count = 10

df = %tsql SELECT TOP({count}) * FROM [dw1].[dbo].[Geography];

Snímka obrazovky zobrazujúca magický príkaz tsql s premennou reference python.

Ak chcete zobraziť úplnú syntax, použite %tsql? príkaz . Tento príkaz zobrazí informácie o pomoci pre magický príkaz T-SQL vrátane dostupných parametrov a ich popisov.

Note

Môžete spustiť úplné príkazy DML a DDL na sklade údajov alebo databáze SQL, ale dotaz iba na čítanie pre koncový bod sql lakehouse.

Ďalšie informácie o poznámkových blokoch služby Fabric nájdete v nasledujúcich článkoch.