RevoScaleR (paket R di SQL Server Machine Learning Services)

Berlaku untuk: SQL Server 2016 (13.x) dan versi yang lebih baru

RevoScaleR adalah paket R dari Microsoft yang mendukung komputasi terdistribusi, konteks komputasi jarak jauh, dan algoritma ilmu data berkinerja tinggi. Ini juga mendukung impor data, transformasi data, ringkasan, visualisasi, dan analisis. Paket ini disertakan dalam SQL Server Machine Learning Services dan SQL Server 2016 R Services.

Berbeda dengan fungsi R dasar, operasi RevoScaleR dapat dilakukan terhadap himpunan data besar, secara paralel, dan pada sistem file terdistribusi. Fungsi dapat beroperasi melalui himpunan data yang tidak sesuai dengan memori dengan menggunakan pemotongan dan dengan menyusun ulang hasil saat operasi selesai.

Fungsi RevoScaleR ditandai dengan awalan rx** atau Rx untuk membuatnya mudah diidentifikasi.

RevoScaleR berfungsi sebagai platform untuk ilmu data terdistribusi. Misalnya, Anda dapat menggunakan konteks dan transformasi komputasi RevoScaleR dengan algoritma state-of-the-art di MicrosoftML. Anda juga dapat menggunakan rxExec untuk menjalankan fungsi R dasar secara paralel.

Dokumentasi referensi lengkap

Paket RevoScaleR didistribusikan dalam beberapa produk Microsoft, tetapi penggunaannya sama apakah Anda mendapatkan paket di SQL Server atau produk lain. Karena fungsinya sama, dokumentasi untuk fungsi RevoScaleR individual diterbitkan hanya ke satu lokasi di bawah referensi R. Jika ada perilaku khusus produk, perbedaan akan dicatat di halaman bantuan fungsi.

Versi dan platform

Paket RevoScaleR didasarkan pada R 3.4.3 dan hanya tersedia saat Anda menginstal salah satu produk atau unduhan Microsoft berikut:

Catatan

Versi rilis produk lengkap hanya Windows di SQL Server 2017. Windows dan Linux didukung untuk RevoScaleR pada SQL Server 2019.

Fungsi menurut kategori

Bagian ini mencantumkan fungsi menurut kategori untuk memberi Anda gambaran tentang bagaimana masing-masing digunakan. Anda juga dapat menggunakan daftar isi untuk menemukan fungsi dalam urutan alfabet.

Sumber dan komputasi 1-Data

RevoScaleR mencakup fungsi untuk membuat sumber data dan mengatur lokasi, atau konteks komputasi, tempat komputasi dilakukan. Objek sumber data adalah kontainer yang menentukan string koneksi bersama dengan kumpulan data yang Anda inginkan, ditentukan baik sebagai tabel, tampilan, atau kueri. Panggilan prosedur tersimpan tidak didukung. Fungsi yang relevan dengan skenario SQL Server tercantum dalam tabel di bawah ini.

SQL Server dan R menggunakan jenis data yang berbeda dalam beberapa kasus. Untuk daftar pemetaan antara jenis data SQL dan R, lihat Jenis data R-ke-SQL.

Fungsi Deskripsi
RxInSqlServer Buat objek konteks komputasi SQL Server untuk mendorong komputasi ke instans jarak jauh. Beberapa fungsi RevoScaleR mengambil konteks komputasi sebagai argumen.
rxGetComputeContext / rxSetComputeContext Mendapatkan atau mengatur konteks komputasi aktif.
RxSqlServerData Buat objek data berdasarkan kueri atau tabel SQL Server.
RxOdbcData Buat sumber data berdasarkan koneksi ODBC.
RxXdfData Buat sumber data berdasarkan file XDF lokal. File XDF sering digunakan untuk membongkar data dalam memori ke disk. File XDF dapat berguna saat bekerja dengan lebih banyak data daripada yang dapat ditransfer dari database dalam satu batch, atau lebih banyak data daripada yang dapat pas dalam memori. Misalnya, jika Anda secara teratur memindahkan data dalam jumlah besar dari database ke stasiun kerja lokal, daripada mengkueri database berulang kali untuk setiap operasi R, Anda dapat menggunakan file XDF sebagai semacam cache untuk menyimpan data secara lokal lalu bekerja dengannya di ruang kerja R Anda.

Tip

Jika Anda baru mengetahui ide sumber data atau konteks komputasi, kami sarankan Anda memulai dengan artikel Komputasi terdistribusi.

Melakukan pernyataan DDL

Anda dapat menjalankan pernyataan DDL dari R, jika Anda memiliki izin yang diperlukan pada instans dan database. Fungsi berikut menggunakan panggilan ODBC untuk menjalankan pernyataan DDL atau mengambil skema database.

Fungsi Deskripsi
rxSqlServerTableExists dan rxSqlServerDropTable Letakkan tabel SQL Server, atau periksa keberadaan tabel atau objek database.
rxExecuteSQLDDL Jalankan perintah Data Definition Language (DDL) yang menentukan atau memanipulasi objek database. Fungsi ini tidak dapat mengembalikan data, dan hanya digunakan untuk mengambil atau mengubah skema objek atau metadata.

Manipulasi 2-Data (ETL)

Setelah membuat objek sumber data, Anda dapat menggunakan objek untuk memuat data ke dalamnya, mengubah data, atau menulis data baru ke tujuan yang ditentukan. Bergantung pada ukuran data di sumbernya, Anda juga dapat menentukan ukuran batch sebagai bagian dari sumber data dan memindahkan data dalam gugus.

Fungsi Deskripsi
rxOpen-methods Periksa apakah sumber data tersedia, buka atau tutup sumber data, baca data dari sumber, tulis data ke target, dan tutup sumber data.
rxImport Memindahkan data dari sumber data ke penyimpanan file atau ke bingkai data.
rxDataStep Mengubah data saat memindahkannya di antara sumber data.

Fungsi 3-Graphing

Nama fungsi Deskripsi
rxHistogram Membuat histogram dari data.
rxLinePlot Membuat plot baris dari data.
rxLorenz Menghitung kurva Lorenz, yang dapat diplot.
rxRocCurve Menghitung dan memplot kurva ROC dari data aktual dan yang diprediksi.

Statistik 4-Deskriptif

Nama fungsi Deskripsi
rxQuantile* Menghitung perkiraan kuantil untuk file .xdf dan bingkai data tanpa pengurutan.
rxSummary* Statistik ringkasan dasar data, termasuk komputasi menurut grup. Menulis berdasarkan komputasi grup ke file .xdf tidak didukung.
rxCrossTabs* Tabulasi silang data berbasis rumus.
rxCube* Tabulasi silang berbasis rumus alternatif yang dirancang untuk representasi yang efisien mengembalikan hasil kubus. Menulis output ke file .xdf tidak didukung.
rxMarginals Ringkasan marginal dari tabulasi silang.
as.xtabs Mengonversi hasil tabulasi silang menjadi objek xtabs.
rxChiSquaredTest Melakukan Tes Chi-kuadrat pada objek xtabs. Digunakan dengan himpunan data kecil dan tidak memotong data.
rxFisherTest Melakukan Tes Persis Fisher pada objek xtabs. Digunakan dengan himpunan data kecil dan tidak memotong data.
rxKendallCor Menghitung Koefisien Korelasi Peringkat Tau Kendall menggunakan objek xtabs.
rxPairwiseCrossTab Terapkan fungsi ke kombinasi berpasangan baris dan kolom objek xtabs.
rxRiskRatio Hitung risiko relatif pada objek xtabs dua per dua.
rxOddsRatio Hitung rasio peluang pada objek xtabs dua demi dua.

* Menandakan fungsi paling populer dalam kategori ini.

Fungsi 5-Prediksi

Nama fungsi Deskripsi
rxLinMod* Cocok dengan model linier ke data.
rxLogit* Cocok dengan model regresi logistik ke data.
rxGlm* Cocok dengan model linier umum ke data.
rxCovCor* Hitung kovarian, korelasi, atau jumlah matriks kuadrat/lintas produk untuk satu set variabel.
rxDTree* Cocok dengan klasifikasi atau pohon regresi dengan data.
rxBTrees* Cocok dengan forest keputusan klasifikasi atau regresi dengan data menggunakan algoritma peningkatan gradien stochastic.
rxDForest* Cocok dengan forest keputusan klasifikasi atau regresi dengan data.
rxPredict* Menghitung prediksi untuk model yang pas. Output harus berupa sumber data XDF.
rxKmeans* Melakukan pengklusteran k-means.
rxNaiveBayes* Melakukan klasifikasi Naive Bayes.
rxCov Hitung matriks kovarians untuk sekumpulan variabel.
rxCor Hitung matriks korelasi untuk sekumpulan variabel.
rxSSCP Hitung jumlah matriks kuadrat/lintas produk untuk satu set variabel.
rxRoc Komputasi Receiver Operating Characteristic (ROC) menggunakan nilai aktual dan prediksi dari sistem pengklasifikasi biner.

* Menandakan fungsi paling populer dalam kategori ini.

Cara bekerja dengan RevoScaleR

Fungsi dalam RevoScaleR dapat dipanggil dalam kode R yang dienkapsulasi dalam prosedur tersimpan. Sebagian besar pengembang membangun solusi RevoScaleR secara lokal, lalu memigrasikan kode R yang sudah selesai ke prosedur tersimpan sebagai latihan penyebaran.

Saat berjalan secara lokal, Anda biasanya menjalankan skrip R dari baris perintah, atau dari lingkungan pengembangan R, dan menentukan konteks komputasi SQL Server menggunakan salah satu fungsi RevoScaleR. Anda dapat menggunakan konteks komputasi jarak jauh untuk seluruh kode, atau untuk fungsi individual. Misalnya, Anda mungkin ingin membongkar pelatihan model ke server untuk menggunakan data terbaru dan menghindari pergerakan data.

Ketika Anda siap untuk merangkum skrip R di dalam prosedur tersimpan, sp_execute_external_script, sebaiknya tulis ulang kode sebagai fungsi tunggal yang memiliki input dan output yang ditentukan dengan jelas.

Lihat juga