Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Fungsi yang ditentukan pengguna .Net Standard untuk Azure Stream Analytics akan dihentikan pada 30 September 2024. Setelah tanggal tersebut, tidak akan mungkin untuk menggunakan fitur tersebut. Silakan transisi ke fungsi yang ditentukan pengguna JavaScript untuk Azure Stream Analytics.
Fungsi yang ditentukan pengguna (UDF) C# yang dibuat di Visual Studio memungkinkan Anda memperluas bahasa kueri Azure Stream Analytics dengan fungsi Anda sendiri. Anda dapat menggunakan kembali kode yang ada (termasuk DLL) dan menggunakan logika matematika atau kompleks dengan C#. Ada tiga cara untuk menerapkan UDF:
- File CodeBehind dalam proyek Azure Stream Analytics
- UDF dari proyek C# lokal
- Fungsi UDF dari paket yang sudah ada dari akun penyimpanan data.
Tutorial ini menggunakan metode CodeBehind untuk mengimplementasikan fungsi C# dasar. Fitur UDF untuk pekerjaan Stream Analytics saat ini dalam pratinjau dan tidak boleh digunakan dalam beban kerja produksi.
Dalam tutorial ini, Anda akan belajar cara:
- Buat fungsi yang ditentukan pengguna C# menggunakan CodeBehind.
- Uji pekerjaan Azure Stream Analytics Anda secara lokal.
- Terbitkan pekerjaan Anda ke Azure.
Prasyarat
Sebelum memulai, pastikan Anda telah menyelesaikan prasyarat berikut:
- Jika Anda tidak memiliki langganan Azure, buat akun gratis.
- Instalasi alat Stream Analytics untuk Visual Studio dan beban kerja Pengembangan Azure dan Penyimpanan Data dan Pemrosesan.
- Lihatlah panduan pengembangan Azure Stream Analytics Edge yang sudah ada jika Anda mengembangkan pekerjaan IoT Edge.
Membuat kontainer di Akun Azure Storage Anda
Kontainer yang Anda buat digunakan untuk menyimpan paket C# yang dikompilasi. Jika Anda membuat pekerjaan Edge, akun penyimpanan ini juga digunakan untuk menyebarkan paket ke perangkat IoT Edge Anda. Gunakan kontainer khusus untuk setiap pekerjaan Azure Stream Analytics. Menggunakan kembali kontainer yang sama untuk beberapa pekerjaan Azure Stream Analytics Edge tidak didukung. Jika Anda sudah memiliki akun penyimpanan dengan kontainer yang ada, Anda dapat menggunakannya. Jika tidak, Anda perlu membuat kontainer baru.
Membuat proyek Azure Stream Analytics di Visual Studio
Mulai Visual Studio.
Pilih File > Proyek Baru>.
Di daftar templat di sebelah kiri, pilih Azure Stream Analytics, lalu pilih Aplikasi Azure Stream Analytics Edge atau Aplikasi Azure Stream Analytics.
Masukkan nama proyek, Lokasi, dan Nama solusi, dan pilih OK.
Mengonfigurasi jalur paket rakitan
Buka Visual Studio dan navigasikan ke Penjelajah Solusi.
Klik ganda pada file konfigurasi pekerjaan,
JobConfig.json.Buka bagian Konfigurasi Kode Didefinisikan Pengguna, dan isi konfigurasi dengan nilai-nilai berikut yang disarankan:
Pengaturan Nilai yang Disarankan Sumber Daya Pengaturan Penyimpanan Global Pilih sumber data dari akun saat ini Langganan Pengaturan Penyimpanan Global < langganan Anda > Pengaturan Penyimpanan Global Akun Penyimpanan < akun penyimpanan Anda > Sumber Daya Pengaturan Penyimpanan Kode Kustom Pilih sumber data dari akun saat ini Pengaturan Penyimpanan Akun Penyimpanan Kode Kustom < akun penyimpanan Anda > Wadah Pengaturan Penyimpanan Kode Kustom < kontainer penyimpanan Anda >
Menulis C# UDF dengan CodeBehind
File CodeBehind adalah file C# yang terkait dengan satu skrip kueri ASA. Alat Visual Studio secara otomatis meng-zip file CodeBehind dan mengunggahnya ke akun penyimpanan Azure Anda setelah pengiriman. Semua kelas harus didefinisikan sebagai publik dan semua objek harus didefinisikan sebagai publik statis.
Di Penjelajah Solusi, perluas Script.asql untuk menemukan file codeBehind Script.asaql.cs .
Ganti kode dengan sampel berikut:
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace ASAEdgeUDFDemo { public class Class1 { // Public static function public static Int64 SquareFunction(Int64 a) { return a * a; } } }
Menerapkan UDF
Di Penjelajah Solusi, buka file Script.asaql .
Ganti kueri yang sudah ada dengan kueri berikut:
SELECT machine.temperature, udf.ASAEdgeUDFDemo_Class1_SquareFunction(try_cast(machine.temperature as bigint)) INTO Output FROM Input
Pengujian lokal
Di Penjelajah Solusi, perluas Input, klik kanan Input.json, dan pilih Tambahkan Input Lokal.
Tentukan jalur file input lokal untuk data sampel yang Anda unduh dan Simpan.
Klik Jalankan Secara Lokal di editor skrip. Setelah eksekusi lokal berhasil menyimpan hasil output, tekan tombol apa pun untuk melihat hasilnya dalam format tabel.
Anda juga dapat memilih Buka Folder Hasil untuk melihat file mentah dalam format JSON dan CSV.
Debug UDF
Anda dapat men-debug C# UDF Anda secara lokal dengan cara yang sama seperti Anda men-debug kode C# standar.
Tambahkan titik henti di fungsi C# Anda.
Tekan F5 untuk memulai debugging. Program berhenti pada titik henti Anda seperti yang diharapkan.
Menerbitkan pekerjaan Anda ke Azure
Setelah Anda menguji kueri secara lokal, pilih Kirim ke Azure di editor skrip untuk menerbitkan pekerjaan ke Azure.
Menyebarkan ke perangkat IoT Edge
Jika Anda memilih untuk membangun pekerjaan Stream Analytics Edge, pekerjaan tersebut kini dapat disebarkan sebagai modul IoT Edge. Ikuti panduan memulai cepat IoT Edge untuk membuat sebuah IoT Hub, mendaftarkan sebuah perangkat IoT Edge, dan menginstal serta memulai runtime IoT Edge pada perangkat Anda. Kemudian ikuti tutorial penyebaran pekerjaan untuk menyebarkan pekerjaan Azure Stream Analytics Anda sebagai modul IoT Edge.
Langkah selanjutnya
Dalam tutorial ini, Anda membuat fungsi C# sederhana yang ditentukan pengguna menggunakan CodeBehind, menerbitkan pekerjaan Anda ke Azure, dan menyebarkan pekerjaan ke perangkat Azure atau IoT Edge.
Untuk mempelajari selengkapnya tentang berbagai cara untuk menggunakan fungsi yang ditentukan pengguna C# untuk pekerjaan Azure Stream Analytics, lanjutkan ke artikel ini: