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.
Artikel ini menjelaskan beberapa perbedaan utama dalam fungsionalitas antara Machine Learning Services di azure SQL Managed Instance dan SQL Server Machine Learning Services.
Dukungan bahasa
Layanan Pembelajaran Mesin di SQL Managed Instance dan SQL Server mendukung kerangka kerja ekstensibilitas Python dan R . Perbedaan utama dalam SQL Managed Instance adalah bahwa hanya Python dan R yang didukung, dan bahasa eksternal seperti Java tidak dapat ditambahkan.
Versi awal Python dan R berbeda dalam SQL Managed Instance dan SQL Server:
| Platform | Versi runtime Python | Versi runtime R |
|---|---|---|
| Azure SQL Managed Instance | 3.7.2 | 3.5.2 |
| SQL Server 2022 * | - | - |
| SQL Server 2019 | 3.7.1 | 3.5.2 |
| SQL Server 2017 | 3.5.2 dan 3.7.2 (CU22 dan yang lebih baru) | 3.3.3 dan 3.5.2 (CU22 dan yang lebih baru) |
| SQL Server 2016 | Tidak tersedia | 3.2.2 dan 3.5.2 (SP2 CU14 dan yang lebih baru) |
* Dimulai dengan SQL Server 2022, runtime untuk R, Python, dan Java tidak lagi dikirim atau diinstal dalam Pengaturan SQL. Sebagai gantinya, instal runtime dan paket kustom R dan/atau Python yang Anda inginkan. Untuk informasi selengkapnya, lihat Menginstal Layanan Pembelajaran Mesin SQL Server 2022 (Python dan R) di Windows.
Paket Python dan R
Tidak ada dukungan dalam SQL Managed Instance untuk paket yang bergantung pada runtime eksternal (seperti Java) atau memerlukan akses ke API OS untuk penginstalan atau penggunaan.
Untuk informasi selengkapnya tentang mengelola paket Python dan R, lihat:
Mengelola paket melalui sqlmlutils
Anda dapat menginstal paket biner dengan sqlmlutils, jika Anda dapat membangun secara lokal untuk menghasilkan paket biner sebagai output. Misalnya, lihat Menginstal paket R dengan paket Sqlmlutils atau Instal Python dengan sqlmlutils.
Tata kelola sumber daya
Di SQL Managed Instance, tidak dimungkinkan untuk membatasi sumber daya R melalui Resource Governor, dan kumpulan sumber daya eksternal tidak didukung.
Secara bawaan, sumber daya R diatur ke maksimum 20% dari sumber daya SQL Managed Instance yang tersedia saat ekstensibilitas diaktifkan. Untuk mengubah persentase default ini, buat tiket dukungan Azure di https://azure.microsoft.com/support/create-ticket/.
Ekstensibilitas diaktifkan dengan perintah SQL berikut (SQL Managed Instance akan dimulai ulang dan tidak tersedia selama beberapa detik):
sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;
Untuk menonaktifkan ekstensibilitas dan memulihkan 100% memori dan sumber daya CPU ke SQL Server, gunakan perintah berikut:
sp_configure 'external scripts enabled', 0;
RECONFIGURE WITH OVERRIDE;
Total sumber daya yang tersedia untuk SQL Managed Instance bergantung pada tingkat layanan mana yang Anda pilih. Untuk informasi selengkapnya, lihat model pembelian Azure SQL Database.
Kesalahan memori tidak cukup
Penggunaan memori tergantung pada berapa banyak yang digunakan dalam skrip R Anda dan jumlah kueri paralel yang dijalankan. Jika memori tidak cukup tersedia untuk R, Anda akan mendapatkan pesan kesalahan. Pesan kesalahan umum adalah:
Unable to communicate with the runtime for 'R' script for request id: *******. Please check the requirements of 'R' runtime'R' script error occurred during execution of 'sp_execute_external_script' with HRESULT 0x80004004. ...an external script error occurred: "..could not allocate memory (0 Mb) in C function 'R_AllocStringBuffer'"An external script error occurred: Error: cannot allocate vector of size.
Jika Anda menerima salah satu kesalahan ini, Anda dapat mengatasinya dengan menskalakan database Anda ke tingkat layanan yang lebih tinggi.
Jika Anda mengalami kesalahan kehabisan memori di Azure SQL Managed Instance, tinjau sys.dm_os_out_of_memory_events.
Kumpulan SQL Managed Instance
Layanan Pembelajaran Mesin saat ini tidak didukung pada kumpulan Azure SQL Managed Instance (pratinjau).
Akses jaringan keluar
Akses jaringan tidak diizinkan atau diblokir dan tidak dapat diaktifkan. Koneksi jaringan keluar untuk Azure SQL Managed Instance tidak tersedia untuk Layanan Pembelajaran Mesin.
Langkah berikutnya
- Lihat gambaran umum, Machine Learning Services di Azure SQL Managed Instance.
- Untuk mempelajari cara menggunakan Python di Layanan Pembelajaran Mesin, lihat Menjalankan skrip Python.
- Untuk mempelajari cara menggunakan R di Layanan Pembelajaran Mesin, lihat Menjalankan skrip R.