Aracılığıyla paylaş


Microsoft Fabric not defterlerini geliştirme, yürütme ve yönetme

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.

Bir hücre ekle

Not defterinize yeni hücre eklemenin birden çok yolu vardır.

  1. İki hücre arasındaki boşluğun üzerine gelin ve Kod veya Markdown'ı seçin.

  2. 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.

Hücrenin başına girilen dil sihirli komutunun bir örneğini gösteren ekran görüntüsü.

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.

Kod parçacıklarının animasyonlu GIF'i.

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.

Sürükleyip bırakma yoluyla kod parçacıkları eklemeyi gösteren animasyonlu GIF.

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.

Resim eklemek için sürükleyip bırakmanın animasyonlu GIF'i.

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.

Metin biçimlendirme araç çubuğunun ekran görüntüsü.

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.

Geri al ve yinele menü seçeneklerini gösteren ekran görüntüsü.

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.

Hücre taşıma seçeneklerini gösteren ekran görüntüsü.

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ücreyi kilitleme veya dondurma animasyonlu GIF.

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.

Birleştirme ve bölme işlemi yapılan hücrelerin girişini gösteren ekran görüntüsü.

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.

İçindekiler seçeneğinin seçileceği yeri gösteren ekran görüntüsü.

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.

Animasyonlu markdown katlanma GIF'i.

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.

Bul ve değiştir bölmesini gösteren ekran görüntüsü.

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.

Copilot kod tamamlamalarını etkinleştirmeyi gösteren ekran görüntüsü.

Copilot kod tamamlama özelliği ile otomatik kod önerisi gösteren ekran görüntüsü.

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.

Tümünü çalıştır menü seçeneklerini gösteren ekran görüntüsü.

Ç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.

Tüm çalıştırmaları iptal et ve oturumu durdur'u seçebileceğiniz yeri gösteren ekran görüntüsü.

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, boolve string. 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

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.

Değişkenlerin açıldığı yeri gösteren ekran görüntüsü.

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.

Bir hücrenin çalıştırma durumu ayrıntılarını gösteren ekran görüntüsü örneği.

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:

Oturum Bilgilerini gösteren ekran görüntüsü.

Açılır pencerede zaman aşımını x dakika veya saat olarak sıfırlama seçeneği vardır.

Oturum zaman aşımını gösteren ekran görüntüsü.

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:

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.

Spark işlerinin ilerleme durumunun ayrıntılarının ekran görüntüsü.

Diğer eylemler bölümünde Spark uygulaması ayrıntıları sayfasına ve Spark web kullanıcı arabirimi sayfasına kolayca gidebilirsiniz.

Diğer eylemlerin ayrıntılarının ekran görüntüsü.

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.

Gizli düzenleme ekran görüntüsü.

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:

  1. "MyLakehouseModule" adlı bir not defteri oluşturun.

    Özel büyü tanımlama ekran görüntüsü.

  2. 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.

    Özel büyü kullanma ekran görüntüsü.

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

  1. Jupyter Pencere Öğesi çerçevesini kullanmak için önce ipywidgets modülünü içeri aktarın.

    import ipywidgets as widgets
    
  2. 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)
    
  3. Hücreyi çalıştırın. Widget, çıktı alanında görüntülenir.

    slider = widgets.IntSlider()
    display(slider)
    

    Çıkış alanında görüntülenen pencere öğesinin ekran görüntüsü.

  4. 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)
    

    Bir pencere öğesinin birden çok kez gösterildiği ekran görüntüsü.

  5. İ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)
    

    Pencere öğelerinin birden çok örneğini gösteren ekran görüntüsü.

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ücresini aç/kapat seçeneğinin seçileceği yeri gösteren ekran görüntüsü.

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.

İşlem hattından parametre değerlerinin atanacağı yeri gösteren ekran görüntüsü.

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:

Parametreli oturumun yapılandırıldığı yeri gösteren ekran görüntüsü.

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.

    Komut modunda bir hücrenin ekran görüntüsü.

  • 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.

    Düzenleme modundaki bir hücrenin ekran görüntüsü.

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.