Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Microsoft Fabric'teki spark yerel semantik bağlayıcısını kullanarak verileri ve meta verileri okumayı ve anlam modellerindeki ölçüleri değerlendirmeyi öğrenebilirsiniz. Ayrıca anlamsal modellerin kullanabileceği verileri yazmayı da öğreneceksiniz.
Önkoşullar
Microsoft Fabric aboneliği alın. Alternatif olarak, ücretsiz bir Microsoft Fabric deneme sürümüne kaydolun.
Fabric'e geçmek için ana sayfanızın sol alt tarafındaki deneyim değiştiriciyi kullanın.
Microsoft Fabric'te Veri Bilimi deneyimine gidin.
- Sol bölmeden İş Yükleriöğesini seçin.
- Veri Bilimiseçin.
Hücrelere kod kopyalamak/yapıştırmak için yeni bir not defteri oluşturun.
-
Spark 3.4 ve üzeri sürümlerde, "Semantic link" varsayılan çalışma zamanında Fabric kullanılırken mevcuttur ve yüklemeniz gerekmez. Spark 3.3 veya üzerini kullanıyorsanız veya Anlam Bağlantısı'nın en son sürümüne güncelleştirmek istiyorsanız komutunu çalıştırabilirsiniz:
python %pip install -U semantic-link
Not defterinize bir Lakehouse ekleyin.
Fabric-samples deposunun datasets klasöründen Customer Profitability Sample.pbix anlam modelini indirin ve anlam modelini yerel olarak kaydedin.
Anlam modelini çalışma alanınıza yükleme
Bu makalede Customer Profitability Sample.pbix semantik modelini kullanacağız. Bu anlamsal model, pazarlama malzemeleri üreten bir şirkete başvurur ve çeşitli iş birimleri için ürünler, müşteriler ve buna karşılık gelen gelir hakkında veriler içerir.
- Sol bölmeden Çalışma Alanları
seçin ve ardından çalışma alanınızın adını seçerek açın. - Bu bilgisayardan
Rapor veya Sayfalandırılmış Rapor İçeri Aktar'ı seçin ve Customer Profitability Sample.pbix anlam modelini seçin.
Karşıya yükleme tamamlandıktan sonra, çalışma alanınızda üç yeni öğe vardır: Müşteri Karlılığı Örneği adlı anlam modeli, bir Power BI raporu ve bir pano. Bu semantik modeli bu makaledeki adımlar için kullanırsınız.
Python, R, SQL ve Scala'da Spark kullanarak verileri okuma ve yazma
Varsayılan olarak, anlamsal modellere erişmek için kullanılan çalışma alanı şu şekildedir:
- ekli Lakehouse çalışma alanı veya
- Lakehouse eklenmemişse not defterinin çalışma alanı.
Microsoft Fabric, çalışma alanında yer alan tüm anlam modellerindeki tüm tabloları Spark tabloları olarak kullanıma sunar. Tüm Spark SQL komutları Python, R ve Scala'da yürütülebilir. Anlamsal bağlantı Spark yerel bağlayıcısı, Spark koşullarının Power BI motoruna aktarılmasını destekler.
İpucu
Power BI tabloları ve ölçüleri normal Spark tabloları olarak kullanıma sunulduğundan, bunlar tek bir sorguda diğer Spark veri kaynaklarıyla birleştirilebilir.
PySpark kullanarak çalışma alanında tüm anlamsal modellerin tablolarını listeleyin.
df = spark.sql("SHOW TABLES FROM pbi") display(df)
SparkR kullanarak Müşteri Karlılığı Örneği anlamsal modelindeki Müşteri tablosundan verileri alın.
Not
Tabloların alınması katı sınırlamalara tabidir (bkz . Okuma Sınırlamaları) ve sonuçlar eksik olabilir. Aktarılan veri miktarını azaltmak için yığın azaltma tekniğini kullanın. Desteklenen toplayıcılar şunlardır: COUNT, SUM, AVG, MIN ve MAX.
%%sparkr df = sql("SELECT * FROM pbi.`Customer Profitability Sample`.Customer") display(df)
Power BI ölçüleri sanal tablo _Metrics aracılığıyla kullanılabilir. Aşağıdaki sorgu, bölgeye ve sektöre göre toplam gelir ve gelir bütçesini hesaplar.
%%sql SELECT `Customer[Country/Region]`, `Industry[Industry]`, AVG(`Total Revenue`), AVG(`Revenue Budget`) FROM pbi.`Customer Profitability Sample`.`_Metrics` WHERE `Customer[State]` in ('CA', 'WA') GROUP BY `Customer[Country/Region]`, `Industry[Industry]`
Spark şemasını kullanarak kullanılabilir ölçüleri ve boyutları inceleyin.
spark.table("pbi.`Customer Profitability Sample`._Metrics").printSchema()
Verileri Lakehouse'unuza delta tablosu olarak kaydedin.
delta_table_path = "<your delta table path>" #fill in your delta table path df.write.format("delta").mode("overwrite").save(delta_table_path)
Okuma erişimi sınırlamaları
Okuma erişimi API'lerinde aşağıdaki sınırlamalar vardır:
- Analysis Service'te 10 saniyeden uzun süre çalışan sorgular desteklenmez (Spark'ta gösterge: "java.net.SocketTimeoutException: PowerBI hizmeti iletişim başarısız oldu ")
- Spark SQL kullanarak Power BI tablo erişimi, Power BI arka uç sınırlamalarına tabidir.
- Spark _Metrics sorguları için koşul gönderimi tek bir IN ifadesiyle sınırlıdır ve en az iki öğe gerektirir. Ek IN ifadeleri ve desteklenmeyen koşul, veri aktarımı sonrasında Spark'ta değerlendirilir.
- Spark SQL kullanılarak erişilen Power BI tabloları için koşul iletimi aşağıdaki ifadeleri desteklemez:
- Spark SQL'de yeni anlamsal modellerin erişilebilir olması için Spark oturumu yeniden başlatılmalıdır.