Bagikan melalui


Perbedaan utama antara Layanan Pembelajaran Mesin di Azure SQL Managed Instance dan SQL Server

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