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.
A kezdőlap bal oldalán található élménykapcsolóval válthat a Synapse Adattudomány felületre.
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
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_relationships
Há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_sales
df_products
és , valamint df_customers
a 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.
Kapcsolódó tartalom
- Tudnivalók a szemantikai függvényekről
- Ismerkedés a SemPy referenciadokumentációjával
- Oktatóanyag: Kapcsolatok felderítése szemantikai modellben szemantikai hivatkozás használatával
- Oktatóanyag: Kapcsolatok felderítése a Synthea-adathalmazban szemantikai hivatkozás használatával
- Funkcionális függőségek észlelése, felderítése és ellenőrzése az adatokban