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.
Berlaku untuk: SQL Server 2016 (13.x) dan versi
yang lebih baru Azure SQL Managed Instance
Dalam panduan cepat ini, Anda akan mempelajari cara menggunakan fungsi matematika dan utilitas R dengan SQL Server Machine Learning Services atau di Big Data Cluster. Fungsi statistik sering kali rumit untuk diimplementasikan dalam T-SQL, tetapi dapat dilakukan di R hanya dengan beberapa baris kode.
Dalam panduan awal ini, Anda akan mempelajari cara menggunakan fungsi matematika dan utilitas R dengan Layanan Pembelajaran Mesin SQL Server. Fungsi statistik sering kali rumit untuk diimplementasikan dalam T-SQL, tetapi dapat dilakukan di R hanya dengan beberapa baris kode.
Dalam panduan cepat ini, Anda akan mempelajari cara menggunakan fungsi R untuk matematika dan utilitas dengan SQL Server R Services. Fungsi statistik sering kali rumit untuk diimplementasikan dalam T-SQL, tetapi dapat dilakukan di R hanya dengan beberapa baris kode.
Dalam pengantar cepat ini, Anda akan mempelajari cara menggunakan struktur data dan jenis data saat menggunakan R di Layanan Pembelajaran Mesin Azure SQL Managed Instance. Anda akan mempelajari tentang memindahkan data antara R dan SQL Managed Instance, dan masalah umum yang mungkin terjadi.
Prasyarat
Anda memerlukan prasyarat berikut untuk menjalankan panduan cepat ini.
- Layanan Pembelajaran Mesin SQL Server. Untuk menginstal layanan Pembelajaran Mesin, lihat panduan penginstalan Windows atau panduan penginstalan Linux. Anda juga dapat mengaktifkan Layanan Pembelajaran Mesin di Kluster Big Data SQL Server.
- Layanan Pembelajaran Mesin SQL Server. Untuk menginstal Layanan Pembelajaran Mesin, lihat panduan penginstalan Windows.
- Layanan SQL Server 2016 R. Untuk menginstal Layanan R, lihat panduan penginstalan Windows.
- Azure SQL Managed Instance Layanan Pembelajaran Mesin. Untuk informasi, lihat Gambaran Umum Layanan Pembelajaran Mesin Azure SQL Managed Instance.
- Alat untuk menjalankan kueri SQL yang berisi skrip R. Mulai cepat ini menggunakan ekstensi MSSQL untuk Visual Studio Code.
Membuat prosedur tersimpan untuk menghasilkan angka acak
Untuk kesederhanaan, mari kita gunakan paket R stats , yang diinstal dan dimuat secara default. Paket ini berisi ratusan fungsi untuk tugas statistik umum, di antaranya fungsi rnorm, yang menghasilkan sejumlah angka acak tertentu menggunakan distribusi normal, dengan simpangan baku dan rata-rata yang ditentukan.
Misalnya, kode R berikut memberikan 100 angka dengan rata-rata 50, mengingat simpangan baku 3.
as.data.frame(rnorm(100, mean = 50, sd = 3));
Untuk memanggil baris R ini dari T-SQL, tambahkan fungsi R di parameter skrip R , sp_execute_external_scriptseperti ini:
EXECUTE sp_execute_external_script
@language = N'R'
, @script = N'
OutputDataSet <- as.data.frame(rnorm(100, mean = 50, sd =3));'
, @input_data_1 = N' ;'
WITH RESULT SETS (([Density] float NOT NULL));
Bagaimana jika Anda ingin mempermudah untuk menghasilkan sekumpulan angka acak yang berbeda?
Itu mudah jika dikombinasikan dengan T-SQL. Anda menentukan prosedur tersimpan yang mendapatkan argumen dari pengguna, lalu meneruskan argumen tersebut ke dalam skrip R sebagai variabel.
CREATE PROCEDURE MyRNorm (
@param1 INT
, @param2 INT
, @param3 INT
)
AS
EXECUTE sp_execute_external_script @language = N'R'
, @script = N'
OutputDataSet <- as.data.frame(rnorm(mynumbers, mymean, mysd));'
, @input_data_1 = N' ;'
, @params = N' @mynumbers int, @mymean int, @mysd int'
, @mynumbers = @param1
, @mymean = @param2
, @mysd = @param3
WITH RESULT SETS(([Density] FLOAT NOT NULL));
Baris pertama mendefinisikan masing-masing parameter input SQL yang diperlukan saat prosedur tersimpan dijalankan.
Baris yang dimulai dengan
@paramsmendefinisikan semua variabel yang digunakan oleh kode R, dan jenis data SQL yang sesuai.Baris-baris berikut ini memetakan nama parameter SQL ke nama variabel R yang sesuai.
Sekarang setelah Anda membungkus fungsi R dalam prosedur tersimpan, Anda dapat dengan mudah memanggil fungsi dan meneruskan nilai yang berbeda, seperti ini:
EXECUTE MyRNorm @param1 = 100,@param2 = 50, @param3 = 3
Menggunakan fungsi utilitas R untuk pemecahan masalah
Paket utils , yang diinstal secara default, menyediakan berbagai fungsi utilitas untuk menyelidiki lingkungan R saat ini. Fungsi-fungsi ini dapat berguna jika Anda menemukan perbedaan dalam cara kode R Anda bekerja di SQL Server dan di lingkungan luar.
Misalnya, Anda dapat menggunakan fungsi pengaturan waktu sistem di R, seperti system.time dan proc.time, untuk menangkap waktu yang digunakan oleh proses R dan menganalisis masalah performa. Misalnya, lihat tutorial Membuat Fitur Data dimana fungsi waktu R disematkan dalam solusi.
EXECUTE sp_execute_external_script
@language = N'R'
, @script = N'
library(utils);
start.time <- proc.time();
# Run R processes
elapsed_time <- proc.time() - start.time;'
Untuk fungsi berguna lainnya, lihat Menggunakan fungsi pembuatan profil kode R untuk meningkatkan performa.
Langkah berikutnya
Untuk membuat model pembelajaran mesin menggunakan R dengan pembelajaran mesin SQL, ikuti mulai cepat ini: