Jaa


Power BI -liitettävyys semanttisen linkin kanssa

Power BI -liitettävyys on Microsoft Fabricin semanttisen linkin ytimessä. Tässä artikkelissa kuvataan tapoja, joilla semanttinen linkki tarjoaa liitettävyyden semanttisiin malleihin Python-pandas- ja Apache Spark -ekosysteemien käyttäjille.

Semanttinen malli edustaa yleensä suurta tietostandardia, joka on seurausta tuotantovirran tietojen käsittelystä ja hienosäätämisestä. Yritysanalyytikot voivat:

  • Koodaa toimialueen tiedot ja liiketoimintalogiikka Power BI:n mittareihin.
  • Luo Power BI -raportteja semanttisten mallien avulla.
  • Näiden raporttien avulla voit edistää liiketoimintapäätöksiä.

Kun samojen semanttisten mallien parissa työskentelevät tietotutkijat yrittävät monistaa liiketoimintalogiikan eri koodiympäristöissä tai kielissä, tämä voi johtaa kriittisiin virheisiin. Semanttinen linkki kuroo umpeen semanttisten mallien ja Microsoft Fabricin Synapse Data Science -kokemuksen välisen kuilun tarjotakseen yritysanalyytikoille ja datatutkijoille keinon tehdä saumatonta yhteistyötä ja vähentää tietojen ristiriitaa.

Semanttinen linkki tarjoaa liitettävyyden kohteeseen:

  • Python-pandas-ekosysteemi SemPy Python -kirjaston kautta.
  • Semanttiset mallit Sparkin alkuperäisen liittimen kautta, joka tukee PySparkia, Spark SQL:ää, R:ää ja Scalaa.

Tietoyhteydet SemPy Python -kirjaston kautta pandas-käyttäjille

SemPy Python - kirjasto on osa semanttisen linkin ominaisuutta ja se palvelee pandas-käyttäjiä. SemPy-toiminto sisältää tietojen noutamisen taulukoista, mittareiden laskennan sekä DAX (Data Analysis Expressions) -kyselyiden ja metatietojen suorittamisen.

  • Spark 3.4:ssä ja tätä uudemmat versioissa semanttinen linkki on käytettävissä oletusarvoisessa suorituspalvelussa Fabricia käytettäessä, eikä sitä tarvitse asentaa.

  • Jos kyseessä on Spark 3.3 tai uudempi tai jos haluat päivittää uusimpaan semanttisen linkin versioon, suorita seuraava komento:

    %pip install -U semantic-link
    

SemPy laajentaa myös pandas DataFrame -kehyksiä Power BI -tietolähteestä välitetyillä lisätyillä metatiedoilla. Näitä metatietoja ovat seuraavat:

  • Power BI :n tietoluokat:
    • Maantieteellinen: Osoite, paikka, kaupunki
    • URL-osoite: URL-verkko-osoite, kuvan URL-osoite
    • Viivakoodi
  • Taulukoiden väliset suhteet
  • Hierarkiat

Semanttisen linkin Sparkin alkuperäisen liittimen avulla Spark-käyttäjät voivat käyttää Power BI -taulukoita ja -mittareita. Liitin on kieliagnostinen ja tukee PySparkia, Spark SQL:ää, R:ää ja Scalaa.

Jos haluat käyttää Sparkin alkuperäistä liitintä, esitä semanttiset mallit Spark-nimitiloina ja näytä Power BI -taulukot läpinäkyvästi Spark-taulukkoina.

Seuraava komento määrittää Sparkin käyttämään Sparkin alkuperäistä Power BI Spark -liitintä:

spark.conf.set("spark.sql.catalog.pbi", "com.microsoft.azure.synapse.ml.powerbi.PowerBICatalog")

# Optionally, configure the workspace using its ID
# Resolve workspace name to ID using fabric.resolve_workspace_id("My workspace")
# Replace 00000000-0000-0000-0000-000000000000 with your own workspace ID
# spark.conf.set("spark.sql.catalog.pbi.workspace, "00000000-0000-0000-0000-000000000000")

Seuraavassa komennossa luetellaan kaikki semanttisen mallin taulukot, joita kutsutaan Sales Dataset:

%%sql
SHOW TABLES FROM pbi.`Sales Dataset`

Seuraava komento näyttää tiedot semanttisen mallin Sales Datasettaulukosta Customer :

%%sql
SELECT * FROM pbi.`Sales Dataset`.Customer

Power BI -mittarit ovat käytettävissä näennäistaulukon _Metrics kautta relaatio-Spark SQL:n ja moniulotteisen Power BI:n siltaamiseksi. Seuraavassa esimerkissä Total Revenue ja Revenue Budget ovat semanttisessa mallissa Sales Dataset määritettyjä mittareita, ja muut sarakkeet ovat dimensioita. Mittareiden koostamisfunktiot, kuten AVG , ohitetaan mittareissa, ja niitä käytetään vain SQL:n johdonmukaisuuden tarjoamiseksi.

Liitin tukee laskennan predikaattia, kuten Customer[State] in ('CA', 'WA') Spark-lausekkeiden painamista, Power BI -moduuliin Power BI -optimoidun moduulin käytön mahdollistamiseksi.

SELECT
    `Customer[Country/Region]`,
    `Industry[Industry]`,
    AVG(`Total Revenue`),
    AVG(`Revenue Budget`)
FROM
    pbi.`Sales Dataset`.`_Metrics`
WHERE
    `Customer[State]` in ('CA', 'WA')
GROUP BY
    `Customer[Country/Region]`,
    `Industry[Industry]`

Tietojen lisäys Power BI -mittareilla

Toiminto add_measure on tehokas semanttisen linkin ominaisuus, jonka avulla voit laajentaa tietoja semanttisten mallien mittareilla. Tämä toiminto on käytettävissä vain SemPy Python -kirjastossa, eikä sitä tueta Sparkin alkuperäisessä liittimessä. Katso lisätietoja -menetelmästä add_measure luokan dokumentaation add_measureFabricDataFrame.

Jos haluat käyttää SemPy Python -kirjastoa, asenna se muistikirjan ydintäsi suorittamalla seuraava koodi muistikirjan solussa:

# %pip and import only needs to be done once per notebook
%pip install semantic-link
from sempy.fabric import FabricDataFrame

Seuraavassa koodiesimerkissä oletetaan, että sinulla on aiemmin luotu FabricDataFrame-tieto, jonka tietoja haluat laajentaa semanttisen mallin mittareilla.

df = FabricDataFrame({
        "Sales Agent": ["Agent 1", "Agent 1", "Agent 2"],
        "Customer[Country/Region]": ["US", "GB", "US"],
        "Industry[Industry]": ["Services", "CPG", "Manufacturing"],
    }
)

joined_df = df.add_measure(["Total Revenue", "Total Budget"], dataset="Sales Dataset")

Menetelmä add_measure toimii seuraavasti:

  1. Korjaa FabricDataFrame-kehyksen sarakkeiden nimet Power BI -ulottuvuuksiksi. Toiminto ohittaa kaikki sarakkeiden nimet, joita ei voi ratkaista tietyssä semanttisessa mallissa. Lisätietoja on kohdassa tuettu DAX-syntaksi.
  2. Määrittää sarakkeet group by selvitettyjen sarakkeiden nimien avulla.
  3. Laskee yhden tai useamman mittarin group by tasolla.
  4. Suodattaa tuloksen FabricDataFrame-kehyksen olemassa olevien rivien mukaan.