Bagikan melalui


Menggunakan Azure Databricks untuk mengimplementasikan penilaian batch model Spark yang dapat diskalakan

Microsoft Entra ID
Azure Databricks
Azure Data Factory
Penyimpanan Azure Blob

Arsitektur referensi ini menunjukkan cara membangun solusi yang dapat diskalakan untuk menilai model klasifikasi Apache Spark sesuai jadwal menggunakan Azure Databricks. Azure Databricks adalah platform analitik berbasis Apache Spark yang dioptimalkan untuk Azure.

Azure Databricks menawarkan tiga lingkungan untuk mengembangkan aplikasi intensif data: Databricks SQL, Databricks Data Science & Engineering, dan Databricks Machine Learning. Databricks Azure Machine Learning adalah lingkungan pembelajaran mesin menyeluruh terintegrasi yang menggabungkan layanan terkelola untuk pelacakan eksperimen, pelatihan model, pengembangan dan pengelolaan fitur, serta penyajian fitur dan model. Anda dapat menggunakan arsitektur referensi ini sebagai templat yang dapat digeneralisasi ke skenario lain.

ApacheĀ® dan Apache SparkĀ® adalah merek dagang terdaftar atau merek dagang dari Apache Software Foundation di Amerika Serikat dan/atau negara lain. Tidak ada dukungan oleh The Apache Software Foundation yang tersirat oleh penggunaan tanda ini.

Sistem

Diagram yang menunjukkan penilaian batch model klasifikasi Apache Spark di Azure Databricks.

Unduh file Visio arsitektur ini.

Alur kerja

Arsitektur mendefinisikan aliran data yang sepenuhnya terkandung dalam Azure Databricks berdasarkan sekumpulan notebook yang dijalankan secara berurutan. Ini terdiri dari komponen berikut:

File data. Implementasi referensi menggunakan himpunan data simulasi yang terdapat dalam lima file data statis.

Penyerapan. Buku catatan penyerapan data mengunduh file data input ke dalam kumpulan himpunan data Databricks. Dalam skenario dunia nyata, data dari perangkat IoT akan mengalir ke penyimpanan yang dapat diakses Databricks seperti penyimpanan Azure SQL atau Azure Blob. Databricks mendukung beberapa sumber data.

Penyempurnaan terbaru dalam penyerapan data termasuk replikasi data real time dari berbagai database dan aplikasi SaaS, yang dimungkinkan oleh fitur seperti Lake House Federation.

Alur pelatihan. Buku catatan ini menjalankan buku catatan rekayasa fitur untuk membuat himpunan data analisis dari data yang diserap. Alur kemudian menjalankan notebook pembuatan model yang melatih model pembelajaran mesin menggunakan Apache Spark MLlib pustaka pembelajaran mesin yang dapat diskalakan.

Fitur ML yang ditingkatkan di Databricks termasuk pelacakan eksperimen dan pelatihan model, lebih mengoptimalkan alur ini.

Alur penilaian. Buku catatan ini menjalankan buku catatan rekayasa fitur untuk membuat himpunan data penilaian dari data yang diserap dan mengeksekusi buku catatan penilaian. Buku catatan penilaian menggunakan model Spark MLlib terlatih untuk menghasilkan prediksi untuk pengamatan dalam himpunan data penilaian. Prediksi disimpan di penyimpanan hasil, himpunan data baru di penyimpanan data Databricks.

Alur penilaian dapat menggunakan fungsi ai_query untuk inferensi batch, memproses himpunan data besar secara efisien dengan ketentuan untuk skalabilitas dan pengoptimalan performa.

Penjadwal. pekerjaan Databricks terjadwal menangani penilaian batch dengan model Spark. Pekerjaan menjalankan buku catatan saluran penilaian, meneruskan argumen variabel melalui parameter buku catatan untuk menentukan detail untuk menyusun himpunan data penilaian dan tempat menyimpan himpunan data hasil.

Detail solusi

Skenario dibangun sebagai aliran alur. Setiap buku catatan dioptimalkan untuk berjalan dalam pengaturan batch untuk setiap operasi: penyerapan, rekayasa fitur, pembuatan model, dan penilaian model. Buku catatan rekayasa fitur dirancang untuk menghasilkan himpunan data umum untuk setiap operasi pelatihan, kalibrasi, pengujian, atau penilaian. Dalam skenario ini, kami menggunakan strategi pemisahan sementara untuk operasi ini, sehingga parameter buku catatan digunakan untuk mengatur pemfilteran rentang tanggal.

Kemungkinan kasus penggunaan

Sebuah bisnis di industri aset-berat ingin meminimalkan biaya dan waktu henti yang terkait dengan kegagalan mekanis yang tidak terduga. Menggunakan data IoT yang dikumpulkan dari mesinnya, mereka dapat membuat model pemeliharaan prediktif. Model ini memungkinkan bisnis memelihara komponen secara proaktif dan memperbaikinya sebelum gagal. Dengan memaksimalkan penggunaan komponen mekanis, mesin dapat mengontrol biaya dan mengurangi waktu henti.

Model perawatan prediktif mengumpulkan data dari mesin dan menyimpan contoh historis kegagalan komponen. Model tersebut kemudian dapat digunakan untuk memantau keadaan komponen saat ini dan memprediksi jika komponen tertentu akan segera gagal.

Arsitektur referensi ini dirancang untuk beban kerja yang dipicu oleh adanya data baru dari mesin komponen. Pemrosesan melibatkan langkah-langkah berikut:

  1. Menyerap data dari penyimpanan data eksternal ke penyimpanan data Azure Databricks.

  2. Melatih model pembelajaran mesin dengan mengubah data menjadi himpunan data pelatihan, lalu membuat model Spark MLlib. MLlib terdiri dari algoritme pembelajaran mesin paling umum dan utilitas yang dioptimalkan untuk memanfaatkan kemampuan skalabilitas data Spark.

  3. Menerapkan model terlatih untuk memprediksi (mengklasifikasikan) kegagalan komponen dengan mengubah data menjadi himpunan data penilaian. Menilai data dengan model Spark MLLib.

  4. Menyimpan hasil di penyimpanan data Databricks untuk konsumsi pascapemrosesan.

Alternatif

Arsitektur ini dapat menggunakan Mosaic AI Model Serving untuk menyebarkan model untuk inferensi batch dan real-time menggunakan komputasi tanpa server Azure Databricks. Ini menyediakan antarmuka untuk menskalakan sumber daya secara dinamis, meningkatkan performa dan efisiensi biaya dalam memproses himpunan data besar.

Kembangkan alur terjadwal yang lebih kompleks dengan menggunakan Microsoft Fabric dengan Azure Databricks.

Rekomendasi

Databricks disiapkan sehingga Anda dapat memuat dan menyebarkan model terlatih untuk membuat prediksi dengan data baru. Databricks juga memberikan keuntungan lain:

  • Dukungan akses menyeluruh menggunakan kredensial Microsoft Entra.
  • Penjadwal pekerjaan untuk menjalankan pekerjaan untuk alur produksi.
  • Buku catatan yang sepenuhnya interaktif dengan kolaborasi, dasbor, REST API.
  • Kluster tanpa batas yang dapat diskalakan ke berbagai ukuran.
  • Keamanan tingkat lanjut, kontrol akses berbasis peran, dan log audit.

Untuk berinteraksi dengan layanan Azure Databricks, gunakan antarmuka Ruang Kerja Databricks di browser web atau antarmuka baris perintah (CLI).

Arsitektur ini menggunakan buku catatan untuk menjalankan tugas secara berurutan. Setiap buku catatan menyimpan artefak data perantara (pelatihan, pengujian, penilaian, atau himpunan data hasil) ke penyimpanan data yang sama sebagai data input. Tujuannya adalah untuk memudahkan Anda menggunakannya sesuai kebutuhan dalam kasus penggunaan khusus Anda. Dalam praktiknya, Anda akan menghubungkan sumber data Anda ke instans Azure Databricks agar buku catatan dapat membaca dan menulis langsung kembali ke penyimpanan Anda.

Pantau eksekusi pekerjaan melalui antarmuka pengguna Databricks, penyimpanan data, atau Databricks CLI seperlunya. Pantau kluster menggunakan log peristiwa dan metrik lain yang disediakan Databricks.

Pertimbangan

Pertimbangan ini mengimplementasikan pilar Azure Well-Architected Framework, yang merupakan serangkaian tenet panduan yang dapat digunakan untuk meningkatkan kualitas beban kerja. Untuk informasi selengkapnya, lihat Microsoft Azure Well-Architected Framework.

Keandalan

Keandalan memastikan aplikasi Anda dapat memenuhi komitmen yang Anda buat kepada pelanggan Anda. Untuk informasi selengkapnya, lihat daftar periksa tinjauan desain untukKeandalan .

Dalam arsitektur ini, data disimpan langsung dalam penyimpanan Databricks untuk kesederhanaan. Namun, dalam pengaturan produksi, Anda harus menyimpan data di penyimpanan data cloud seperti Azure Blob Storage. Databricks juga mendukung Azure Data Lake Store, Microsoft Fabric, Azure Cosmos DB, Apache Kafka, dan Apache Hadoop.

Pengoptimalan Biaya

Pengoptimalan Biaya adalah tentang melihat cara untuk mengurangi pengeluaran yang tidak perlu dan meningkatkan efisiensi operasional. Untuk informasi selengkapnya, lihat daftar periksa Design review untuk Pengoptimalan Biaya.

Azure Databricks adalah penawaran Spark premium dengan biaya terkait. Selain itu, ada tingkat harga Databricks standar dan premium.

Untuk skenario ini, tingkat harga Standar sudah cukup. Namun, jika aplikasi spesifik Anda memerlukan penskalakan kluster secara otomatis untuk menangani beban kerja yang lebih besar atau dasbor Databricks interaktif, tingkat Premium dapat meningkatkan biaya lebih lanjut.

Efisiensi Performa

Efisiensi Performa adalah kemampuan beban kerja Anda untuk memenuhi tuntutan yang ditempatkan di dalamnya oleh pengguna dengan cara yang efisien. Untuk informasi selengkapnya, lihat daftar periksa tinjauan Desain untukEfisiensi Performa .

Kluster Azure Databricks memungkinkan penskalaan otomatis secara default sehingga selama runtime, Databricks secara dinamis mengalokasikan ulang pekerja untuk memperhitungkan karakteristik pekerjaan Anda. Bagian tertentu dari alur Anda mungkin lebih menuntut secara komputasi daripada yang lain. Databricks menambahkan pekerja tambahan selama fase pekerjaan Anda ini (dan menghapusnya saat tidak lagi dibutuhkan). Penskalaan otomatis mempermudah pencapaian penggunaan kluster yang tinggi, karena Anda tidak perlu menyediakan kluster agar sesuai dengan beban kerja.

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.

Langkah berikutnya