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.
Integrasi Azure Pembelajaran Mesin dengan Azure Synapse Analytics menyediakan akses mudah ke sumber daya komputasi terdistribusi melalui kerangka kerja Apache Spark. Integrasi ini menawarkan pengalaman komputasi Apache Spark ini:
- Komputasi Spark Tanpa Server
- Kumpulan Synapse Spark Terlampir
Komputasi Spark Tanpa Server
Dengan kerangka kerja Apache Spark, Komputasi Spark tanpa server Azure Pembelajaran Mesin adalah cara termudah untuk menyelesaikan tugas komputasi terdistribusi di lingkungan Azure Pembelajaran Mesin. Azure Pembelajaran Mesin menawarkan kluster komputasi Apache Spark yang dikelola sepenuhnya, tanpa server, sesuai permintaan. Anda tidak perlu membuat ruang kerja Azure Synapse dan kumpulan Synapse Spark.
Anda dapat menentukan sumber daya, termasuk jenis instans dan versi runtime Apache Spark. Gunakan sumber daya tersebut untuk mengakses komputasi Spark tanpa server di notebook Azure Machine Learning untuk:
- Pengembangan kode Spark interaktif
- Menjalankan alur pembelajaran mesin dengan komponen Spark
- Pengiriman pekerjaan batch Spark
Poin yang perlu dipertimbangkan
Komputasi Spark tanpa server berfungsi dengan baik untuk sebagian besar skenario pengguna yang memerlukan akses cepat ke sumber daya komputasi terdistribusi melalui Apache Spark. Namun, untuk membuat keputusan berdasarkan informasi, pertimbangkan kelebihan dan kekurangan dari pendekatan ini.
Keuntungan:
- Tidak ada dependensi pada pembuatan sumber daya Azure lainnya untuk Apache Spark (infrastruktur Azure Synapse beroperasi di bawah tenda).
- Tidak ada izin langganan yang diperlukan untuk membuat sumber daya terkait Azure Synapse.
- Tidak perlu kuota kumpulan SQL.
Kekurangan:
- Tidak ada Hive metastore yang persisten. Komputasi Spark tanpa server hanya mendukung Spark SQL dalam memori.
- Tidak ada tabel atau database yang tersedia.
- Tidak ada integrasi Azure Purview.
- Tidak ada layanan tertaut yang tersedia.
- Lebih sedikit sumber data dan konektor.
- Tidak ada konfigurasi tingkat kumpulan.
- Tidak ada manajemen pustaka tingkat kumpulan.
- Hanya dukungan parsial untuk
mssparkutils.
Konfigurasi jaringan
Untuk menggunakan isolasi jaringan dengan Azure Pembelajaran Mesin dan komputasi Spark tanpa server, gunakan jaringan virtual terkelola.
Periode tidak aktif dan mekanisme robek
Pada peluncuran pertama, sumber daya komputasi Spark tanpa server (cold start) mungkin perlu tiga hingga lima menit untuk memulai sesi Spark itu sendiri. Penundaan ini terjadi karena sumber daya otomatis komputasi Spark tanpa server, yang didukung oleh Azure Synapse, membutuhkan waktu untuk dialokasikan. Setelah komputasi Spark tanpa server disediakan dan sesi Apache Spark dimulai, eksekusi kode berikutnya (mulai hangat) tidak mengalami penundaan ini.
Konfigurasi sesi Spark menawarkan opsi yang menentukan batas waktu sesi (dalam menit). Sesi Spark berakhir setelah periode tidak aktif yang melebihi batas waktu yang ditentukan pengguna. Jika sesi Spark lain tidak dimulai dalam 10 menit berikut, sistem akan merobek sumber daya yang disediakan untuk komputasi Spark tanpa server.
Setelah sistem merobek sumber daya komputasi Spark tanpa server, pengajuan pekerjaan berikutnya membutuhkan awal yang dingin. Visualisasi berikut menunjukkan beberapa periode ketidakaktifan sesi dan skenario penghentian klaster.
Paket Conda tingkat sesi
File YAML dependensi Conda dapat menentukan banyak paket Conda tingkat sesi dalam konfigurasi sesi. Waktu sesi habis jika membutuhkan lebih dari 15 menit untuk menginstal paket Conda yang ditentukan dalam file YAML. Periksa apakah paket yang diperlukan sudah tersedia di gambar dasar Azure Synapse. Untuk melakukan ini, kunjungi sumber daya ini untuk menentukan paket yang tersedia dalam gambar dasar untuk versi Apache Spark yang digunakan:
- Azure Synapse Runtime untuk Apache Spark 3.5
- Azure Synapse Runtime untuk Apache Spark 3.4
- Azure Synapse Runtime untuk Apache Spark 3.3
Catatan
Untuk paket Conda tingkat sesi:
- Cold start membutuhkan sekitar 10 hingga 15 menit.
- Proses Warm start, yang menggunakan paket Conda yang sama, membutuhkan waktu sekitar satu menit.
- Warm start, dengan paket yang berbeda di Conda, membutuhkan waktu sekitar 10 hingga 15 menit.
- Jika Anda menginstal paket besar, atau paket yang membutuhkan waktu penginstalan yang lama, itu mungkin berdampak pada waktu mulai instans Spark.
- Perubahan versi PySpark, Python, Scala/Java, .NET, atau Spark tidak didukung.
- Gambar Docker tidak didukung.
Meningkatkan waktu mulai dingin sesi saat menggunakan paket Conda tingkat sesi
Atur spark.hadoop.aml.enable_cache variabel konfigurasi ke true untuk meningkatkan waktu mulai dingin sesi Spark. Dengan paket Conda pada tingkat sesi, sesi cold start biasanya membutuhkan waktu 10 hingga 15 menit ketika sesi dimulai untuk pertama kalinya. Namun, sesi berikutnya mulai dingin membutuhkan waktu tiga hingga lima menit. Tentukan variabel konfigurasi di antarmuka konfigurasi pengguna sesi , di bawah Pengaturan konfigurasi.
Kumpulan Synapse Spark Terlampir
Saat membuat kumpulan Spark di ruang kerja Azure Synapse, Anda dapat mengaksesnya di ruang kerja Azure Machine Learning dengan kumpulan Synapse Spark yang terlampir. Opsi ini bagus untuk pengguna yang ingin menggunakan kembali kumpulan Synapse Spark yang ada.
Untuk melampirkan kumpulan Synapse Spark ke ruang kerja Azure Machine Learning, Anda perlu menyelesaikan langkah-langkah lebih lanjut sebelum Anda dapat menggunakan kumpulan di Azure Machine Learning untuk:
- Pengembangan kode Spark interaktif
- Pengiriman pekerjaan batch Spark
- Menjalankan alur pembelajaran mesin dengan komponen Spark
Kumpulan Synapse Spark terlampir menyediakan akses ke fitur Azure Synapse asli. Anda bertanggung jawab untuk menyediakan, melampirkan, mengonfigurasi, dan mengelola kumpulan Synapse Spark.
Konfigurasi sesi Spark untuk kumpulan Synapse Spark yang terpasang juga menawarkan opsi untuk menentukan batas waktu sesi (dalam hitungan menit). Perilaku batas waktu sesi menyerupkan deskripsi di bagian sebelumnya, kecuali bahwa sumber daya terkait tidak pernah diruntuhkan setelah waktu sesi habis.
Menentukan ukuran kluster Spark
Dalam pekerjaan Azure Machine Learning Spark, Anda dapat menentukan ukuran kluster Spark dengan tiga nilai parameter:
- Jumlah pelaksana
- Inti eksekutor
- Memori pelaksana
Pertimbangkan bahwa eksekutor Apache Spark pada Azure Machine Learning adalah setara dengan simpul pekerja Azure Spark. Contohnya dapat menjelaskan parameter ini. Jika Anda menentukan jumlah eksekutor sebagai 6 (setara dengan enam simpul pekerja), jumlah inti eksekutor sebagai 4, dan memori eksekutor sebagai 28 GB, pekerjaan Spark Anda memiliki akses ke kluster dengan total 24 core dan memori 168 GB.
Memastikan akses sumber daya untuk pekerjaan Spark
Untuk mengakses data dan sumber daya lainnya, pekerjaan Spark dapat menggunakan identitas terkelola atau passthrough identitas pengguna. Tabel ini meringkas mekanisme yang digunakan pekerjaan Spark untuk mengakses sumber daya.
| Kumpulan Spark | Identitas yang didukung | Identitas default |
|---|---|---|
| Komputasi Spark Tanpa Server | Identitas pengguna, identitas terkelola yang ditetapkan pengguna yang dilampirkan ke ruang kerja | Identitas pengguna |
| Kumpulan Synapse Spark Terlampir | Identitas pengguna, identitas terkelola yang ditetapkan pengguna yang dilampirkan ke kumpulan Synapse Spark terlampir, identitas terkelola yang ditetapkan sistem dari kumpulan Synapse Spark terlampir | Identitas terkelola yang ditetapkan sistem dari kumpulan Synapse Spark terlampir |
Artikel ini menjelaskan akses sumber daya untuk pekerjaan Spark. Dalam sesi notebook, komputasi Spark tanpa server dan kumpulan Synapse Spark yang terlampir mengandalkan passthrough identitas pengguna untuk akses data selama perselisihan data interaktif.
Catatan
- Untuk memastikan keberhasilan eksekusi pekerjaan Spark, tetapkan peran Kontributor dan Kontributor Data Blob Penyimpanan (pada akun penyimpanan Azure yang digunakan untuk input dan output data) ke identitas yang Anda gunakan untuk pengiriman pekerjaan Spark.
- Jika kumpulan Synapse Spark terlampir menunjuk ke kumpulan Synapse Spark di ruang kerja Azure Synapse, dan ruang kerja tersebut memiliki jaringan virtual terkelola terkait, konfigurasikan titik akhir privat terkelola ke akun penyimpanan. Konfigurasi ini membantu memastikan akses data.
Langkah berikutnya
- Melampirkan dan mengelola kumpulan Synapse Spark di Azure Pembelajaran Mesin
- Manipulasi data interaktif dengan Apache Spark di Azure Pembelajaran Mesin
- Mengirimkan pekerjaan Spark di Azure Pembelajaran Mesin
- Sampel kode untuk pekerjaan Spark menggunakan Azure Pembelajaran Mesin CLI
- Sampel kode untuk pekerjaan Spark menggunakan Azure Pembelajaran Mesin Python SDK