Bagikan melalui


Aktivitas Fungsi Azure di Azure Data Factory

Azure Data Factory Azure Synapse Analytics

Petunjuk

Data Factory di Microsoft Fabric adalah generasi Azure Data Factory berikutnya, dengan arsitektur yang lebih sederhana, AI bawaan, dan fitur baru. Jika Anda baru menggunakan integrasi data, mulailah dengan Fabric Data Factory. Beban kerja ADF yang ada dapat ditingkatkan ke Fabric untuk mengakses kemampuan baru di seluruh ilmu data, analitik real time, dan pelaporan.

Aktivitas Fungsi Azure memungkinkan Anda menjalankan Azure Functions dalam alur Azure Data Factory atau Synapse. Untuk menjalankan Fungsi Azure, Anda harus membuat koneksi layanan tertaut. Kemudian Anda dapat menggunakan layanan tertaut dengan aktivitas yang menentukan Fungsi Azure yang Anda rencanakan untuk dijalankan.

Membuat aktivitas Fungsi Azure dengan UI

Untuk menggunakan aktivitas Fungsi Azure dalam alur, selesaikan langkah-langkah berikut:

  1. Perluas bagian Fungsi Azure pada panel Aktivitas di alur, lalu seret aktivitas Fungsi Azure tersebut ke kanvas alur.

  2. Pilih aktivitas Fungsi Azure baru di kanvas jika belum dipilih, dan tab Settings, untuk mengedit detailnya.

    Tangkap layar antarmuka untuk aktivitas Azure Function.

  3. Jika Anda belum memiliki layanan tertaut fungsi Azure yang ditentukan, pilih Baru untuk membuat yang baru. Di panel layanan tertaut Fungsi Azure baru, pilih url Aplikasi Fungsi Azure yang sudah ada dan berikan Kunci Fungsi.

    Cuplikan layar panel pembuatan layanan terkait Azure Function yang baru.

  4. Setelah memilih layanan tertaut fungsi Azure, berikan nama fungsi dan detail lainnya untuk menyelesaikan konfigurasi.

layanan tertaut fungsi Azure

Jenis pengembalian fungsi Azure harus berupa JObject yang valid. (Perlu diingat bahwa JArraybukan objek JObject.) Jenis pengembalian apa pun selain JObject akan gagal dan menghasilkan kesalahan pengguna Konten Respons bukan JObject yang valid.

Function Key menyediakan akses aman ke nama fungsi dengan masing-masing memiliki kunci unik yang terpisah atau kunci master dalam aplikasi fungsi. Identitas terkelola menyediakan akses aman ke seluruh aplikasi fungsi. Pengguna perlu menyediakan kunci untuk mengakses nama fungsi. Untuk informasi selengkapnya, lihat dokumentasi fungsi untuk detail selengkapnya tentang kunci akses fungsi

Properti Keterangan Diperlukan
Tipe Properti jenis harus diatur ke: AzureFunction Ya
URL aplikasi fungsi URL untuk Aplikasi Fungsi Azure. Format adalah https://<accountname>.azurewebsites.net. URL ini adalah nilai di bawah bagian URL saat melihat Aplikasi Fungsi Anda di portal Azure Ya
Tombol fungsi Kunci akses untuk Fungsi Azure. Pilih bagian Kelola untuk fungsi masing-masing, dan salin Kunci Fungsi atau kunci Host. Cari tahu selengkapnya di sini: Bekerja dengan kunci akses Ya
Autentikasi Metode autentikasi yang digunakan untuk memanggil Fungsi Azure. Nilai yang didukung adalah identitas terkelola yang ditetapkan sistem atau 'anonim'. Ya
ID Sumber Daya ID Aplikasi (klien) dari Fungsi Azure. Beralih ke bagian Autentikasi untuk fungsi masing-masing, dan dapatkan ID Aplikasi (klien) di bawah Penyedia identitas. Properti ini ditampilkan ketika Anda menggunakan identitas terkelola yang ditetapkan sistem. Untuk informasi selengkapnya, lihat Konfigurasi App Service atau aplikasi Azure Functions Anda untuk menggunakan login Microsoft Entra. Tidak*

/* Properti resourceId diperlukan saat Anda menggunakan autentikasi identitas terkelola yang ditetapkan sistem.

Autentikasi identitas terkelola yang ditentukan oleh sistem

Anda dapat menggunakan autentikasi identitas terkelola yang ditetapkan sistem (SAMI) dengan dua cara:

  • Atur ID Sumber Daya ke https://management.azure.com. Data Factory terhubung ke Aplikasi Fungsi menggunakan identitas terkelola yang ditetapkan sistem dan menjalankan aplikasi fungsi dengan autentikasi anonim.

  • Untuk lingkungan aman di mana Anda tidak ingin menggunakan autentikasi anonim, konfigurasikan Nama Prinsipal Layanan (SPN) sebagai ID Sumber Daya. SPN harus dikonfigurasi dengan benar pada Aplikasi Fungsi:

    1. Buat pendaftaran aplikasi baru sebagai identitas peran layanan.

    2. Di aplikasi fungsi Anda, buka bagian Autentikasi di bawah Pengaturan dan buat Penyedia Identitas.

    3. Tambahkan ID Aplikasi ADF di bagian Permintaan yang diizinkan dari Aplikasi Klien Tertentu dan ID Objek di bagian Izinkan permintaan dari identifikasi tertentu . ID aplikasi dan ID Objek dapat ditemukan dengan mengikuti langkah-langkah berikut:

      1. Buka portal Azure
      2. Menavigasi ke aplikasi Perusahaan
      3. Cari nama Azure Data Factory atau Identitas Terkelola Anda.
      4. Salin id objek dan aplikasi yang ditemukan di tabel.

      Cuplikan layar pendaftaran aplikasi, memperlihatkan kotak mana yang akan diisi dengan ID aplikasi dan ID objek.

Aktivitas Fungsi Azure

Properti Keterangan Nilai yang diizinkan Diperlukan
Nama Nama aktivitas di dalam alur String Ya
Tipe Jenis aktivitas adalah "AzureFunctionActivity" String Ya
Layanan terkait Layanan tertaut Fungsi Azure untuk Aplikasi Fungsi Azure terkait Referensi layanan yang ditautkan Ya
Nama fungsi Nama fungsi di Aplikasi Fungsi Azure yang dipanggil aktivitas ini String Ya
Metode Metode REST API untuk panggilan fungsi Jenis yang Didukung String: "GET", "POST", "PUT" Ya
Header Header yang dikirim dalam permintaan. Misalnya, untuk mengatur bahasa dan mengetikkan permintaan: "headers": { "Accept-Language": "en-us", "Content-Type": "application/json" } String (atau ekspresi dengan jenis hasil string) Tidak
Tubuh Isi yang dikirim bersama permintaan ke metode API fungsi String (atau ekspresi dengan jenis hasil string) atau objek. Diperlukan untuk metode PUT/POST

Lihat skema muatan permintaan di bagian Skema permintaan muatan.

Perutean dan kueri

Aktivitas Fungsi Azure mendukung routing. Misalnya, jika Fungsi Azure Anda memiliki titik akhir https://functionAPP.azurewebsites.net/api/<functionName>/<value>?code=<secret>, maka functionName yang akan digunakan dalam Aktivitas Fungsi Azure <functionName>/<value>. Anda dapat memparameterisasi fungsi ini untuk menyediakan functionName yang diinginkan saat runtime.

Catatan

functionName untuk Durable Functions harus diambil dari properti route dari pengikatan dari fungsi dalam definisi JSON-nya, agar mencakup informasi route-nya. Cukup menggunakan functionName tanpa detail rute yang disertakan menghasilkan kegagalan karena Aplikasi Fungsi tidak dapat ditemukan.

Aktivitas Fungsi Azure juga mendukung kueri . Kueri harus disertakan sebagai bagian dari functionName. Misalnya, ketika nama fungsi HttpTriggerCSharp dan kueri yang ingin Anda sertakan name=hello, maka Anda dapat membuat functionName dalam Aktivitas Fungsi Azure sebagai HttpTriggerCSharp?name=hello. Fungsi ini dapat di parameter sehingga nilai dapat ditentukan pada waktu proses.

Fungsi batas waktu habis dan berdurasi panjang

Azure Functions mengalami timeout setelah 230 detik terlepas dari pengaturan functionTimeout yang telah Anda konfigurasi. Untuk informasi selengkapnya, lihat artikel ini. Untuk mengatasi perilaku ini, ikuti pola asinkron atau gunakan Durable Functions. Manfaat Durable Functions adalah mereka menawarkan mekanisme pelacakan status mereka sendiri, sehingga Anda tidak perlu menerapkan pelacakan status Anda sendiri.

Pelajari selengkapnya tentang Durable Functions di artikel ini. Anda dapat menyiapkan Aktivitas Fungsi Azure untuk memanggil Durable Function, yang akan mengembalikan respons dengan URI yang berbeda, seperti contoh ini. Karena statusQueryGetUri mengembalikan Status HTTP 202 saat fungsi berjalan, Anda dapat melakukan polling status fungsi dengan menggunakan Aktivitas Web. Siapkan Aktivitas Web dengan bidang url yang ditetapkan ke @activity('<AzureFunctionActivityName>').output.statusQueryGetUri. Ketika Fungsi Tahan Lama selesai, output fungsi adalah output dari Aktivitas Web.

Sampel

Anda dapat menemukan sampel yang menggunakan Fungsi Azure untuk mengekstrak konten file tar here.

Pelajari selengkapnya tentang aktivitas yang didukung di Alur dan aktivitas.