Připojení Power BI sémantickým propojením a Microsoft Fabric
Připojení Power BI je jádrem sémantického propojení. V tomto článku se dozvíte o způsobech, jakými sémantický odkaz poskytuje připojení k sémantickým modelům pro uživatele ekosystému Python pandas a ekosystému Apache Spark.
Sémantický model obvykle představuje zlatý standard dat a je výsledkem upstreamového zpracování a upřesnění dat. Obchodní analytici můžou vytvářet sestavy Power BI z sémantických modelů a pomocí těchto sestav řídit obchodní rozhodnutí. Kromě toho můžou kódovat znalosti domény a obchodní logiku do měr Power BI. Datoví vědci můžou na druhé straně pracovat se stejnými sémantickými modely, ale obvykle v jiném prostředí nebo jazyce kódu. Vtakovýchch
Sémantické propojení překlenuje tuto mezeru mezi sémantických modelů a Datová Věda Synapse v prostředí Microsoft Fabric. Poskytuje tak obchodním analytikům a datovým vědcům způsob, jak bezproblémově spolupracovat a snižovat neshodu dat. Sémantický odkaz nabízí připojení k:
- Ekosystém knihovny Pandas Pythonu prostřednictvím knihovny SemPy Python a
- Sémantické modely prostřednictvím nativního konektoru Sparku, který podporuje PySpark, Spark SQL, R a Scala.
Připojení k datům prostřednictvím knihovny SemPy Python pro uživatele knihovny pandas
Knihovna SemPy Python je součástí funkce sémantického odkazu a obsluhuje uživatele knihovny pandas. SemPy poskytuje funkce, které zahrnují načítání dat z tabulek, výpočty měr a spouštění dotazů a metadat jazyka DAX.
Pro Spark 3.4 a vyšší je sémantický odkaz dostupný ve výchozím modulu runtime při použití prostředků infrastruktury a není nutné ho instalovat. Pokud používáte Spark 3.3 nebo novější nebo pokud chcete aktualizovat na nejnovější verzi sémantického odkazu, můžete příkaz spustit:
python %pip install -U semantic-link
SemPy také rozšiřuje datové rámce pandas o další metadata šířená ze zdroje dat Power BI. Tato metadata zahrnují:
- Kategorie dat Power BI:
- Geografická oblast: adresa, místo, město atd.
- URL: webová adresa URL, adresa URL obrázku
- Čárový kód
- Relace mezi tabulkami
- Hierarchie
Připojení k datům prostřednictvím sémantického propojení nativního konektoru Sparku
Podpora Sparku (PySpark, Spark SQL, R a Scala)
Sémantické propojení nativního konektoru Sparku umožňuje uživatelům Sparku přístup k tabulkám a mírám Power BI. Konektor je nezávislý na jazyce a podporuje PySpark, Spark SQL, R a Scala.
Pokud chcete použít nativní konektor Sparku, jsou sémantické modely reprezentovány jako obory názvů Sparku a transparentně zpřístupňují tabulky Power BI jako tabulky Sparku.
Nakonfigurujte Spark tak, aby používal nativní konektor Power BI Spark:
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")
Výpis všech tabulek v sémantickém modelu Sales Dataset
:
%%sql
SHOW TABLES FROM pbi.`Sales Dataset`
Zobrazení dat z tabulky Customer
v sémantickém modelu Sales Dataset
:
%%sql
SELECT * FROM pbi.`Sales Dataset`.Customer
Míry Power BI jsou přístupné prostřednictvím virtuální _Metrics
tabulky, aby přeměněly relační Spark SQL s multidimenzionálním Power BI.
V následujícím příkladu Total Revenue
jsou Revenue Budget
míry definované v sémantickém Sales Dataset
modelu, zatímco zbývající sloupce jsou dimenze.
Agregační funkce (například AVG
) je ignorována pro míry a slouží pouze pro konzistenci s SQL.
Konektor podporuje predikát push of computation from Spark expressions into the Power BI engine; Tím například Customer[State] in ('CA', 'WA')
povolíte využití optimalizovaného modulu Power BI.
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]`
Rozšíření dat pomocí měr Power BI
Operace add_measure
je výkonná funkce sémantického propojení, která umožňuje rozšířit data o míry z sémantických modelů.
Operace add_measure
je k dispozici pouze v knihovně SemPy Python a není podporována nativním konektorem Sparku. Další informace o add_measure
metodě najdete v tématu add_measure třídy FabricDataFrame
Pokud chcete použít knihovnu SemPy
Pythonu, musíte ji nejdřív nainstalovat do jádra poznámkového bloku spuštěním tohoto kódu v buňce poznámkového bloku:
Tip
Příklad kódu předpokládá, že jste ručně vytvořili objekt FabricDataFrame s daty, která chcete rozšířit o míry z sémantického modelu.
# %pip and import only needs to be done once per notebook
%pip install semantic-link
from sempy.fabric import FabricDataFrame
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")
Operace add_measure
provádí tyto kroky:
- Řeší názvy sloupců: Názvy sloupců v prvku FabricDataFrame se přeloží na dimenze Power BI. Všechny názvy sloupců, které nelze vyřešit v rámci daného sémantického modelu, se ignorují (viz podporovaná syntaxe jazyka DAX).
- Definuje seskupení podle sloupců pomocí přeložených názvů sloupců.
- Vypočítá jednu nebo více měr na úrovni skupiny.
- Filtruje výsledek podle existujících řádků v prvku FabricDataFrame.
Související obsah
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro