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.
Microsoft Fabric not defteri, Apache Spark işleri ve makine öğrenmesi denemeleri geliştirmeye yönelik birincil bir kod öğesidir. Veri bilimcileri ve veri mühendisleri tarafından zengin görselleştirmelerden ve Markdown metinlerinden yararlanan kod yazmak için kullanılan web tabanlı etkileşimli bir yüzeydir. Bu makalede, kod hücresi işlemleriyle not defterlerinin nasıl geliştirilip çalıştırılacakları açıklanmaktadır.
Dizüstü bilgisayarları geliştirme
Not defterleri, bağımsız olarak veya grup olarak çalıştırılabilir tek tek kod veya metin blokları olan hücrelerden oluşur.
Dizüstü bilgisayarlar geliştirmek için zengin fonksiyonlar sağlıyoruz.
- Hücre ekle
- Birincil dil ayarlama
- Birden çok dil kullanma
- IDE tarzı IntelliSense
- Kod parçacıkları
- Parçacıkları eklemek için sürükleyip bırakın
- Resim eklemek için sürükleyip bırakın
- Araç çubuğu düğmeleriyle metin hücresini biçimlendirme
- Hücre işlemini geri alma veya yeniden yapma
- Hücreyi taşıma
- Bir hücreyi sil
- Hücre girişini daraltma
- Hücre çıkışını daraltma
- Hücre çıkış güvenliği
- Hücreyi kilitleme veya dondurma
- Not defteri içeriği
- Markdown katlama
- Bul ve Değiştir
Bir hücre ekle
Not defterinize yeni hücre eklemenin birden çok yolu vardır.
İki hücre arasındaki boşluğun üzerine gelin ve Kod veya Markdown'ı seçin.
Komut modunda Kısayol tuşlarını kullanın. Geçerli hücrenin üzerine hücre eklemek için A tuşuna basın. Geçerli hücrenin altına hücre eklemek için B tuşuna basın.
Birincil dil ayarlama
Doku not defterleri şu anda dört Apache Spark dilini desteklemektedir:
- PySpark (Python)
- Spark (Scala)
- Spark SQL
- SparkR
Yeni eklenen hücreler için birincil dili üst komut çubuğundaki açılan listeden ayarlayabilirsiniz.
Birden çok dil kullanma
Bir hücrenin başında language magic komutunu belirterek not defterinde birden çok dil kullanabilirsiniz. Ayrıca, dil seçiciden hücre dilini de değiştirebilirsiniz. Aşağıdaki tabloda hücre dillerini değiştirmeye yönelik sihirli komutlar listeleniyor.
Büyü komutu | Dil | Açıklama |
---|---|---|
%%pyspark | Piton | Apache Spark Bağlamı için bir Python sorgusu yürütür. |
%%spark | Scala programlama dili | Apache Spark Bağlamı için bir Scala sorgusu yürütür. |
%%sql | SparkSQL | Apache Spark Bağlamında SparkSQL sorgusu yürütür. |
%%html | Html | Apache Spark Bağlamı'ndaki n HTML sorgusunu yürütür. |
%%sparkr | R | Apache Spark Bağlamı için bir R sorgusu yürütür. |
IDE tarzı IntelliSense
Fabric notebook'lar, hücre düzenleyicisine IDE tarzı IntelliSense'i getirmek için Monaco düzenleyici ile entegre edilmiştir. Söz dizimi vurgulama, hata işaretçisi ve otomatik kod tamamlama işlemleri, hızla kod yazmanıza ve sorunları belirlemenize yardımcı olur.
IntelliSense özellikleri farklı diller için farklı olgunluk düzeylerindedir. Aşağıdaki tabloda Fabric'in desteklediği şeyler gösterilmektedir:
Diller | Söz dizimi vurgusu | Söz dizimi hata işaretçisi | Sözdizim kod tamamlama | Değişken kod tamamlama | Sistem işlev kodu tamamlama | Kullanıcı işlevi kodu tamamlama | Akıllı girinti | Kod Katlama |
---|---|---|---|---|---|---|---|---|
PySpark (Python) | Evet | Evet | Evet | Evet | Evet | Evet | Evet | Evet |
Piton | Evet | Evet | Evet | Evet | Evet | Evet | Evet | Evet |
Spark (Scala) | Evet | Evet | Evet | Evet | Evet | Evet | Evet | Evet |
SparkSQL | Evet | Evet | Evet | Evet | Evet | Hayı | Evet | Evet |
SparkR | Evet | Evet | Evet | Evet | Evet | Evet | Evet | Evet |
T-SQL | Evet | Evet | Evet | Hayı | Evet | Evet | Evet | Evet |
Uyarı
IntelliSense kod tamamlama özelliğini kullanmak için etkin bir Apache Spark oturuma sahip olmanız gerekir.
Pylance ile Python Geliştirmeyi Geliştirme
Uyarı
Şu anda özellik önizleme aşamasındadır.
Güçlü ve özellik bakımından zengin bir dil sunucusu olan Pylance artık Doku not defterinde kullanılabilir. Pylance, akıllı tamamlamalar, daha iyi hata algılama ve gelişmiş kod içgörüleri ile Python geliştirmeyi kolaylaştırır. Önemli geliştirmeler arasında daha akıllı otomatik tamamlama, gelişmiş lambda desteği, parametre önerileri, geliştirilmiş vurgulama bilgileri, daha iyi docstring işleme ve hata vurgulama yer alır. Pylance ile Python ve PySpark kodu yazmak daha hızlı, daha doğru ve daha verimli hale gelir.
Kod parçacıkları
Doku not defterleri, yaygın olarak kullanılan kod desenlerini kolayca yazmanıza yardımcı olan kod parçacıkları sağlar, örneğin:
- Apache Spark DataFrame olarak veri okuma
- Matplotlib ile grafik çizme
Kod parçacıkları, diğer önerilerle birlikte IDE stil IntelliSense'in kısayol tuşlarında görüntülenir. Kod parçacığının içeriği, kod hücresinin diliyle uyumludur. Snippet yazarak mevcut kod parçacıklarını görebilirsiniz. ayrıca ilgili kod parçacıklarının listesini görmek için herhangi bir anahtar sözcük yazabilirsiniz. Örneğin, okuma yazarsanız, çeşitli veri kaynaklarından gelen verileri okumak için kod parçacıklarının listesini görürsünüz.
Parçacıkları eklemek için sürükleyip bırakın
Lakehouse gezgininden verileri rahatça okumak için sürükleyip bırakma özelliğini kullanın. Burada birden çok dosya türü desteklenir; metin dosyaları, tablolar, resimler vb. üzerinde çalışabilirsiniz. Varolan bir hücreye veya yeni bir hücreye bırakabilirsiniz. Not defteri, verilerin önizlemesini görüntülemek için kod parçacığını buna göre oluşturur.
Resim eklemek için sürükleyip bırakın
Tarayıcınızdan veya yerel bilgisayarınızdan markdown hücresine kolayca resim eklemek için sürükleyip bırakma özelliğini kullanın.
Araç çubuğu düğmeleriyle metin hücresini biçimlendirme
Yaygın markdown eylemlerini tamamlamak için metin hücresi araç çubuğundaki biçim düğmelerini kullanın.
Hücre işlemlerini geri al veya tekrar yap
Geri Al veya Yinele'yi seçin, ya da en son hücre işlemlerini iptal etmek için Z veya Shift+Z tuşlarına basın. En son geçmiş hücre işlemlerinin en fazla 10'unu geri alabilir veya yineleyebilirsiniz.
Desteklenen hücre geri alma işlemleri:
- Hücre ekleme veya silme. Geri Al
seçerek silinen işlemleri iptal edebilirsiniz (metin içeriği hücreyle birlikte tutulur). - Hücreyi yeniden sırala.
- Parametreyi değiştirme.
- Kod hücresi ile Markdown hücresi arasında dönüştürme.
Uyarı
Hücre içi metin işlemleri ve kod hücresi açıklama işlemleri geri alınamaz. En son geçmiş hücre işlemlerinin en fazla 10'unu geri alabilir veya yineleyebilirsiniz.
Hücreyi taşı
Hücrenin boş kısmından sürükleyip istediğiniz konuma bırakabilirsiniz.
Şeritteki Yukarı Taşı ve Aşağı Taşı komutlarını kullanarak seçili hücreyi de taşıyabilirsiniz.
Bir hücreyi sil
Hücreyi silmek için hücrenin sağ tarafındaki sil düğmesini seçin.
Komut modunda kısayol tuşlarını da kullanabilirsiniz. Geçerli hücreyi silmek için Shift+D tuşlarına basın.
Hücre girişini daralt
Hücre araç çubuğunda Diğer komutlar üç noktasına (...) tıklayın ve mevcut hücrenin girişini daraltmak için Girişi Gizle'yi seçin. Hücre daraltıldığında tekrar genişletmek için Girişi Göster'i seçin.
Hücre çıkışını çökert
Hücre araç çubuğunda Diğer komutlar üç nokta (...) simgesini ve Çıkışı gizle'yi seçin, böylece geçerli hücrenin çıktısı daralır. Hücre çıkışı daraltıldığında yeniden genişletmek için Çıkışı Göster seçeneğini seçin.
Hücre çıkış güvenliği
OneLake veri erişim rollerini (önizleme) kullanan kullanıcılar, not defteri sorguları sırasında yalnızca göl evindeki belirli klasörlere erişimi yapılandırabilir. Klasöre veya tabloya erişimi olmayan kullanıcılar sorgu yürütme sırasında yetkisiz bir hata görür.
Önemli
Güvenlik yalnızca sorgu yürütme sırasında geçerlidir ve sorgu sonuçlarını içeren tüm not defteri hücreleri, doğrudan verilerde sorgu çalıştırma yetkisi olmayan kullanıcılar tarafından görüntülenebilir.
Hücreyi kilitleme veya dondurma
Hücreyi kilitleme ve dondurma işlemleri, hücreleri salt okunur hale getirmenize veya kod hücrelerinin ayrı ayrı çalıştırılmasını durdurmanıza olanak sağlar.
Hücreleri birleştirme ve bölme
İlişkili hücreleri rahatça birleştirmek için Önceki hücreyle Birleştir'i veya Sonraki hücreyle birleştir'i kullanabilirsiniz.
Hücreyi Böl seçeneğini seçmek, ilgisiz ifadeleri birden fazla hücreye bölmenize yardımcı olur. İşlem, kodu imlecinizin satır konumuna göre böler.
Not defteri içeriği
Anahatlar veya İçindekiler Tablosu seçildiğinde, hızlı gezinti için kenar çubuğunda herhangi bir markdown hücresinin ilk markdown başlığı gösterilir. Ana Hatlar kenar çubuğu, ekrana mümkün olan en iyi şekilde sığacak şekilde yeniden boyutlandırılabilir ve daraltılabilir. Kenar çubuğunu açmak veya gizlemek için not defteri komut çubuğundaki İçindekiler düğmesini seçin.
Markdown bölümleme
Markdown katlama seçeneği, başlık içeren bir markdown hücresinin altındaki hücreleri gizlemenize olanak tanır. Markdown hücresi ve gizli hücreleri, hücre işlemleri gerçekleştirilirken çok seçili bitişik hücreler kümesiyle aynı kabul edilir.
Bulma ve değiştirme
Bul ve değiştir seçeneği, not defteri içeriğinizdeki anahtar sözcükleri veya ifadeleri eşleştirmenize ve bulmanıza yardımcı olabilir. Ayrıca hedef dizeyi kolayca yeni bir dizeyle değiştirebilirsiniz.
Copilot satır içi kod tamamlama (Önizleme)
Copilot satır içi kod tamamlama, Doku Not Defterleri'nde Python kodunu daha hızlı ve daha verimli yazmanıza yardımcı olan yapay zeka destekli bir özelliktir. Bu özellik, siz kod yazarken akıllı, bağlama duyarlı kod önerileri sağlar. Yinelenen görevleri azaltır, söz dizimi hatalarını en aza indirir ve not defteri iş akışınızla sorunsuz bir şekilde tümleştirerek geliştirmeyi hızlandırır.
Ana faydalar
- Yapay zeka temelli tamamlamalar: Milyonlarca kod satırı üzerinde eğitilmiş bir model kullanarak not defterinizin bağlamını temel alan öneriler oluşturur.
- Üretkenliği artırır: Karmaşık işlevler yazmaya yardımcı olur, yinelenen kodlamayı azaltır ve tanıdık olmayan kitaplıkların keşfini hızlandırır.
- Hataları azaltır: Akıllı, bağlama duyarlı tamamlamalarla yazım ve söz dizimi hatalarını en aza indirir.
- Minimal kurulum: Fabric not defterlerinde yerleşik olup, herhangi bir yükleme gerektirmez. Yalnızca etkinleştirebilir ve kodlamaya başlayabilirsiniz.
Nasıl çalışır?
Defterinizin en altındaki açma-kapama düğmesini kullanarak satır içi kod önerilerini etkinleştirin. Siz yazarken, öneriler açık gri metinde görünür, kabul etmek veya değiştirmek için Sekme tuşuna basın. Öneriler önceki not defteri hücrelerini temel alır.
Uyarı
Copilot satır içi kod tamamlamanın etkinleştirilmesi ek kapasite birimlerini tüketir.
Mevcut sınırlamalar
- Copilot Satır İçi Kod Tamamlama, şu anda Python dilini desteklemekte olup, önceki hücrelerden ve Lakehouse şemalarından alınan bağlamı kullanır.
- Öneriler, Lakehouse şemalarından alınan verileri dikkate alır.
- Çok sayıda tablo veya sütun olduğunda yalnızca şema öğelerinin bir alt kümesi kullanılır.
- Dinamik olarak oluşturulan tablolar (Spark aracılığıyla) gerçek zamanlı olarak tanınmaz.
Not defterlerini çalıştırma
Not defterinizdeki kod hücrelerini tek tek veya tümünü aynı anda çalıştırabilirsiniz. Her hücrenin durumu ve ilerleme durumu not defterinde görüntülenir.
Hücreyi çalıştır
Kodu bir hücrede çalıştırmanın birkaç yolu vardır.
Çalıştırmak istediğiniz hücrenin üzerine gelin ve Hücreyi çalıştır düğmesini seçin veya Ctrl+Enter tuşlarına basın.
Komut modunda Kısayol tuşlarını kullanın. Geçerli hücreyi çalıştırmak ve sonraki hücreyi seçmek için Shift+Enter tuşlarına basın. Geçerli hücreyi çalıştırmak ve yeni bir hücre eklemek için Alt+Enter tuşlarına basın.
Tüm hücreleri çalıştır
Geçerli not defterindeki tüm hücreleri sırayla çalıştırmak için Tümünü çalıştır düğmesini seçin.
Yukarıdaki veya altındaki tüm hücreleri çalıştırma
Tümünü çalıştır'dan açılan listeyi genişletin, ardından geçerli hücrenin üzerindeki tüm hücreleri sırayla çalıştırmak için Yukarıdaki Hücreleri çalıştır'ı seçin. Geçerli hücreyi ve geçerli hücrenin altındaki tüm hücreleri sırayla çalıştırmak için aşağıdaki Hücreleri çalıştır'ı seçin.
Çalışan tüm hücreleri iptal etme
Çalışan veya kuyrukta bekleyen hücreleri iptal etmek için Tümünü iptal et'i seçin.
Oturumu durdur
Oturumu Durdur, çalışan ve bekleyen hücreleri iptal eder ve mevcut oturumu sonlandırır. Yeniden çalıştır seçeneğini belirleyerek yepyeni bir oturumu yeniden başlatabilirsiniz.
Referans çalıştırma
Defter çalıştırma referansı
Notebookutils referans çalıştırma API'sine ek olarak, mevcut not defterinin bağlamında başka bir not defterine başvurmak için magic komutunu da kullanabilirsiniz. Başvuru not defterinde tanımlanan tüm değişkenler geçerli not defterinde kullanılabilir.
%run
Sihirli komut iç içe çağrıları destekler ancak özyinelemeli çağrıları desteklemez. Eğer deyim derinliği beşten büyükse bir istisna alırsınız.
Örnek: %run Notebook1 { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }
.
Defter hem etkileşimli modda hem de işlem hattında çalışır.
Uyarı
- Komut
%run
şu anda yalnızca geçerli not defteriyle aynı çalışma alanında yer alan başvuru not defterlerini destekler. - Komut
%run
şu anda en fazla dört parametre değeri türünü destekler:int
,float
,bool
vestring
. Değişken değiştirme işlemi desteklenmez. -
%run
komutu, derinliği beşten büyük olan iç içe referansları desteklemez.
Bir betik çalıştırmayı referans al
Komut %run
ayrıca not defterinin yerleşik kaynaklarında depolanan Python veya SQL dosyalarını çalıştırmanıza olanak tanır, böylece kaynak kod dosyalarınızı not defterinde rahatça yürütebilirsiniz.
%run [-b/--builtin -c/--current] [script_file.py/.sql] [variables ...]
Seçenekler için:
- -b/--builtin: Bu seçenek, komutun not defterinin yerleşik kaynaklarından belirtilen betik dosyasını bulduğunu ve çalıştırdığını gösterir.
- -c/--current: Bu seçenek, geçerli not defterine diğer not defterleri tarafından başvurulsa bile komutun her zaman geçerli not defterinin yerleşik kaynaklarını kullanmasını sağlar.
Örnekler:
Yerleşik kaynaklardan script_file.py'yi çalıştırmak için:
%run -b script_file.py
Yerleşik kaynaklardan script_file.sql dosyasını çalıştırmak için:
%run -b script_file.sql
Yerleşik kaynaklardan script_file.py dosyasını belirli değişkenlerle çalıştırmak için:
Uyarı
Komut -b/--builtin içermiyorsa, yerleşik kaynaklar yerine aynı çalışma alanında not defteri öğesini bulmaya ve yürütmeye çalışır.
İç içe çalıştırma senaryosu örneği:
- İki not defterimiz olduğunu varsayalım.
- Notebook1: Yerleşik kaynaklarında script_file1.py bulunur.
- Not Defteri2: Yerleşik kaynaklarında script_file2.py içerir
- Şimdi Not Defteri1'i içeriğiyle kök not defteri olarak kullanalım:
%run Notebook2
. - Ardından Not Defteri2'ndeki kullanım yönergesi şöyledir:
-
Notebook1'de (kök Not Defteri) script_file1.py çalıştırmak için kod şöyle olacaktır:
%run -b script_file1.py
-
Notebook2(geçerli Not Defteri) içinde script_file2.py çalıştırmak için kod şu şekilde olabilir:
%run -b -c script_file2.py
-
Notebook1'de (kök Not Defteri) script_file1.py çalıştırmak için kod şöyle olacaktır:
Değişken kâşifi
Fabric defterleri, PySpark (Python) hücreleri için geçerli Spark oturumundaki değişkenlerin adını, türünü, uzunluğunu ve değerini gösteren yerleşik bir değişken gezgini sağlar. Kod hücrelerinde tanımlanan diğer değişkenler otomatik olarak gösterilir. Her sütun üst bilgisine tıklandığında tablodaki değişkenler sıralanır.
Değişken gezginini açmak veya gizlemek için not defteri şeridi görünümde Değişkenler'i seçin.
Uyarı
Değişken gezgini yalnızca Python'ı destekler.
Hücre durumu göstergesi
Hücrenin geçerli ilerleme durumunu görmenize yardımcı olmak için altında adım adım yürütme durumu görüntülenir. Hücre çalıştırması tamamlandıktan sonra, toplam süre ve bitiş zamanını içeren bir yürütme özeti görüntülenir ve gelecekte başvurmak üzere orada depolanır.
Oturum durumu göstergesi
Oturum zaman aşımı yapılandırması
Geçerli oturum hakkında daha fazla bilgi edinmek için sol alt köşedeki oturum durumunu seçebilirsiniz:
Açılır pencerede zaman aşımını x dakika veya saat olarak sıfırlama seçeneği vardır.
Kesintisiz oturuma ne kadar süreyle devam etmek istediğinizi belirleyin ve uygula'ya tıklayın. Oturum zaman aşımı kendini yeni değerle sıfırlar ve başlamaya hazırsınız!
Ayrıca zaman aşımını şu bölümde açıklandığı gibi ayarlayabilirsiniz:
- Microsoft Fabric'te Veri Mühendisliği çalışma alanı yönetim ayarları
- Spark oturumu yapılandırma sihirli komutu
Oturumunuz açık kalsın: Oturum açma sırasında Oturum açık kalsın iletişim kutusunu görürseniz, geçerli oturumunuzun boşta oturum zaman aşımını devre dışı bırakmak için Evet'i seçin.
Önemli
Oturum açma ayarlarınıza kilitleneceği için Bunu bir daha gösterme onay kutusunu seçmeyin. Dikkat edin ki, kiracı yöneticiniz Beni Oturum Açık Tut (KMSI) ayarını devre dışı bıraktıysa bu seçenek görünmeyebilir.
İlke değişikliği isteyin: Daha uzun bir oturum süresine ihtiyacınız varsa kiracı yöneticinizden boşta oturum zaman aşımı süresi ilkesini genişletmesini isteyin. Bunu yapmak için M365 Yönetim Merkezi'ndeki Kuruluş Ayarları > Güvenlik ve Gizlilik > Boşta Oturumu Zaman Aşımı'na gidebilirler.
Uyarı
KMSI'yi seçmek ve/veya boşta kalan oturum zaman aşımı süresini uzatmak, kilitli olmayan bir makinenin erişilmesi riskini uzatır.
ABT ve boşta oturum zaman aşımı, uzun süreli çalışan Fabric Notebook yürütmelerini nasıl etkiler?
Kiracınız etkinlik tabanlı zaman aşımı (ABT) kullanıyorsa, Microsoft Fabric not defterlerindeki uzun süreli çalışan etkileşimli görevler, Microsoft 365'in boşta oturum zaman aşımı politikası tarafından etkilenebilir. Bu güvenlik özelliği, bir not defteri işi hala çalışıyor olsa bile etkin olmayan, yönetilmeyen cihazlarda kullanıcıların oturumunu kapatmak için tasarlanmıştır. Diğer Microsoft 365 uygulamalarındaki etkinlikler oturumu canlı tutabilir; ancak, cihazlar boştayken tasarım gereği otomatik olarak oturum kapatılır.
Not defteri işi çalışmaya devam ederken bile kullanıcılar neden oturumlarını kapatıyor?
Boşta oturum zaman aşımı, yetkisiz erişimi önlemek için etkin olmayan cihazlarda oturumları sonlandırarak güvenliğin önceliğini belirler. Bir not defteri yürütme işlemi devam ederken bile, cihazda etkinlik gösterilmiyorsa oturum sona erer. Boşta olan cihazlarda oturumların açık tutulması güvenliği tehlikeye atabilir ve bu nedenle geçerli davranış uygulanır.
Yerleşik Apache Spark iş göstergesi
Fabric defteri Apache Spark tabanlıdır. Kod hücreleri Apache Spark kümesinde uzaktan yürütülür. Spark işi ilerleme göstergesi, iş yürütme durumunu anlamanıza yardımcı olacak şekilde gerçek zamanlı bir ilerleme çubuğuyla sağlanır. Her iş veya aşamaya göre görev sayısı Spark işinizin paralel düzeyini belirlemenize yardımcı olur. Ayrıca, iş (veya aşama) adından bağlantıyı seçerek belirli bir işin (veya aşamanın) Spark kullanıcı arabiriminde daha ayrıntılı detaya gidebilirsiniz.
İlerleme göstergesinin yanında Hücre düzeyi gerçek zamanlı günlüğünü de bulabilirsiniz ve Tanılama , kodu iyileştirmeye ve hata ayıklamaya yardımcı olmak için size yararlı öneriler sağlayabilir.
Diğer eylemler bölümünde Spark uygulaması ayrıntıları sayfasına ve Spark web kullanıcı arabirimi sayfasına kolayca gidebilirsiniz.
Gizli sansürleme
tr-TR: Not defterleri çalıştırıldığında kimlik bilgilerinin yanlışlıkla sızmasını önlemek için, Doku not defterleri hücre çıktılarında görüntülenen gizli değerleri ile değiştiren Gizli Dizi Maskeleme işlevini destekler. Gizli redaksiyon Python, Scala ve R için geçerlidir.
Not defterindeki sihirli komutlar
Yerleşik sihirli komutlar
Fabric defterlerinde tanıdık Ipython sihirli komutlarını kullanabilirsiniz. Şu anda kullanılabilen sihirli komutların listesini gözden geçirin.
Uyarı
Fabric işlem hattında desteklenen sihirli komutlar yalnızca şunlardır: %%pyspark, %%spark, %%csharp, %%sql, %%configure.
Kullanılabilir satır büyüsü komutları: %lsmagic, %time, %timeit, %history, %run, %load, %alias, %alias_magic, %autoawait, %autocall, %automagic, %bookmark, %cd, %colors, %dhist, %dirs, %doctest_mode, %killbgscripts, %load_ext, %logoff, %logon, %logstart, %logstate, %logstop, %magic, %matplotlib, %page, %pastebin, %pdef, %pfile, %pinfo, %pinfo2, %popd, %pprint, %precision, %prun, %psearch, %psource, %pushd, %pwd, %pycat, %quickref, %rehashx, %reload_ext, %reset, %reset_selective, %sx, %system, %tb, %unalias, %unload_ext, %who, %who_ls, %whos, %xdel, %xmode.
Fabric defteri ayrıca geliştirilmiş %pip ve %conda kitaplık yönetimi komutlarını da destekler. Kullanım hakkında daha fazla bilgi için bkz . Microsoft Fabric'te Apache Spark kitaplıklarını yönetme.
Kullanılabilir hücre sihirli komutları: %%time, %%timeit, %%capture, %%writefile, %%sql, %%pyspark, %%spark, %%csharp, %%configure, %%html, %%bash, %%markdown, %%perl, %%script, %%sh.
Özel sihirli komutlar
Ayrıca, özel gereksinimlerinizi karşılamak için daha fazla özel sihirli komut oluşturabilirsiniz. Bir örnek aşağıda verilmiştir:
"MyLakehouseModule" adlı bir not defteri oluşturun.
Başka bir not defterinde "MyLakehouseModule" ve onun sihirli komutlarına başvurun. Bu işlem, farklı diller kullanan not defterleriyle projenizi kolayca düzenlemenizi sağlar.
IPython Pencere Öğeleri
IPython Pencere Öğeleri, tarayıcıda temsili olan olaylı Python nesneleridir. IPython Pencere Öğelerini tıpkı Jupyter not defteri gibi not defterinizde düşük kod denetimleri (örneğin, kaydırıcı veya metin kutusu) olarak kullanabilirsiniz. Şu anda yalnızca Python bağlamında çalışır.
IPython Pencere Öğelerini kullanmak için
Jupyter Pencere Öğesi çerçevesini kullanmak için önce ipywidgets modülünü içeri aktarın.
import ipywidgets as widgets
Bir pencere öğesini işlemek için en üst düzey görüntüleme işlevini kullanın veya kod hücresinin son satırında pencere öğesi türünde bir ifade bırakın.
slider = widgets.IntSlider() display(slider)
Hücreyi çalıştırın. Widget, çıktı alanında görüntülenir.
slider = widgets.IntSlider() display(slider)
Aynı pencere öğesi örneğini birden çok kez işlemek için birden çok display() çağrısı kullanın. Birbirleriyle uyumlu kalırlar.
slider = widgets.IntSlider() display(slider) display(slider)
İki pencere öğesini birbirinden bağımsız olarak işlemek için iki pencere öğesi örneği oluşturun:
slider1 = widgets.IntSlider() slider2 = widgets.IntSlider() display(slider1) display(slider2)
Desteklenen pencere öğeleri
Widget'ler türü | Widget'ler |
---|---|
Sayısal widgetlar | IntSlider, FloatSlider, FloatLogSlider, IntRangeSlider, FloatRangeSlider, IntProgress, FloatProgress, BoundedIntText, BoundedFloatText, IntText, FloatText |
Boolean widget'lar | Geçiş Düğmesi, Onay Kutusu, Geçerli |
Seçim araçları | Açılan Menü, Radyo Butonları, Seçim, Seçim Kaydırıcı, Seçim Aralığı Kaydırıcısı, Geçiş Butonları, Çoklu Seçim |
Dize bileşenler | Metin, Metin alanı, Birleşik Giriş Kutusu, Parola, Etiket, HTML, HTML Matematik, Resim, Düğme |
Oynat (animasyon) pencere öğeleri | Tarih seçici, Renk seçici, Denetleyici |
Kapsayıcı veya düzen bileşenleri | Kutu, Yatay Kutu (HBox), Dikey Kutu (VBox), Izgara Kutusu (GridBox), Akordeon, Sekmeler (Tabs), Yığılmış |
Bilinen sınırlamalar
Aşağıdaki pencere öğeleri henüz desteklenmemektedir. Aşağıdaki geçici çözümler kullanılabilir:
Işlevsel -liği Geçici çözüm Çıkış widget Stdout'a metin yazmak için bunun yerine print() işlevini kullanabilirsiniz. widgets.jslink() İki benzer pencere öğesini bağlamak için widgets.link() işlevini kullanabilirsiniz. FileUpload bileşeni Henüz desteklenmiyor. Fabric global görüntüleme işlevi, birden çok pencere öğesinin tek bir çağrıda görüntülenmesini desteklemez (örneğin, display(a, b)). Bu davranış, IPython görüntüleme işlevinden farklıdır.
IPython pencere öğesi içeren bir not defterini kapatırsanız, ilgili hücreyi yeniden yürütene kadar bu öğeyi göremez veya onunla etkileşim kuramazsınız.
Interact işlevi (ipywidgets.interact) desteklenmez.
Notebook'u entegre etme
Parametre hücresi belirleme
Not defterinizi parametreleştirmek için üç noktayı (...) seçerek hücre araç çubuğundaki Diğer komutlarına erişin. Ardından Parametre hücresini değiştir'i seçerek hücreyi parametre hücresi olarak belirleyin.
Parametre hücresi, bir not defterini işlem hattıyla tümleştirmek için kullanışlıdır. İşlem hattı etkinliği, parametre hücresini arar ve bu parametre hücresini yürütme zamanında geçirilen parametreler için varsayılan olarak kabul eder. Yürütme altyapısı, varsayılan değerlerin üzerine yazmak için giriş parametreleriyle parametre hücresinin altına yeni bir hücre ekler.
İşlem hattından parametre değerleri atama
Parametrelerle bir not defteri oluşturduktan sonra, bunu Fabric not defteri etkinliğiyle bir işlem hattından çalıştırabilirsiniz. Etkinliği işlem hattı tuvalinize ekledikten sonra, Ayarlar sekmesinin Temel parametreler bölümünde parametre değerlerini ayarlayabilirsiniz.
Parametre değerleri atarken işlem hattı ifade dilini veya işlevlerini ve değişkenlerini kullanabilirsiniz.
Spark oturumu yapılandırma sihirli komutu
Spark oturumunuzu %%configure sihirli komutuyla kişiselleştirebilirsiniz. Fabric not defteri, özelleştirilmiş vçekirdekler, sürücü ve yürütücü belleği, Apache Spark özellikleri, bağlama noktaları, havuzu ve not defteri oturumunun varsayılan lakehouse'unu destekler. Bunlar hem etkileşimli not defteri hem de işlem hattı not defteri etkinliklerinde kullanılabilir. Not defterinizin başında %%configure komutunu çalıştırmanızı veya ayarların etkili olması için Spark oturumunu yeniden başlatmanızı öneririz.
%%configure
{
// You can get a list of valid parameters to config the session from https://github.com/cloudera/livy#request-body.
"driverMemory": "28g", // Recommended values: ["28g", "56g", "112g", "224g", "400g"]
"driverCores": 4, // Recommended values: [4, 8, 16, 32, 64]
"executorMemory": "28g",
"executorCores": 4,
"jars": ["abfs[s]: //<file_system>@<account_name>.dfs.core.windows.net/<path>/myjar.jar", "wasb[s]: //<containername>@<accountname>.blob.core.windows.net/<path>/myjar1.jar"],
"conf":
{
// Example of customized property, you can specify count of lines that Spark SQL returns by configuring "livy.rsc.sql.num-rows".
"livy.rsc.sql.num-rows": "3000",
"spark.log.level": "ALL"
},
"defaultLakehouse": { // This overwrites the default lakehouse for current session
"name": "<lakehouse-name>",
"id": "<(optional) lakehouse-id>",
"workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>" // Add workspace ID if it's from another workspace
},
"mountPoints": [
{
"mountPoint": "/myMountPoint",
"source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path>"
},
{
"mountPoint": "/myMountPoint1",
"source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path1>"
},
],
"environment": {
"id": "<environment-id>",
"name": "<environment-name>"
},
"sessionTimeoutInSeconds": 1200,
"useStarterPool": false, // Set to true to force using starter pool
"useWorkspacePool": "<workspace-pool-name>"
}
Uyarı
- %%configure içinde "DriverMemory" ve "ExecutorMemory" için aynı değeri ayarlamanızı öneririz. "driverCores" ve "executorCores" değerleri de aynı olmalıdır.
- "defaultLakehouse", Lakehouse gezgini içinde sabitlenmiş olan lakehouse'unuzun üzerine yazacaktır, ancak bu yalnızca mevcut not defteri oturumunuzda çalışır.
- Fabric hatlarında %%configure kullanabilirsiniz, ancak ilk kod hücresinde ayarlanmadıysa, işlem hattı çalıştırması oturumun yeniden başlatılamaması nedeniyle başarısız olur.
- notebookutils.notebook.run dosyasında kullanılan %%configure yok sayılır, ancak %run not defterinde kullanıldığında yürütülmeye devam eder.
- Standart Spark yapılandırma özellikleri "conf" gövdesinde kullanılmalıdır. Fabric, Spark yapılandırma özellikleri için birinci düzey başvuruyu desteklemez.
- "spark.driver.cores", "spark.executor.cores", "spark.driver.memory", "spark.executor.memory" ve "spark.executor.instances" gibi belirli Spark özellikleri "conf" gövdesinde etkili olmaz.
İşlem hattından parametreli oturum yapılandırması
Parametreli oturum yapılandırması, %% configure magic içindeki değeri, işlem hattı çalıştırma not defteri etkinlik parametreleriyle değiştirmenize olanak tanır. %%configure code hücresini hazırlarken, aşağıdaki örnekte varsayılan değerleri (yapılandırılabilir, 4 ve "2000" olarak da) aşağıdaki gibi bir nesneyle geçersiz kılabilirsiniz:
{
"parameterName": "paramterNameInPipelineNotebookActivity",
"defaultValue": "defaultValueIfNoParamterFromPipelineNotebookActivity"
}
%%configure
{
"driverCores":
{
"parameterName": "driverCoresFromNotebookActivity",
"defaultValue": 4
},
"conf":
{
"livy.rsc.sql.num-rows":
{
"parameterName": "rows",
"defaultValue": "2000"
}
}
}
Bir not defterini doğrudan etkileşimli modda çalıştırırsanız veya işlem hattı not defteri etkinliği "activityParameterName" ile eşleşen bir parametre vermiyorsa, not defteri varsayılan değeri kullanır.
Bir işlem hattı çalıştırması sırasında, işlem hattı defter etkinlik ayarlarını şu şekilde yapılandırabilirsiniz:
Oturum yapılandırmasını değiştirmek istiyorsanız, işlem hattı not defterindeki etkinlik parametreleri adlarının parameterName
ile aynı olması gerekir. Bu işlem hattı çalıştırma örneğinde, %%configure içindeki driverCores
8 ile ve livy.rsc.sql.num-rows
4000 ile değiştirilir.
Uyarı
- %%configure magic komutunu kullandığınız için işlem hattı çalıştırması başarısız olursa%% configure magic hücresini not defterinin etkileşimli modunda çalıştırarak daha fazla hata bilgisi bulabilirsiniz.
- Notebook planlanmış çalıştırmalar parametreli oturum yapılandırmasını desteklemez.
Defterde Python loglaması
Python günlüklerini bulabilir ve burada gösterilen örnek kod gibi farklı günlük düzeyleri ve biçimler ayarlayabilirsiniz:
import logging
# Customize the logging format for all loggers
FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
formatter = logging.Formatter(fmt=FORMAT)
for handler in logging.getLogger().handlers:
handler.setFormatter(formatter)
# Customize log level for all loggers
logging.getLogger().setLevel(logging.INFO)
# Customize the log level for a specific logger
customizedLogger = logging.getLogger('customized')
customizedLogger.setLevel(logging.WARNING)
# logger that use the default global log level
defaultLogger = logging.getLogger('default')
defaultLogger.debug("default debug message")
defaultLogger.info("default info message")
defaultLogger.warning("default warning message")
defaultLogger.error("default error message")
defaultLogger.critical("default critical message")
# logger that use the customized log level
customizedLogger.debug("customized debug message")
customizedLogger.info("customized info message")
customizedLogger.warning("customized warning message")
customizedLogger.error("customized error message")
customizedLogger.critical("customized critical message")
Giriş komutlarının geçmişini görüntüleme
Fabric not defteri, geçerli oturumda yürütülen giriş komut geçmişini yazdırmak için sihirli komutu %history
destekler ve standart Jupyter Ipython komutuyla karşılaştırıldığında, not defterinde birden fazla dil bağlamında çalışır.
%history [-n] [range [range ...]]
Seçenekler için:
- -n: Yürütme numarasını yazdırın.
Aralık şu durumlarda yer alabilir:
- N: Yürütülen N’inci hücrenin kodunu yazdırın.
- M-N: M. hücreden N. yürütülen hücreye kadar olan kodu yazdırın.
Örnek:
- 1. ve 2. yürütülen hücreler arasındaki giriş geçmişini yazdırın:
%history -n 1-2
Kısayol tuşları
Jupyter Notebooks'a benzer şekilde, Doku not defterlerinin modlu bir kullanıcı arabirimi vardır. Klavye, not defteri hücresinin hangi modda olduğuna bağlı olarak farklı şeyler yapar. Doku not defterleri, belirli bir kod hücresi için şu iki modu destekler: Komut modu ve Düzenleme modu.
Bir hücre, yazmanızı isteyen metin imleci olmadığında Komut modundadır. Bir hücre Komut modundayken, not defterini bir bütün olarak düzenleyebilirsiniz, ancak tek tek hücrelere yazamayın. ESC tuşuna basarak veya fareyi kullanarak bir hücrenin düzenleyici alanının dışından seçim yaparak Komut moduna geçin.
Düzenleme modu, düzenleyici alanına yazmanızı isteyen bir metin imlecinden gösterilebilir. Bir hücre Düzenleme modundayken, hücreye yazabilirsiniz. Hücrenin düzenleyici alanını seçmek için Enter tuşuna basarak veya fareyi kullanarak Düzenleme moduna geçin.
Komut modunda kısayol tuşları
Eylem | Not defteri kısayolları |
---|---|
Geçerli hücreyi çalıştırın ve aşağıdakilerden birini seçin. | Shift+Enter |
Mevcut hücreyi çalıştır ve aşağıya ekle | Alt+Enter |
Mevcut hücreyi çalıştır | Ctrl+Enter |
Yukarıdaki hücreyi seçin | Yukarı |
Aşağıdaki hücreyi seçin | Aşağı |
Önceki hücreyi seçme | K |
Sonraki hücreyi seç | J |
Üstüne hücre ekle | A |
Altına hücre ekle | B |
Seçili hücreleri silme | Shift + D |
Düzenleme moduna geçiş | Giriniz |
Düzenleme modundaki kısayol tuşları
Aşağıdaki tuş vuruşu kısayollarını kullanarak Düzenleme modundayken Doku not defterlerinde kolayca gezinebilir ve kod çalıştırabilirsiniz.
Eylem | Not defteri kısayolları |
---|---|
İmleci yukarı taşı | Yukarı |
İmleci aşağı taşıma | Aşağı |
Geri alın | Ctrl + Z |
Yeniden yap | Ctrl + Y |
Yorum satırı ekle veya Yorum satırını kaldır | Ctrl + / Açıklama: Ctrl + K + C Açıklamayı kaldırma: Ctrl + K + U |
Önceki sözcüğü sil | Ctrl + Geri tuşu |
Sonraki sözcüğü sil | Ctrl + Delete (Klavyede bir kelimeyi veya metin bloğunu silmek için kullanılır) |
Hücre başlangıcına git | Ctrl + Home |
Hücre sonuna git | Ctrl + End |
Bir kelime sola git | Ctrl + Sol |
Bir kelime sağa ilerle | Ctrl + Sağ Ok |
Tümünü seç | Ctrl + A |
Girinti | Ctrl + ] |
Girintiyi Azalt | Ctrl + [ |
Komut moduna geçme | Esc |
Tüm kısayol tuşlarını bulmak için not defteri şeridinde Görünüm'ü ve ardından Tuş Bağlamaları'nı seçin.