Megosztás a következőn keresztül:


Kapcsolatok vizsgálata és érvényesítése szemantikai modellekben és adatkeretekben

Ebből a cikkből megtudhatja, hogy a SemPy szemantikai hivatkozásfüggvényekkel felderítheti és érvényesítheti a Power BI szemantikai modelljeiben és a Pandas DataFrame-ekben lévő kapcsolatokat.

Az adatelemzésben és a gépi tanulásban fontos megérteni az adatok struktúráját és kapcsolatait. A Power BI egy hatékony eszköz, amellyel ezeket a struktúrákat és kapcsolatokat modellezheti és vizualizálhatja. Ha további elemzéseket szeretne szerezni vagy gépi tanulási modelleket szeretne készíteni, mélyebben is megismerkedhet a Szemantikai csatolási függvények használatával a SemPy-kódtármodulokban.

Az adattudósok és az üzleti elemzők a SemPy függvényekkel listázhatják, vizualizálhatják és érvényesíthetik a kapcsolatokat a Power BI szemantikai modelljeiben, illetve megkereshetik és érvényesíthetik a kapcsolatokat a Pandas DataFrame-ben.

Előfeltételek

  • Microsoft Fabric-előfizetés lekérése. Vagy regisztráljon egy ingyenes Microsoft Fabric-próbaverzióra.

  • Jelentkezzen be a Microsoft Fabricbe.

  • A kezdőlap bal oldalán található élménykapcsolóval válthat a Synapse Adattudomány felületre.

    Képernyőkép a felületváltó menüjéről, amelyen látható, hogy hol válassza ki a Adattudomány.

  • Hozzon létre egy új jegyzetfüzetet a kód cellákba másolásához/beillesztéséhez.

  • A Spark 3.4-hez és újabb verziókhoz a szemantikai hivatkozás az alapértelmezett futtatókörnyezetben érhető el a Fabric használatakor, és nincs szükség a telepítésre. A Spark 3.3 vagy újabb verziójához, illetve a szemantikai hivatkozás legújabb verziójára való frissítéshez futtassa a következő parancsot:

    %pip install -U semantic-link
    
  • Adjon hozzá egy tóházat a jegyzetfüzethez.

Kapcsolatok listázása szemantikai modellekben

A list_relationships modul függvénye egy sempy.fabric Power BI szemantikai modellben található összes kapcsolat listáját adja vissza. A lista segít megérteni az adatok szerkezetét, valamint a különböző táblák és oszlopok összekapcsolásának módját.

Ez a függvény úgy működik, hogy szemantikai hivatkozást használ a jegyzetekkel ellátott DataFrame-ek biztosításához. A DataFrame-ek tartalmazzák a szemantikai modellben lévő kapcsolatok megértéséhez szükséges metaadatokat. A jegyzetekkel ellátott DataFrame-ek megkönnyítik a szemantikai modell szerkezetének elemzését és használatát gépi tanulási modellekben vagy más adatelemzési feladatokban.

A list_relationships függvény használatához először importálja a modult sempy.fabric . Ezután a Power BI szemantikai modell nevének vagy UUID-jének használatával hívja meg a függvényt, ahogyan az az alábbi példában látható:

import sempy.fabric as fabric

fabric.list_relationships("my_dataset")

Az előző kód meghívja a list_relationships függvényt egy My_dataset nevű Power BI szemantikai modellel. A függvény egy pandas DataFrame-et ad vissza kapcsolatonként egy sorral, így könnyedén feltárhatja és elemezheti a szemantikai modellben lévő kapcsolatokat.

Feljegyzés

A jegyzetfüzet, a Power BI adathalmaz szemantikai modellje és a Lakehouse ugyanabban a munkaterületen vagy különböző munkaterületeken is elhelyezhető. A SemPy alapértelmezés szerint a következő forrásból próbálja elérni a szemantikai modellt:

  • A tóház munkaterülete, ha egy tóházat csatolt a jegyzetfüzethez.
  • A jegyzetfüzet munkaterülete, ha nincs csatlakoztatva a lakehouse.

Ha a szemantikai modell egyik munkaterületen sem található, a Szemantikai modell munkaterületét meg kell adnia, amikor Egy SemPy metódust hív meg.

Kapcsolatok vizualizációja szemantikai modellekben

A plot_relationship_metadata függvény segít vizualizálni a szemantikai modellben lévő kapcsolatokat, így jobban megértheti a modell struktúráját. Ez a függvény létrehoz egy grafikont, amely megjeleníti a táblák és oszlopok közötti kapcsolatokat. A gráf megkönnyíti a szemantikai modell szerkezetének és a különböző elemek összefüggésének megértését.

Az alábbi példa a függvény használatát plot_relationship_metadata mutatja be:

import sempy.fabric as fabric
from sempy.relationships import plot_relationship_metadata

relationships = fabric.list_relationships("my_dataset")
plot_relationship_metadata(relationships)

Az előző kódban a list_relationships függvény lekéri a my_dataset szemantikai modellben lévő kapcsolatokat, és a plot_relationship_metadata függvény létrehoz egy gráfot a kapcsolatok megjelenítéséhez.

Testre szabhatja a gráfot a belefoglalandó oszlopok meghatározásával, a hiányzó kulcsok kezelésének módjával és további graphviz-attribútumok biztosításával.

Kapcsolatok ellenőrzése szemantikai modellekben

Most, hogy jobban megismerte a szemantikai modellben lévő kapcsolatokat, a függvény segítségével érvényesítheti ezeket a list_relationship_violations kapcsolatokat, és azonosíthatja az esetleges problémákat vagy ellentmondásokat. A list_relationship_violations függvény segít ellenőrizni a táblák tartalmát, hogy azok megfeleljenek a szemantikai modellben meghatározott kapcsolatoknak.

Ennek a függvénynek a használatával azonosíthatja a megadott kapcsolati többséggel kapcsolatos inkonzisztenciákat, és megoldhat minden problémát, mielőtt azok hatással lennének az adatelemzési vagy gépi tanulási modellekre.

A list_relationship_violations függvény használatához először importálja a modult sempy.fabric , és olvassa el a táblákat a szemantikai modellből. Ezután meghívja a függvényt egy szótárral, amely táblaneveket képez le a táblatartalommal rendelkező DataFrame-ekhez.

Az alábbi példakód bemutatja, hogyan listázhatja a kapcsolati szabálysértéseket:

import sempy.fabric as fabric

tables = {
    "Sales": fabric.read_table("my_dataset", "Sales"),
    "Products": fabric.read_table("my_dataset", "Products"),
    "Customers": fabric.read_table("my_dataset", "Customers"),
}

fabric.list_relationship_violations(tables)

Az előző kód egy szótárral hívja meg a list_relationship_violations függvényt, amely a my_dataset szemantikai modell Értékesítési, Termékek és Ügyfelek tábláit tartalmazza. A függvény testre szabható egy lefedettségi küszöbérték beállításával, a hiányzó kulcsok kezelésének módjával és a jelentéshez hiányzó kulcsok számának meghatározásával.

A függvény egy pandas DataFrame-et ad vissza kapcsolati szabálysértésenként egy sorral, így egyszerűen azonosíthatja és kezelheti a szemantikai modellben felmerülő problémákat. A függvény használatával biztosíthatja, hogy a list_relationship_violations szemantikai modell konzisztens és pontos legyen, így megbízhatóbb gépi tanulási modelleket hozhat létre, és mélyebb betekintést nyerhet az adataiba.

Kapcsolatok keresése a Pandas DataFramesben

Bár a list_relationshipsHáló modulban található , plot_relationships_df és list_relationship_violations függvények hatékony eszközök a szemantikai modelleken belüli kapcsolatok feltárásához, előfordulhat, hogy más, pandas DataFrame-ként importált adatforrásokon belüli kapcsolatokat is fel kell fedeznie.

Itt jön létre a find_relationships sempy.relationship modul függvénye.

A find_relationships modulban található függvény segít az sempy.relationships adattudósoknak és az üzleti elemzőknek a pandas DataFrame-ek listájában található lehetséges kapcsolatok felderítésében. A függvény használatával azonosíthatja a táblák és oszlopok közötti lehetséges kapcsolatokat, így jobban megértheti az adatok szerkezetét és a különböző elemek összefüggéseit.

Az alábbi példakód bemutatja, hogyan kereshet kapcsolatokat a pandas DataFramesben:

from sempy.relationships import find_relationships

tables = [df_sales, df_products, df_customers]

find_relationships(tables)

Az előző kód meghívja a find_relationships függvényt három Pandas DataFrame-ből álló listával: df_sales, df_productsés df_customers. A függvény egy pandas DataFrame-et ad vissza egy lehetséges kapcsolat egy sorával, így könnyedén feltárhatja és elemezheti az adatokon belüli kapcsolatokat.

A függvény testre szabható egy lefedettségi küszöbérték, egy név-hasonlósági küszöbérték, a kizárandó kapcsolatok listája és a több-a-többhöz kapcsolatok megadásával.

Kapcsolatok ellenőrzése a pandas DataFramesben

Miután a pandas DataFrame-ekben a függvény használatával find_relationships potenciális kapcsolatokat fedez fel, a függvény segítségével érvényesítheti ezeket a list_relationship_violations kapcsolatokat, és azonosíthatja az esetleges problémákat vagy ellentmondásokat.

A list_relationship_violations függvény ellenőrzi a táblák tartalmát, hogy azok megfeleljenek a felderített kapcsolatoknak. Ha ezzel a függvénnyel azonosítja a megadott kapcsolati szorzással kapcsolatos inkonzisztenciákat, az adatelemzési vagy gépi tanulási modellekre gyakorolt hatásuk előtt elháríthatja az esetleges problémákat.

Az alábbi példakód bemutatja, hogyan kereshet kapcsolati szabálysértéseket a Pandas DataFramesben:

from sempy.relationships import find_relationships, list_relationship_violations

tables = [df_sales, df_products, df_customers]
relationships = find_relationships(tables)

list_relationship_violations(tables, relationships)

Az előző kód meghívja a list_relationship_violations függvényt három pandas DataFrames, df_salesdf_productsés , valamint df_customersa függvény DataFrame kapcsolatainak listájávalfind_relationships. A list_relationship_violations függvény egy pandas DataFrame-et ad vissza kapcsolati szabálysértésenként egy sorral, így könnyedén azonosíthatja és kezelheti az adatokon belüli problémákat.

A függvény testre szabható egy lefedettségi küszöbérték beállításával, a hiányzó kulcsok kezelésének módjával és a jelentéshez hiányzó kulcsok számának meghatározásával.

A pandas DataFrames funkcióval list_relationship_violations biztosíthatja, hogy az adatok konzisztensek és pontosak legyenek, így megbízhatóbb gépi tanulási modelleket hozhat létre, és mélyebb betekintést nyerhet az adatokba.