Synapse not defterleri oluşturma, geliştirme ve sürdürme
Azure Synapse Analytics'teki bir not defteri (Synapse not defteri), canlı kod, görselleştirmeler ve anlatı metni içeren dosyalar oluşturmanız için kullanabileceğiniz bir web arabirimidir. Not defterleri, fikirleri doğrulamak ve hızlı denemeler yaparak verilerinizden içgörüler elde etmek için iyi bir yerdir. Not defterleri veri hazırlama, veri görselleştirme, makine öğrenmesi ve diğer büyük veri senaryolarında da yaygın olarak kullanılır.
Synapse not defteriyle şunları yapabilirsiniz:
- Sıfır kurulum eforuyla çalışmaya başlayın.
- Yerleşik kurumsal güvenlik özellikleriyle verilerin güvenliğini sağlamaya yardımcı olun.
- Spark ve SQL'de ham biçimler (CSV, TXT ve JSON gibi), işlenen dosya biçimleri (Parquet, Delta Lake ve ORC gibi) ve SQL tablosal veri dosyaları genelinde verileri analiz edin.
- Gelişmiş yazma özellikleri ve yerleşik veri görselleştirmesi ile üretken olun.
Bu makalede Synapse Studio'da not defterlerinin nasıl kullanılacağı açıklanmaktadır.
Not defteri oluşturma
Yeni bir not defteri oluşturabilir veya mevcut bir not defterini Nesne Gezgini synapse çalışma alanına aktarabilirsiniz. Geliştir menüsünü seçin. Düğmeyi + seçin ve Not Defteri'ni seçin veya Not Defterleri'ne sağ tıklayın ve ardından Yeni not defteri veya İçeri Aktar'ı seçin. Synapse not defterleri standart Jupyter Notebook IPYNB dosyalarını tanır.
Not defterleri geliştirme
Not defterleri, bağımsız olarak veya grup olarak çalıştırabileceğiniz tek tek kod veya metin blokları olan hücrelerden oluşur.
Aşağıdaki bölümlerde not defterlerini geliştirmeye yönelik işlemler açıklanmaktadır:
- Hücre ekleme
- Birincil dil ayarlama
- Birden çok dil kullanma
- Diller arasında verilere başvurmak için geçici tablolar kullanma
- IDE stili IntelliSense kullanma
- Kod parçacıkları kullanma
- Araç çubuğu düğmelerini kullanarak metin hücrelerini biçimlendirme
- Hücre işlemini geri alma veya yineleme
- Kod hücresiyle ilgili açıklama
- Hücreyi taşıma
- Hücre kopyalama
- Hücre silme
- Hücre girişini daraltma
- Hücre çıkışını daraltma
- Not defteri anahattı kullanma
Not
Not defterlerinde, sizin için otomatik olarak bir SparkSession
örnek oluşturulur ve adlı spark
bir değişkende depolanır. için SparkContext
adlı sc
bir değişken de vardır. Kullanıcılar bu değişkenlere doğrudan erişebilir ancak bu değişkenlerin değerlerini değiştirmemelidir.
Hücre ekleme
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şunu seçin. Geçerli hücrenin altına bir hücre eklemek için B tuşunu seçin.
Birincil dil ayarlama
Synapse not defterleri dört Apache Spark dilini destekler:
- PySpark (Python)
- Spark (Scala)
- Spark SQL
- .NET Spark (C#)
- SparkR (R)
Yeni eklenen hücreler için birincil dili üst komut çubuğundaki Dil açılan listesinden ayarlayabilirsiniz.
Birden çok dil kullanma
Bir not defterinde, hücrenin başında doğru dil sihirli komutunu belirterek birden çok dil kullanabilirsiniz. Aşağıdaki tabloda, hücre dillerini değiştirmek için sihirli komutlar listelemektedir.
Magic komutu | Dil | Açıklama |
---|---|---|
%%pyspark |
Python | üzerinde SparkContext bir Python sorgusu çalıştırın. |
%%spark |
Scala | üzerinde SparkContext bir Scala sorgusu çalıştırın. |
%%sql |
Spark SQL | üzerinde SparkContext bir Spark SQL sorgusu çalıştırın. |
%%csharp |
Spark C için .NET# | üzerinde SparkContext Spark C# sorgusu için bir .NET çalıştırın. |
%%sparkr |
R | üzerinde SparkContext bir R sorgusu çalıştırın. |
Aşağıdaki görüntüde, bir Spark (Scala) not defterindeki %%pyspark
sihirli komutu kullanarak magic komutunu veya Spark SQL sorgusunu kullanarak PySpark sorgusu yazma işleminin %%sql
bir örneği gösterilmektedir. Not defterinin birincil dili PySpark olarak ayarlanır.
Diller arasında verilere başvurmak için geçici tablolar kullanma
Synapse not defterindeki verilere veya değişkenlere doğrudan farklı dillerde başvuramazsınız. Spark'ta, diller arasında geçici bir tabloya başvurabilirsiniz. Geçici çözüm olarak Bir Spark geçici tablosu kullanarak PySpark ve Spark SQL'de Scala DataFrame'in nasıl okunduğuna yönelik bir örnek aşağıda verilmiştir:
1. hücrede Scala kullanarak SQL havuzu bağlayıcısından DataFrame okuyun ve geçici bir tablo oluşturun:
%%spark val scalaDataFrame = spark.read.sqlanalytics("mySQLPoolDatabase.dbo.mySQLPoolTable") scalaDataFrame.createOrReplaceTempView( "mydataframetable" )
2. hücrede Spark SQL kullanarak verileri sorgula:
%%sql SELECT * FROM mydataframetable
3. hücrede PySpark'taki verileri kullanın:
%%pyspark myNewPythonDataFrame = spark.sql("SELECT * FROM mydataframetable")
IDE stili IntelliSense kullanma
Synapse not defterleri, IDE stili IntelliSense'i hücre düzenleyicisine getirmek için Monaco düzenleyicisiyle tümleştirilir. Söz dizimi vurgulama, hata işaretçisi ve otomatik kod tamamlama özellikleri, kod yazmanıza ve sorunları daha hızlı belirlemenize yardımcı olur.
IntelliSense özellikleri farklı diller için farklı olgunluk düzeylerindedir. Desteklenenleri görmek için aşağıdaki tabloyu kullanın.
Diller | Söz dizimi vurgusu | Söz dizimi hata işaretçisi | Söz dizimi kodu tamamlama | Değişken kod tamamlama | Sistem işlev kodu tamamlama | Kullanıcı işlevi kodu tamamlama | Akıllı girinti | Kod katlama |
---|---|---|---|---|---|---|---|---|
PySpark (Python) | Yes | Evet | Evet | Evet | Evet | Evet | Evet | Yes |
Spark (Scala) | Yes | Evet | Evet | Evet | Evet | Evet | Hayı | Evet |
Spark SQL | Yes | Evet | Evet | Evet | Evet | Hayır | Hayır | Hayır |
Spark için .NET (C#) | Yes | Evet | Evet | Evet | Evet | Evet | Evet | Yes |
Spark için .NET (C#) için değişken kod tamamlama, sistem işlev kodu tamamlama ve kullanıcı işlev kodu tamamlama özelliğinden yararlanmak için etkin bir Spark oturumu gereklidir.
Kod parçacıkları kullanma
Synapse not defterleri, yaygın olarak kullanılan kod desenlerini girmeyi kolaylaştıran kod parçacıkları sağlar. Bu desenler Spark oturumunuzu yapılandırmayı, verileri Spark DataFrame olarak okumayı ve Matplotlib kullanarak grafik çizmeyi içerir.
Kod parçacıkları, diğer önerilerle karıştırılmış IDE stili IntelliSense kısayol tuşlarında görünür. Kod parçacıklarının içeriği kod hücresi diliyle hizalanır. Kod parçacığını veya kod hücresi düzenleyicisindeki kod parçacığı başlığında görünen anahtar sözcükleri girerek kullanılabilir kod parçacıklarını görebilirsiniz. Örneğin, okuma girerek çeşitli veri kaynaklarından gelen verileri okumak için kod parçacıklarının listesini görebilirsiniz.
Araç çubuğu düğmelerini kullanarak metin hücrelerini biçimlendirme
Sık kullanılan Markdown eylemlerini gerçekleştirmek için metin hücresi araç çubuğundaki biçim düğmelerini kullanabilirsiniz. Bu eylemler arasında metni kalın yapma, metni italik yapma, açılan menüden paragraf ve başlık oluşturma, kod ekleme, sıralanmamış liste ekleme, sıralı liste ekleme, köprü ekleme ve URL'den resim ekleme yer alır.
Hücre işlemini geri alma veya yineleme
En son hücre işlemlerini iptal etmek için Geri Al veya Yinele düğmesini seçin ya da Z tuşunu veya Shift+Z tuşlarını seçin. Artık en fazla 10 geçmiş hücre işlemini geri alabilir veya yineleyebilirsiniz.
Desteklenen hücre işlemleri şunlardır:
- Hücre ekleme veya silme. Geri Al'ı seçerek silme işlemlerini iptal edebilirsiniz. Bu eylem, metin içeriğini hücreyle birlikte tutar.
- Hücreleri yeniden sırala.
- Parametre hücreyi açma veya kapatma.
- Kod hücresi ile Markdown hücresi arasında dönüştürme.
Not
Bir hücredeki metin işlemlerini veya açıklama ekleme işlemlerini geri alamazsınız.
Kod hücresiyle ilgili açıklama
Not defteri araç çubuğunda Açıklamalar düğmesini seçerek Açıklamalar bölmesini açın.
Kod hücresindeki kodu seçin, Açıklamalar bölmesinde Yeni'yi seçin, açıklama ekleyin ve açıklamayı gönder düğmesini seçin.
Gerekirse açıklamanızın yanındaki Diğer üç noktayı (...) seçerek Açıklamayı düzenle, yazışmayı çöz ve İş parçacığını sil eylemlerini gerçekleştirebilirsiniz.
Hücreyi taşıma
Hücreyi taşımak için hücrenin sol tarafını seçin ve hücreyi istediğiniz konuma sürükleyin.
Hücre kopyalama
Hücreyi kopyalamak için önce yeni bir hücre oluşturun, sonra özgün hücrenizdeki tüm metni seçin, metni kopyalayın ve metni yeni hücreye yapıştırın. Hücreniz düzenleme modundayken, tüm metni seçmek için geleneksel klavye kısayolları hücreyle sınırlıdır.
İpucu
Synapse not defterleri yaygın olarak kullanılan kod desenlerinin parçacıklarını da sağlar.
Hücre silme
Hücreyi silmek için hücrenin sağı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 daraltma
Geçerli hücrenin girişini daraltmak için, hücre araç çubuğundaki Diğer komutlar üç noktasını (...) ve ardından Girişi gizle'yi seçin. Girişi genişletmek için Hücre daraltılırken girişi göster'i seçin.
Hücre çıkışını daraltma
Geçerli hücrenin çıkışını daraltmak için hücre araç çubuğundaki Diğer komutlar üç noktasını (...) seçin ve ardından Çıkışı gizle'yi seçin. Çıkışı genişletmek için Hücrenin çıkışı gizliyken çıkışı göster'i seçin.
Not defteri anahattı kullanma
Ana hat (içindekiler tablosu), hızlı gezinti için kenar çubuğu penceresinde herhangi bir Markdown hücresinin ilk Markdown üst bilgisini sunar. Ana hat 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ğunda Ana Hat düğmesini seçin.
Not defteri ç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.
Not
Not defterini silmek, çalışmakta olan işleri otomatik olarak iptal etmez. bir işi iptal etmeniz gerekiyorsa İzleyici hub'ına gidin ve el ile iptal edin.
Hücre çalıştırma
Kodu bir hücrede çalıştırmanın birden çok yolu vardır:
Çalıştırmak istediğiniz hücrenin üzerine gelin ve ardından 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 için Shift+Enter tuşlarına basın ve altındaki hücreyi seçin. Geçerli hücreyi çalıştırmak ve altına yeni bir hücre eklemek için Alt+Enter tuşlarını seçin.
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
Geçerli hücrenin üzerindeki tüm hücreleri sırayla çalıştırmak için Tümünü çalıştır düğmesinin açılan listesini genişletin ve yukarıdaki Hücreleri çalıştır'ı seçin. 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 hücreleri veya kuyrukta bekleyen hücreleri iptal etmek için Tümünü iptal et düğmesini seçin.
Not defterine başvurma
Geçerli not defterinin bağlamında başka bir not defterine başvurmak için sihirli komutunu kullanın %run <notebook path>
. Başvuru not defterinde tanımlanan tüm değişkenler geçerli not defterinde kullanılabilir.
Bir örnek aşağıda verilmiştir:
%run /<path>/Notebook1 { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }
Not defteri başvurusu hem etkileşimli modda hem de işlem hatlarında çalışır.
%run
Magic komutu şu sınırlamalara sahiptir:
- komutu iç içe çağrıları destekler ancak özyinelemeli çağrıları desteklemez.
- Komutu, mutlak yol veya not defteri adının yalnızca parametre olarak geçirilmesini destekler. Göreli yolları desteklemez.
- Komut şu anda yalnızca dört parametre değeri türünü destekler:
int
,float
,bool
vestring
. Değişken değiştirme işlemlerini desteklemez. - Başvuruda bulunılan not defterlerinin yayımlanması gerekir. Yayımlanmamış not defteri başvurularını etkinleştirme seçeneğini belirtmediğiniz sürece, not defterlerini bunlara başvurmak için yayımlamanız gerekir. Synapse Studio, Git deposundan yayımlanmamış not defterlerini tanımaz.
- Başvuruda bulunan not defterleri beşten büyük deyim derinliklerini desteklemez.
Değişken gezginini kullanma
Synapse not defteri, PySpark (Python) hücreleri için geçerli Spark oturumundaki değişkenleri listeleyen bir tablo biçiminde yerleşik bir değişken gezgini sağlar. Tablo değişken adı, türü, uzunluğu ve değeri için sütunlar içerir. Kod hücrelerinde tanımlanan diğer değişkenler otomatik olarak görünür. Her sütun üst bilgisinin seçilmesi tablodaki değişkenleri sıralar.
Değişken gezginini açmak veya gizlemek için not defteri komut çubuğundaKi Değişkenler düğmesini seçin.
Not
Değişken gezgini yalnızca Python'ı destekler.
Hücre durumu göstergesini kullanma
Geçerli ilerleme durumunu görmenize yardımcı olmak için hücrenin altında bir hücre çalıştırmasının adım adım durumu görüntülenir. Hücre çalıştırması tamamlandıktan sonra, toplam süre ve bitiş saatini içeren bir özet görüntülenir ve gelecekte başvurmak üzere orada kalır.
Spark ilerleme göstergesini kullanma
Synapse not defteri tamamen Spark tabanlıdır. Kod hücreleri sunucusuz Apache Spark havuzunda uzaktan çalışır. Gerçek zamanlı ilerleme çubuğu içeren Spark işi ilerleme durumu göstergesi, iş çalıştırma durumunu anlamanıza yardımcı olur.
Her iş veya aşama için görev sayısı Spark işinizin paralel düzeyini belirlemenize yardımcı olur. Ayrıca, iş (veya aşama) adındaki bağlantıyı seçerek belirli bir işin (veya aşamanın) Spark kullanıcı arabiriminde daha ayrıntılı detaya gidebilirsiniz.
Spark oturumu yapılandırma
Not defterinin üst kısmındaki dişli simgesini seçerek bulabileceğiniz Oturumu yapılandır bölmesinde zaman aşımı süresini, yürütücü sayısını ve geçerli Spark oturumuna verecek yürütücülerin boyutunu belirtebilirsiniz. Yapılandırma değişikliklerinin etkili olması için Spark oturumunu yeniden başlatın. Önbelleğe alınan tüm not defteri değişkenleri temizlenir.
Ayrıca Apache Spark yapılandırmasından bir yapılandırma oluşturabilir veya mevcut bir yapılandırmayı seçebilirsiniz. Ayrıntılar için Bkz . Apache Spark yapılandırmasını yönetme.
Spark oturumu yapılandırmak için magic komutu
Spark oturum ayarlarını magic komutuyla %%configure
da belirtebilirsiniz. Ayarların etkili olması için Spark oturumunu yeniden başlatın.
Not defterinizin başında çalıştırmanızı %%configure
öneririz. İşte bir örnek. Geçerli parametrelerin tam listesi için GitHub'da Livy bilgilerine bakın.
%%configure
{
//You can get a list of valid parameters to configure the session from https://github.com/cloudera/livy#request-body.
"driverMemory":"28g", // Recommended values: ["28g", "56g", "112g", "224g", "400g", "472g"]
"driverCores":4, // Recommended values: [4, 8, 16, 32, 64, 80]
"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 a standard Spark property. To find more available properties, go to https://spark.apache.org/docs/latest/configuration.html#application-properties.
"spark.driver.maxResultSize":"10g",
//Example of a customized property. You can specify the count of lines that Spark SQL returns by configuring "livy.rsc.sql.num-rows".
"livy.rsc.sql.num-rows":"3000"
}
}
Magic komutu için %%configure
dikkat edilmesi gereken bazı noktalar şunlardır:
- ve
driverMemory
executorMemory
%%configure
için aynı değeri kullanmanızı öneririz. Bunu da öneririzdriverCores
veexecutorCores
aynı değere sahiptir. - Synapse işlem hatlarında kullanabilirsiniz
%%configure
, ancak bunu ilk kod hücresinde ayarlamazsanız işlem hattı çalıştırması oturumu yeniden başlatamadığı için başarısız olur. %%configure
içindemssparkutils.notebook.run
kullanılan komut yoksayılır, ancak içinde%run <notebook>
kullanılan komut çalışmaya devam eder.- Gövdede standart Spark yapılandırma özelliklerini
"conf"
kullanmanız gerekir. Spark yapılandırma özellikleri için birinci düzey başvuruları desteklemiyoruz. - , ve
"spark.executor.instances"
gibi"spark.executor.memory"
"spark.driver.memory"
"spark.executor.cores"
"spark.driver.cores"
bazı özel Spark özellikleri gövdede"conf"
etkili olmaz.
İşlem hattından parametreli oturum yapılandırması
Magic komutundaki %%configure
değerleri işlem hattı çalıştırma (not defteri etkinliği) parametreleriyle değiştirmek için parametreli oturum yapılandırmasını kullanabilirsiniz. Kod %%configure
hücresi hazırlarken, aşağıdaki gibi bir nesne kullanarak varsayılan değerleri geçersiz kılabilirsiniz:
{
"activityParameterName": "paramterNameInPipelineNotebookActivity",
"defaultValue": "defaultValueIfNoParamterFromPipelineNotebookActivity"
}
Aşağıdaki örnekte ve "2000"
varsayılan değerleri 4
de yapılandırılabilir:
%%configure
{
"driverCores":
{
"activityParameterName": "driverCoresFromNotebookActivity",
"defaultValue": 4
},
"conf":
{
"livy.rsc.sql.num-rows":
{
"activityParameterName": "rows",
"defaultValue": "2000"
}
}
}
Not defterini doğrudan etkileşimli modda çalıştırırsanız veya işlem hattı not defteri etkinliği ile eşleşen "activityParameterName"
bir parametre sağlamazsa not defteri varsayılan değeri kullanır.
İşlem hattı çalıştırma modu sırasında, işlem hattı not defteri etkinliğinin ayarlarını yapılandırmak için Ayarlar sekmesini kullanabilirsiniz.
Oturum yapılandırmasını değiştirmek istiyorsanız işlem hattı not defteri etkinlik parametresinin adı not defterindekiyle activityParameterName
aynı olmalıdır. Bu örnekte, bir işlem hattı çalıştırması 8
sırasında öğesinin yerine %%configure
driverCores
ve 4000
öğesinin yerini alırlivy.rsc.sql.num-rows
.
Magic komutunu kullandıktan %%configure
sonra işlem hattı çalıştırması başarısız olursa, sihirli hücreyi not defterinin %%configure
etkileşimli modunda çalıştırarak daha fazla hata bilgisi alabilirsiniz.
Not defterine veri getirme
Aşağıdaki kod örneklerinde gösterildiği gibi Azure Data Lake Storage 2. Nesil, Azure Blob Depolama ve SQL havuzlarından veri yükleyebilirsiniz.
Azure Data Lake Storage 2. Nesil'dan Spark DataFrame olarak CSV dosyası okuma
from pyspark.sql import SparkSession
from pyspark.sql.types import *
account_name = "Your account name"
container_name = "Your container name"
relative_path = "Your path"
adls_path = 'abfss://%s@%s.dfs.core.windows.net/%s' % (container_name, account_name, relative_path)
df1 = spark.read.option('header', 'true') \
.option('delimiter', ',') \
.csv(adls_path + '/Testfile.csv')
spark dataframe olarak Azure Blob Depolama csv dosyasını okuma
from pyspark.sql import SparkSession
# Azure storage access info
blob_account_name = 'Your account name' # replace with your blob name
blob_container_name = 'Your container name' # replace with your container name
blob_relative_path = 'Your path' # replace with your relative folder path
linked_service_name = 'Your linked service name' # replace with your linked service name
blob_sas_token = mssparkutils.credentials.getConnectionStringOrCreds(linked_service_name)
# Allow Spark to access from Azure Blob Storage remotely
wasb_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
spark.conf.set('fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token)
print('Remote blob path: ' + wasb_path)
df = spark.read.option("header", "true") \
.option("delimiter","|") \
.schema(schema) \
.csv(wasbs_path)
Birincil depolama hesabından verileri okuma
Birincil depolama hesabındaki verilere doğrudan erişebilirsiniz. Gizli dizi anahtarlarını sağlamanıza gerek yoktur. Veri Gezgini bir dosyaya sağ tıklayıp Yeni not defteri'ni seçerek otomatik olarak oluşturulan veri ayıklayıcısına sahip yeni bir not defteri görebilirsiniz.
IPython pencere öğelerini kullanma
Pencere öğeleri, genellikle kaydırıcı veya metin kutusu gibi bir denetim olarak tarayıcıda temsili olan olaylı Python nesneleridir. IPython pencere öğeleri yalnızca Python ortamlarında çalışır. Şu anda diğer dillerde (scala, SQL veya C# gibi) desteklenmemektedir.
IPython pencere öğelerini kullanma adımları
ipywidgets
Jupyter Pencere Öğeleri çerçevesini kullanmak için modülü içeri aktarın:import ipywidgets as widgets
Bir pencere öğesini işlemek için en üst düzey
display
işlevi kullanın veya kod hücresininwidget
son satırında türünde bir ifade bırakın:slider = widgets.IntSlider() display(slider)
slider = widgets.IntSlider() slider
Hücreyi çalıştırın. Pencere öğesi çıkış alanında görünür.
Aynı pencere öğesi örneğini birden çok kez işlemek için birden çok display()
çağrı kullanabilirsiniz, ancak bunlar birbiriyle eşitlenmiş durumda kalır:
slider = widgets.IntSlider()
display(slider)
display(slider)
Birbirinden bağımsız iki pencere öğesini işlemek için iki pencere öğesi örneği oluşturun:
slider1 = widgets.IntSlider()
slider2 = widgets.IntSlider()
display(slider1)
display(slider2)
Desteklenen pencere öğeleri
Pencere öğesi türü | Küçük aletler |
---|---|
Sayısal | IntSlider , FloatSlider , , FloatLogSlider , IntRangeSlider , FloatRangeSlider , IntProgress , , FloatProgress BoundedIntText , BoundedFloatText , IntText ,FloatText |
Boolean | ToggleButton , Checkbox , Valid |
Seçim | Dropdown , RadioButtons , Select , , SelectionSlider , SelectionRangeSlider , ToggleButtons , SelectMultiple |
String | Text , Text area , Combobox , , Password , Label , HTML , HTML Math , Image , Button |
Yürüt (animasyon) | Date picker , Color picker , Controller |
Kapsayıcı/Düzen | Box , HBox , VBox , , GridBox , Accordion , Tabs , Stacked |
Bilinen sınırlamalar
Aşağıdaki tabloda, şu anda desteklenmeyen pencere öğeleri ve geçici çözümler listelenmektedir:
İşlev Geçici çözüm Output
Widgetyerine işlevini kullanarak print()
içinestdout
metin yazabilirsiniz.widgets.jslink()
İki benzer pencere öğesini widgets.link()
bağlamak için işlevini kullanabilirsiniz.FileUpload
WidgetHiçbiri kullanılamaz. Azure Synapse Analytics'in sağladığı genel
display
işlev, birden çok pencere öğesinin tek bir çağrıda (yanidisplay(a, b)
) görüntülenmesini desteklemez. Bu davranış, IPythondisplay
işlevinden farklıdır.IPython pencere öğesi içeren bir not defterini kapatırsanız, ilgili hücreyi yeniden çalıştırmadan pencere öğesini görüntüleyemez veya pencere öğesiyle etkileşim kuramazsınız.
Not defterlerini kaydetme
Tek bir not defterini veya tüm not defterlerini çalışma alanınıza kaydedebilirsiniz:
Tek bir not defterinde yaptığınız değişiklikleri kaydetmek için not defteri komut çubuğunda yayımla düğmesini seçin.
Çalışma alanınızdaki tüm not defterlerini kaydetmek için çalışma alanı komut çubuğunda Tümünü yayımla düğmesini seçin.
Not defterinin Özellikler bölmesinde, kaydederken hücre çıkışının dahil edilip edilmeyeceğini yapılandırabilirsiniz.
Sihirli komutları kullanma
Synapse not defterlerinde tanıdık Jupyter magic komutlarını kullanabilirsiniz. Şu anda kullanılabilen sihirli komutların aşağıdaki listelerini gözden geçirin. İhtiyaçlarınızı karşılamak için daha fazla sihirli komut oluşturmaya devam edebilmemiz için GitHub'da kullanım örneklerinizi bize bildirin.
Not
Synapse işlem hatlarında yalnızca aşağıdaki sihirli komutlar desteklenir: %%pyspark
, %%spark
, %%csharp
, %%sql
.
Satırlar için kullanılabilir sihirli komutlar:
%lsmagic
, %time
, %timeit
, , %history
, %run
, %load
Hücreler için kullanılabilir sihirli komutlar:
%%time
, , %%capture
%%timeit
, , %%writefile
, %%sql
, %%pyspark
, %%spark
, %%csharp
, %%html
,%%configure
Yayımlanmamış not defterine başvurma
Yerel olarak hata ayıklamak istediğinizde yayımlanmamış bir not defterine başvurmak yararlı olur. Bu özelliği etkinleştirdiğinizde, bir not defteri çalıştırması geçerli içeriği web önbelleğine getirir. Başvuru not defteri deyimi içeren bir hücre çalıştırırsanız, kümede kayıtlı bir sürüm yerine geçerli not defteri tarayıcısında sunum not defterlerine başvurursunuz. Diğer not defterleri, değişiklikleri yayımlamanıza (Canlı mod) veya işlemenize (Git modu) gerek kalmadan not defteri düzenleyicinizdeki değişikliklere başvurabilir. Bu yaklaşımı kullanarak, geliştirme veya hata ayıklama işlemi sırasında ortak kitaplıkların kirlenmesini önleyebilirsiniz.
Özellikler bölmesinde uygun onay kutusunu seçerek yayımlanmamış bir not defterine başvurmayı etkinleştirebilirsiniz.
Aşağıdaki tabloda servis talepleri karşılaştırılmaktadır. %run ve mssparkutils.notebook.run burada da aynı davranışa sahip olsa da, tablo örnek olarak kullanır %run
.
Büyük/küçük harf durumu | Devre Dışı Bırak | Etkinleştir |
---|---|---|
Canlı mod | ||
Nb1 (yayımlandı) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Nb1'in yayımlanmış sürümünü çalıştırma |
Nb1 (yeni) %run Nb1 |
Hata | Yeni Nb1'i çalıştır |
Nb1 (daha önce yayımlandı, düzenlendi) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Nb1'in düzenlenmiş sürümünü çalıştırma |
Git modu | ||
Nb1 (yayımlandı) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Nb1'in yayımlanmış sürümünü çalıştırma |
Nb1 (yeni) %run Nb1 |
Hata | Yeni Nb1'i çalıştır |
Nb1 (yayımlanmamış, işlenmedi) %run Nb1 |
Hata | Çalıştırma kaydedilmiş Nb1 |
Nb1 (daha önce yayımlandı, işlendi) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Nb1'in kaydedilmiş sürümünü çalıştırma |
Nb1 (daha önce yayımlandı, geçerli dalda yeni) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Yeni Nb1'i çalıştır |
Nb1 (yayımlanmadı, daha önce işlendi, düzenlendi) %run Nb1 |
Hata | Nb1'in düzenlenmiş sürümünü çalıştırma |
Nb1 (daha önce yayımlanmış ve kaydedilmiş, düzenlenmiş) %run Nb1 |
Nb1'in yayımlanmış sürümünü çalıştırma | Nb1'in düzenlenmiş sürümünü çalıştırma |
Özet olarak:
- Yayımlanmamış bir not defterine başvurmayı devre dışı bırakırsanız, yayımlanan sürümü her zaman çalıştırın.
- Yayımlanmamış bir not defterine başvurmayı etkinleştirirseniz, başvuru çalıştırması her zaman not defteri UX'sinde görüntülenen geçerli not defterini benimser.
Etkin oturumları yönetme
Yenilerini başlatmak zorunda kalmadan not defteri oturumlarınızı yeniden kullanabilirsiniz. Synapse not defterlerinde etkin oturumlarınızı tek bir listede yönetebilirsiniz. Listeyi açmak için üç noktayı (...) ve ardından Oturumları yönet'i seçin.
Etkin oturumlar bölmesinde, not defterinden başlattığınız geçerli çalışma alanında yer alan tüm oturumlar listelenir. Listede oturum bilgileri ve buna karşılık gelen not defterleri gösterilir. Not defteriyle ayır, Oturumu durdur ve İzlemede görüntüle eylemlerine buradan ulaşabilirsiniz. Ayrıca, seçtiğiniz not defterini başka bir not defterinden başlayan etkin bir oturuma bağlayabilirsiniz. Oturum daha sonra önceki not defterinden ayrılır (boşta değilse) ve geçerli not defterine eklenir.
Not defterinde Python günlüklerini kullanma
Aşağıdaki örnek kodu kullanarak Python günlüklerini bulabilir ve farklı günlük düzeylerini ve biçimlerini 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 the 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 uses 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 uses 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
Synapse not defterleri, geçerli oturum için giriş komut geçmişini yazdırmak için sihirli komutu %history
destekler. %history
Sihirli komut, standart Jupyter IPython komutuna benzer ve not defterinde birden çok dil bağlamı için çalışır.
%history [-n] [range [range ...]]
Yukarıdaki kodda, -n
yazdırma yürütme numarasıdır. Değer range
şu şekilde olabilir:
N
: Yürütülen hücreninNth
kodunu yazdırın.M-N
: kodu'ndanMth
yürütülen hücreyeNth
yazdırın.
Örneğin, birinci hücreden ikinci yürütülen hücreye giriş geçmişini yazdırmak için kullanın %history -n 1-2
.
Not defterini tümleştirme
İşlem hattına not defteri ekleme
Mevcut işlem hattına not defteri eklemek veya yeni bir işlem hattı oluşturmak için sağ üst köşedeki İşlem hattına ekle düğmesini seçin.
Parametre hücresi belirleme
Not defterinizi parametreleştirmek için hücre araç çubuğundaki diğer komutlara erişmek için üç noktayı (...) seçin. Ardından Parametre hücresini değiştir'i seçerek hücreyi parametre hücresi olarak belirleyin.
Azure Data Factory parametre hücresini arar ve bu hücreyi 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
Parametreleri olan bir not defteri oluşturduktan sonra, Synapse not defteri etkinliğini kullanarak 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 sistem değişkenlerini kullanabilirsiniz.
Kısayol tuşlarını kullanma
Jupyter Notebooks'a benzer şekilde Synapse not defterleri de kalıcı bir kullanıcı arabirimine sahiptir. Klavye, not defteri hücresinin hangi modda olduğuna bağlı olarak farklı şeyler yapar. Synapse not defterleri bir kod hücresi için aşağıdaki iki modu destekler:
Komut modu: Hiçbir metin imleci yazmanızı istemediğinde bir hücre 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şunu seçerek veya fareyi kullanarak hücrenin düzenleyici alanının dışından seçim yaparak komut moduna geçin.
Düzenleme modu: Bir hücre düzenleme modundayken, metin imleci hücreye yazmanızı ister. Enter tuşunu seçerek veya fareyi kullanarak bir hücrenin düzenleyici alanını seçerek düzenleme moduna geçin.
Komut modunda kısayol tuşları
Eylem | Synapse not defteri kısayolu |
---|---|
Geçerli hücreyi çalıştırın ve aşağıdan seçin | Shift+Enter |
Geçerli hücreyi çalıştırın ve aşağıya ekleyin | Alt+Enter |
Geçerli 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 | K |
Seçili hücreleri silme | Shift+D |
Düzenleme moduna geçiş | Enter |
Düzenleme modundaki kısayol tuşları
Eylem | Synapse not defteri kısayolu |
---|---|
İmleci yukarı taşıma | Yukarı |
İmleci aşağı taşıma | Aşağı |
Geri Al | Ctrl+Z |
Yinele | Ctrl+Y |
Açıklama/Açıklamayı Kaldırma | Ctrl+/ |
Önceki sözcüğü silme | Ctrl+Geri Al tuşu |
Sonra sözcüğü silme | Ctrl+Delete |
Hücre başlangıcına gitme | Ctrl+Home |
Hücre sonuna git | Ctrl+End |
Bir sözcük sola git | Ctrl+Sol |
Bir sözcük sağa git | Ctrl+Sağ |
Tümünü seç | Ctrl+A |
Girinti | Ctrl+] |
Girinti | Ctrl+[ |
Komut moduna geçme | Esc |
İlgili içerik
- Synapse örnek not defterleri
- Hızlı Başlangıç: Web araçlarını kullanarak Azure Synapse Analytics'te Apache Spark havuzu oluşturma
- Azure Synapse Analytics'te Apache Spark nedir?
- Azure Synapse Analytics ile Apache Spark için .NET’i kullanma
- Apache Spark için .NET belgeleri
- Azure Synapse Analytics belgeleri