Zdieľať cez


Čo je rozhranie Microsoft Fabric API pre GraphQL?

GraphQL je open-source dotazovací jazyk a runtime pre API, ktorý spravuje GraphQL Foundation. Na rozdiel od tradičných REST API umožňuje GraphQL klientom požadovať presne tie dáta, ktoré potrebujú, v jednom dotaze, čím sa znižuje nadmerné a nedostatočné načítavanie dát.

Microsoft Fabric API pre GraphQL prináša tento výkonný štandard do ekosystému Fabric ako vrstvu prístupu k dátam, ktorá vám umožní rýchlo a efektívne dotazovať viaceré zdroje dát. Rozhranie API abstrahuje špecifiká backendových zdrojov údajov, takže sa môžete sústrediť na logiku aplikácie a poskytnúť všetky údaje, ktoré klient potrebuje, v jednom volaní. Vďaka svojmu jednoduchému dotazovaciemu jazyku a efektívnej manipulácii s výsledkovou sadou GraphQL minimalizuje čas, ktorý aplikácie potrebujú na prístup k vašim dátam vo Fabric.

Prečo používať GraphQL pre Fabric dáta

Bez GraphQL si vystavenie Fabric dát aplikáciám zvyčajne vyžaduje jeden z týchto prístupov:

Priame databázové pripojenia

  • Aplikácie sa priamo pripájajú k jazerným domom alebo skladom pomocou SQL ovládačov (ODBC, JDBC)
  • Úzko prepája aplikačný kód s databázovými schémami – zmeny schémy narušujú aplikácie
  • Vyžaduje správu spojovacích reťazcov, prihlasovacích údajov a závislostí ovládačov v každej aplikácii
  • SQL dotazy vložené do aplikačného kódu sú náročné na testovanie a údržbu

Vlastné REST API

  • Budujte a udržiavajte vlastné backendové služby pomocou frameworkov ako ASP.NET alebo Node.js
  • Napíšte kód kontroléra, smerovaciu logiku a vrstvy prístupu k dátam pre každý koncový bod
  • Vytvárajte samostatné verzie API (v1, v2, v3), keď sa menia dátové štruktúry
  • Nadmerné načítanie dát (získanie celých riadkov, keď potrebujete niekoľko stĺpcov) alebo podnačítanie (viacnásobné okružné cesty pre súvisiace dáta)

GraphQL rieši tieto výzvy:

  • Nie je potrebný žiadny backendový kód: Fabric automaticky generuje schému GraphQL, resolvery a endpoint z vašich dátových zdrojov
  • Dotazujte presne na to, čo potrebujete: Požiadajte konkrétne polia v jednom dotaze, čím eliminujete nadmerné načítavanie a zmenšujete veľkosť užitočného zaťaženia
  • Načítanie súvisiacich údajov v jednej požiadavke: Prechádzať vzťahy bez viacerých okružných ciest (bez problému s dotazom N+1)
  • Evolúcia schémy bez prerušenia zmien: Pridávajte nové polia bez ovplyvnenia existujúcich dotazov – klienti požadujú len to, čo poznajú
  • Bezpečnosť typov a dokumentácia: Samodokumentujúca schéma s integrovanou introspekciou, ktorej rozumejú vývojárske nástroje
  • Jednotný prístup k viacerým zdrojom: Dotazovanie cez jazerné domy, sklady a SQL databázy cez jeden endpoint

Pre vývojárov aplikácií znamená GraphQL rýchlejší vývoj s menšou infraštruktúrou. Pre dátových inžinierov to znamená zverejňovanie dát bez písania a udržiavania vlastného API kódu.

Kto by mal používať API pre GraphQL

API Fabric pre GraphQL je navrhnuté pre:

  • Vývojári aplikácií vytvárajú dátami riadené webové a mobilné aplikácie, ktoré spotrebúvajú dáta z Fabric lakehouse a skladov
  • Dátoví inžinieri , ktorí vystavujú Fabric dáta downstream aplikáciám prostredníctvom moderných, flexibilných API bez písania vlastného backendového kódu
  • Vývojári integrácie spájajúci Fabric dáta s vlastnými aplikáciami a automatizovanými pracovnými tokami
  • BI vývojári vytvárajú vlastné analytické aplikácie, ktoré dopĺňajú Power BI s Fabric dátami
  • Dátoví vedci odhaľujú Fabric dáta a poznatky strojového učenia prostredníctvom programatických API

Ak pracujete v rámci platformy Microsoft Fabric unified analytics a potrebujete sprístupniť dáta z lakehouse, warehouse alebo SQL databázy aplikáciám, GraphQL API poskytuje efektívny a vývojársky priateľský spôsob, ako presne vypytovať údaje, ktoré potrebujete.

Prepitné

Chcete integrovať Fabric GraphQL API s AI agentmi? Vyskúšajte tutoriál Build a local GraphQL MCP server for AI agents , kde môžete prepojiť AI agentov s vašimi Fabric dátami pomocou Model Context Protocol.

Vystavenie údajov prostredníctvom rozhrania API pre GraphQL

Sprístupnenie dátových zdrojov položke GraphQL v Microsoft Fabric je jednoduché a dá sa vykonať za pár minút pomocou vizuálneho rozhrania portálu Fabric. Proces zahŕňa:

  1. Vytvorte položku GraphQL API vo vašom pracovnom priestore Fabric
  2. Spojte svoje zdroje dát výberom z dostupných jazerných domov, skladov alebo databáz
  3. Vyberte si, ktoré objekty sprístupniť, ako sú tabuľky, pohľady alebo uložené procedúry
  4. Definujte vzťahy (voliteľné) medzi objektmi, aby ste umožnili výkonné vnorené dotazy
  5. Nastavte oprávnenia na kontrolu, kto môže pristupovať k vášmu API

Po nastavení Fabric automaticky vygeneruje schému GraphQL, vytvorí potrebné resolvery a poskytne vám URL koncového bodu. Vaše API je okamžite pripravené prijímať dotazy – bez potreby nasadenia alebo nastavenia infraštruktúry.

Podrobné pokyny nájdete v článku Vytvoriť API pre GraphQL v Fabric a pridať dáta.

Podporované zdroje údajov

V súčasnosti sú prostredníctvom rozhrania Fabric API pre GraphQL vystavené nasledujúce podporované zdroje údajov:

  • Sklad údajov služby Microsoft Fabric
  • Databáza Microsoft Fabric SQL
  • Microsoft Fabric Lakehouse cez koncový bod SQL Analytics
  • Databázy služby Microsoft Fabric zrkadlené prostredníctvom koncového bodu SQL Analytics vrátane:
    • Databáza Azure SQL
    • Azure SQL Managed Instance
    • Azure Cosmos DB
    • Databáza Microsoft Fabric SQL
    • Azure Databricks
    • Snowflake
    • Otvorené zrkadlové databázy
  • Databáza Azure SQL
  • Údajový graf

Súčasti

Microsoft Fabric API pre GraphQL poskytuje komplexné možnosti, ktoré zjednodušujú prístup k dátam pre aplikácie. Od automatického generovania kódu až po monitorovanie výkonu, tieto funkcie vám umožňujú vytvárať robustné dátové API s minimálnou konfiguráciou.

Automatické generovanie schémy

  • Objavovanie schémy: Automaticky objavuje a mapuje schémy zdrojov dát na typy GraphQL
  • Generovanie dotazov a mutácií: Vytvára GraphQL dotazy a mutácie na základe vašej dátovej štruktúry
  • Generovanie resolverov: Automaticky generuje resolvery potrebné na načítanie dát z vašich zdrojov
  • Lokálny testovací kód: Generuje ukážkový kód na okamžité testovanie a vývoj

Flexibilita zdrojov dát

  • Viaceré zdroje dát: Pripojte sa a dotazujte naprieč viacerými zdrojmi dát s podporou rozšírených dotazov
  • Databázové objekty: Plná podpora tabuliek, zobrazení a uložených procedúr v SQL databázach a skladoch
  • Selektívna expozícia: Vyberte konkrétne objekty a stĺpce na vystavenie cez API
  • Modelovanie vzťahov: Vytváranie vzťahov jeden ku jednému, jeden ku mnohým a mnoho-ku mnohým medzi dátovými entitami

Prevádzka a monitorovanie

  • Monitorovanie výkonu: Vstavaný dashboard a zaznamenávanie požiadaviek na sledovanie správania a používania API

Evolúcia schémy bez verziovania

GraphQL pristupuje k vývoju API jedinečným spôsobom, keď sa vyhýba tradičnému verzionovaniu. Namiesto vytvárania koncových bodov v1, v2 a v3 sa GraphQL API vyvíjajú neustále:

  • Aditívne zmeny: Môžete pridávať nové typy, polia a schopnosti bez toho, aby ste prerušili existujúce dotazy. Klienti žiadajú len tie polia, ktoré potrebujú, takže nové polia ich neovplyvňujú.
  • Spätná kompatibilita: Existujúce dotazy fungujú aj počas rastu schémy, pretože GraphQL vracia iba explicitne požadované dáta.
  • Zrušenie pred odstránením: Polia môžu byť označené ako zastarané namiesto okamžitého odstránenia, čím klienti majú čas sa prispôsobiť.
  • Jeden koncový bod: Aplikácie sa vždy pripájajú na ten istý koncový bod bez ohľadu na zmeny schémy.

Tento prístup zjednodušuje údržbu API a aktualizácie klientov v porovnaní s tradičnými verziami API. Keď upravíte schému GraphQL API vo Fabrice, existujúce aplikácie fungujú ďalej, pokiaľ pridáte nové funkcie namiesto odstraňovania alebo premenovávania existujúcich polí. Pre viac informácií o správe zmien schémy pozri Fabric API pre introspekciu a export schémy v GraphQL.

Interaktívne možnosti úprav

API pre GraphQL obsahuje editor, ktorý vám umožní jednoducho vyvíjať a testovať vaše dotazy a mutácie. Možnosti editora zahŕňajú:

  • Tabla s výsledkami na vizualizáciu výstupu dotazov a mutácií
  • Podpora parametrov dotazov a mutácií
  • IntelliSense, ktorý podporuje syntax GraphQL a názvy objektov schémy

Pre viac informácií o používaní editora GraphQL pozri API pre editor GraphQL.

Obmedzenia

Ďalšie informácie nájdete v časti API pre obmedzenia GraphQL .