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.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
İpucu
Microsoft Fabric'daki
Ham verileri tahminlere ve içgörülere dönüştürmek ve işlemek için Data Factory veya Synapse işlem hattında veri dönüştürme etkinliklerini kullanırsınız. Komut dosyası etkinliği, veri yollarının desteklediği dönüştürme etkinliklerinden biridir. Bu makale, veri dönüştürme ve desteklenen dönüştürme etkinliklerine genel bir genel bakış sunan dönüştürme verileri makalesini temel alır.
Betik etkinliğini kullanarak Veri İşleme Dili (DML) ve Veri Tanımlama Dili (DDL) ile yaygın işlemleri yürütebilirsiniz. INSERT, UPDATE, DELETE ve SELECT gibi DML deyimleri kullanıcıların veritabanına veri eklemesine, değiştirmesine, silmesine ve almasına izin verir. CREATE, ALTER ve DROP gibi DDL deyimleri, veritabanı yöneticisinin tablolar, dizinler ve kullanıcılar gibi veritabanı nesneleri oluşturmasına, değiştirmesine ve kaldırmasına olanak sağlar.
Betik etkinliğini kullanarak kuruluşunuzdaki veya Azure bir sanal makinedeki (VM) aşağıdaki veri depolarından birinde bir SQL betiği çağırabilirsiniz:
- Azure Database for PostgreSQL (Sürüm 2.0)
- Azure SQL Database
- Azure Synapse Analytics
- veritabanı SQL Server. SQL Server kullanıyorsanız, veritabanını barındıran makineye veya veritabanına erişimi olan ayrı bir makineye Self-hosted tümleştirme çalışma zamanı yükleyin. Self-Hosted tümleştirme çalışma zamanı, şirket içi/Azure VM'deki veri kaynaklarını bulut hizmetlerine güvenli ve yönetilen bir şekilde bağlayan bir bileşendir. Ayrıntılar için Öz barındırılan tümleştirme çalışma zamanı makalesine bakın.
- Oracle
- Snowflake
Betik tek bir SQL deyimi veya sıralı olarak çalışan birden çok SQL deyimi içerebilir. Script görevini aşağıdaki amaçlarla kullanabilirsiniz:
- Veri ekleme hazırlığında bir tabloyu kesme.
- Tablolar ve görünümler gibi veritabanı nesneleri oluşturun, değiştirin ve bırakın.
- Veri yüklemeden önce olgu ve boyut tablolarını yeniden oluşturun.
- Saklı yordamları çalıştırın. SQL deyimi geçici bir tablodan sonuç döndüren bir saklı yordam çağırırsa, sonuç kümesinin meta verilerini tanımlamak için WITH RESULT SETS seçeneğini kullanın.
- Sorgudan döndürülen satır kümesini aşağı akış tüketimi için etkinlik çıkışı olarak kaydedin.
Söz dizimi ayrıntıları
Betik etkinliğini tanımlamaya yönelik JSON biçimi aşağıdadır:
{
"name": "<activity name>",
"type": "Script",
"linkedServiceName": {
"referenceName": "<name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"scripts" : [
{
"text": "<Script Block>",
"type": "<Query> or <NonQuery>",
"parameters":[
{
"name": "<name>",
"value": "<value>",
"type": "<type>",
"direction": "<Input> or <Output> or <InputOutput>",
"size": 256
},
...
]
},
...
],
...
]
},
"scriptBlockExecutionTimeout": "<time>",
"logSettings": {
"logDestination": "<ActivityOutput> or <ExternalStore>",
"logLocationSettings":{
"linkedServiceName":{
"referenceName": "<name>",
"type": "<LinkedServiceReference>"
},
"path": "<folder path>"
}
}
}
}
Aşağıdaki tabloda bu JSON özellikleri açıklanmaktadır:
| Özellik adı | Açıklama | Gerekli |
|---|---|---|
| Adı | Etkinlik adı. | Yes |
| Tip | Etkinliğin türü , "Betik" olarak ayarlanır. | Yes |
| typeProperties | Betik Komutunu yapılandırmak için özellikleri tanımlayın. | Yes |
| bağlantılıHizmetAdı | Betiğin üzerinde çalıştığı hedef veritabanı. Bağlı bir hizmete referans olmalıdır. | Yes |
| betikler | Betiği temsil eden bir nesne dizisi. | Hayır |
| betikler.metin | Bir sorgu bloğunun düz metni. | Hayır |
| scripts.type | Sorgu bloğunun türü. Query veya NonQuery olabilir. Varsayılan: Sorgu. | Hayır |
| betikler.parametre | Betiğin parametre dizisi. | Hayır |
| scripts.parameter.name | Parametrenin adı. | Hayır |
| scripts.parameter.value | Parametre değeri. | Hayır |
| betikler.parametre.tipi | Parametresinin veri türü. Türü mantıksal türdür ve her bağlayıcının tür eşlemesini izler. | Hayır |
| script.parametre.yön | Parametrenin yönü. Giriş, Çıkış, InputOutput olabilir. Çıkış yönünde ise değer yoksayılır. ReturnValue türü desteklenmez. Dönüş değerini almak için SP'nin değerini bir çıkış parametresine ayarlayın. | Hayır |
| script.parametre.boyut | Parametrenin en büyük boyutu. Yalnızca dize/bayt[] türündeki Output/InputOutput yön parametresi için geçerlidir. | Hayır |
| scriptBlockExecutionTimeout | Betik bloğu yürütme işleminin zaman aşımına uğramadan önce tamamlanması için gereken bekleme süresi. | Hayır |
| logSettings | Çıkış günlüklerini depolama ayarları. Belirtilmezse, betik günlüğü devre dışı bırakılır. | Hayır |
| logSettings.logDestination | Log kaydı çıktısının hedefi. ActivityOutput veya ExternalStore olabilir. Varsayılan: ActivityOutput. | Hayır |
| logSettings.logLocationSettings | Eğer logDestination ExternalStore ise, hedef konumun ayarları. | Hayır |
| logSettings.logLocationSettings.linkedServiceName | Hedef konum ile ilgili bağlı hizmet. Yalnızca blob depolama desteklenir. | Hayır |
| logSettings.logLocationSettings.path | Günlüklerin depolandığı klasör yolu. | Hayır |
Etkinlik çıktısı
Örnek çıkış:
{
"resultSetCount": 2,
"resultSets": [
{
"rowCount": 10,
"rows":[
{
"<columnName1>": "<value1>",
"<columnName2>": "<value2>",
...
}
]
},
...
],
"recordsAffected": 123,
"outputParameters":{
"<parameterName1>": "<value1>",
"<parameterName2>": "<value2>"
},
"outputLogs": "<logs>",
"outputLogsLocation": "<folder path>",
"outputTruncated": true,
...
}
| Özellik adı | Açıklama | Koşul |
|---|---|---|
| sonuç kümesi sayısı | Betik tarafından döndürülen sonuç kümelerinin sayısı. | Her zaman |
| sonuç kümeleri | Tüm sonuç kümelerini içeren dizi. | Her zaman |
| resultSets.rowCount (satır sayısı) | Sonuç kümesindeki toplam satır sayısı. | Her zaman |
| resultSets.rows | Sonuç kümesindeki satır dizisi. | Her zaman |
| etkilenen kayıtlar | Betik tarafından etkilenen satırların satır sayısı. | Eğer scriptType NonQuery ise |
| Çıkış Parametreleri | Komut dosyasının çıkış parametreleri. | Parametre türü Output veya InputOutput ise. |
| outputLogs | Betik tarafından yazılan günlükler, örneğin print ifadesi. | Bağlayıcı log deyimini destekliyorsa ve enableScriptLogs true ise ve logLocationSettings sağlanmadı. |
| outputLogsPath | Günlük dosyasının tam yolu. | enableScriptLogs true ise ve logLocationSettings sağlanıyorsa. |
| çıkış kesildi | Çıkışın sınırları aşıp aşmadığını ve kırpılıp kesilmediğini gösteren gösterge. | Çıkış sınırları aşarsa. |
Not
- Bir betik bloğu her seferinde yürütüldüğünde, çıkış toplanır. Son çıkış, tüm betik bloğu çıkışlarının birleştirilmiş sonucudur. Farklı betik bloğunda aynı ada sahip çıkış parametresinin üzerine yazılır.
- Çıktının boyut/satır sınırı olduğundan, çıkış aşağıdaki sırayla kesilir: logs -> parameters -> rows. Bu, tek bir betik bloğu için geçerlidir. Sonraki betik bloğunun çıkış satırları, önceki günlükleri silmeyecektir.
- Günlüğün neden olduğu herhangi bir hata, etkinliğin başarısız olmasına neden olmaz.
- Aşağı akış etkinliğinde etkinlik çıktısı kümelerini kullanmak için Arama etkinliği sonucu belgelerine bakın.
- 'PRINT' deyimlerini özellikle günlüğe kaydetme amacıyla kullanırken outputLogs kullanın. Sorgu resultSets döndürürse, etkinlik çıkışında kullanılabilir ve 5000 satır/4 MB boyut sınırıyla sınırlandırılır.
Kullanıcı arabirimini kullanarak Betik etkinliğini yapılandırma
Satır içi betik
Satır içi betikler, işlem hattı meta verilerinin bir parçası olarak depolandığından İşlem Hattı CI/CD ile iyi tümleşir.
Loglama
Kayıt tutma seçenekleri:
- Disable - Hiçbir yürütme çıkışı günlüğe kaydedilmedi.
- Etkinlik çıktısı - Betik yürütme çıkışı etkinlik çıkışına eklenir. Aşağı akış etkinlikleri bunu tüketebilir. Çıkış boyutu 4 MB ile sınırlıdır.
- Dış depolama - Çıkışı depolamada kalıcı hale döndürür. Çıkış boyutu 2 MB'tan büyükse veya çıkışı depolama hesabınızda açıkça kalıcı hale getirmek istiyorsanız bu seçeneği kullanın.
Not
Faturalama - Betik etkinliği, İşlem Hattı etkinlikleri olarak faturalandırılır.
İlgili içerik
Verileri başka şekillerde dönüştürmeyi açıklayan aşağıdaki makalelere bakın: