Etsi vastauksia usein kysyttyihin Fabric-ohjelmointirajapintaan GraphQL-kysymyksiä varten.
Mikä on GraphQL?
GraphQL on ohjelmointirajapinnoille tarkoitettu kyselykieli, jonka avulla sovellukset voivat pyytää juuri tarvitsemiaan tietoja. Tärkeimpiä etuja ovat seuraavat:
- Vahva tyyppijärjestelmä – Kuvaa selkeästi saatavilla olevat tiedot
- Tarkka tiedonhaku – Vähentää ylihakua sallimalla tietyt pyynnöt
- Taaksepäin yhteensopivuus – Helpottaa API-päivityksiä rikkomatta olemassa olevaa koodia
- Rikkaat työkalut – Mahdollistaa laajan valikoiman kehittäjätyökalujen käyttöä
Se on sovellusten tehokkaampi tapa viestiä palvelimien ja tietokantojen kanssa.
Mikä on GraphQL:n Microsoft Fabric -ohjelmointirajapinta?
Microsoft Fabric API for GraphQL on hallittu palvelu, jonka avulla voit luoda GraphQL-rajapinnan sekunneissa.
Tuetut tietolähteet:
- Microsoft Fabric Data Warehouses
- Microsoft Fabric Lakehouses
- Microsoft Fabricin peilatut tietokannat
- Microsoft Fabric SQL Databases
- Microsoft Azuren SQL-tietokanta
Se tarjoaa yhtenäisen ohjelmointirajapintakerroksen näiden tuettujen tietolähteiden tietojen kyselemiseen ja mutaatioon.
Mitä GraphQL-toimintoja GraphQL:n Fabric-ohjelmointirajapinnassa tuetaan?
Tällä hetkellä tuetaan vain GraphQL-kyselyitä (luku) ja mutaatioita (kirjoitus). SQL Analytics -päätepisteiden kautta paljastetut tietolähteet ovat vain luku -tilassa, joten ne tukevat vain kyselyitä. Data Warehousesissa mutaatioiden automaattiseen generointiin tarvitaan ensisijaisen avain.
Miten voin tarkastella ja muokata resolver-rakenteita GraphQL:n Fabric-ohjelmointirajapinnassa?
Resolvers ovat GraphQL-komponentteja, jotka tarjoavat liiketoimintalogiikan ohjelmointirajapinnan kenttien ratkaisemiseen ja toimintojen suorittamiseen tietolähteissä olevien tietojen avulla.
Automaattinen generointi: Fabric generoi automaattisesti ratkaisijoita aina, kun liität uuden tietolähteen tai valitset uusia objekteja avoimeksi olemassa olevasta tietolähteestä.
Muokkaus: Tällä hetkellä resolvereita ei voi muokata suoraan. GraphQL-ohjelmointirajapinnan mukautetun liiketoimintalogiikan avulla voit luoda tallennetun toimintosarjan tietolähteeseen ja paljastaa sen GraphQL-ohjelmointirajapinnassa.
Edellyttääkö GraphQL-asiakassovelluksen ohjelmointirajapinta tietolähteen käyttöoikeutta kyselyjen tai mutaatioiden suorittamiseksi?
Microsoft Entra ID authentication: GraphQL:n API vaatii sovelluksia käyttämään Microsoft Entra ID:tä todennukseen. Asiakassovelluksesi täytyy rekisteröidä ja konfiguroida suorittamaan API-kutsuja Fabricia vastaan.
Tarvittavat käyttöoikeudet:
- Microsoft Entraan rekisteröity sovellus edellyttää GraphQLApi.Execute.All -käyttöoikeuksia Power BI -palveluun. Lisätietoja on artikkelissa Microsoft Entra -sovelluksen luominen Azuressa.
Kertakirjautumisen (SSO) konfiguraatio: Jos API on konfiguroitu käyttämään SSO:ta, todennettu käyttäjä tai palvelupäähenkilö tarvitsee pääsyn molempiin:
- GraphQL-rajapinta (Suorita kyselyt ja mutaatiot )
- Tietolähde (luku- tai kirjoitusoikeus tarpeen mukaan)
Työtilan tasoinen pääsyvaihtoehto: Vaihtoehtoisesti voit määrittää käyttäjä- tai palvelupäähenkilön työtilan jäseneksi, jolla on avustajarooli , jossa sekä API- että tietolähdeelementit sijaitsevat. Tämä antaa vaaditun pääsyn molempiin esineisiin samasta paikasta. Lisätietoja on artikkelissa Työtilojen käyttöoikeuksien antaminen käyttäjille.
Tallennettujen tunnistetietojen konfiguraatio: Jos API on konfiguroitu käyttämään tallennettuja tunnuksia, todennettu käyttäjä tai palvelupäähenkilö tarvitsee vain pääsyn API:lle (valitse Suorita kyselyt ja mutaatiot -vaihtoehto lisätessäsi suorat käyttöoikeudet API:lle).
Esimerkkejä: Voit löytää päästä päähän -esimerkin, jossa on esimerkkikoodi sekä käyttäjäperiaatteille että palveluperiaatteilleConnect Applicationsista.
Miten voin avata GraphQL-ohjelmointirajapinnan tukipalvelupyynnön?
Jos haluat ohjeita Microsoft-tuesta mistä tahansa GraphQL:n Fabric-ohjelmointirajapintaan liittyvistä ongelmasta, siirry Fabric-tukisivustollemme ja valitse Tietotekniikka-vaihtoehto.
Tukeeko GraphQL-ohjelmointirajapinta yksityistä linkkiä?
GraphQL:n ohjelmointirajapinta ei tue yksityistä linkkiä tällä hetkellä.
Miksi pyyntöni toimii huonosti, kun ensimmäisen kerran myönnän sen, ja suoriutun sitten hyvin myöhemmissä pyynnöissä?
Tälle "kylmäkäynnistykselle" on kaksi pääsyytä:
Datalähteen lämmittely:
- Ensimmäinen pyyntö voi kestää kauemmin, jos tietolähde täytyy lämmittää kylmästä tilasta
- Vaikka tietolähde ei olisi kylmä, tietojen hakeminen ei välttämättä ole yhtä tehokasta ensimmäisellä kerralla, kun GraphQL lähettää kyselyn, jos tietolähteellä ei ole tarvittavaa dataa ladattu muistiin
API:n päätepisteen alustus:
- Ensimmäinen pyyntö API:lle GraphQL-päätepisteelle saattaa kestää kauemmin, koska järjestelmän täytyy ladata skeemasi ja konfiguraatiosi
- Seuraavat pyynnöt ovat nopeampia, koska järjestelmä on jo lämmitetty ja valmis palvelemaan pyyntöjäsi
Lisätietoja suorituskyvyn parhaista käytännöistä löytyy.
Miten voin antaa palautetta tai ehdotuksia GraphQL:n ohjelmointirajapinnalle?
Otamme palautteesi ja ehdotuksesi vastaan! Voit antaa palautetta Fabric Ideaskautta. Tiimimme valvoo aktiivisesti tämän ympäristön kautta lähetettyjä ehdotuksia. Voit ottaa meihin yhteyttä myös Microsoft Fabric -tuen, jos sinulla on tiettyjä kyselyjä tai huolenaiheita.