Bagikan melalui


Menginstal runtime kustom R untuk SQL Server

Berlaku untuk: SQL Server 2019 (15.x)

Pelajari cara menginstal runtime kustom R untuk menjalankan skrip R eksternal dengan SQL Server pada:

  • Windows
  • Ubuntu Linux
  • Red Hat Enterprise Linux (RHEL)
  • SUSE Linux Enterprise Server (SLES) versi 12

Runtime kustom dapat menjalankan skrip pembelajaran mesin dan menggunakan Ekstensi Bahasa SQL Server.

Gunakan versi runtime R Anda sendiri dengan SQL Server, alih-alih versi runtime default yang diinstal dengan SQL Server Pembelajaran Mesin Services.

Dimulai dengan SQL Server 2022 (16.x), runtime untuk R, Python, dan Java, tidak lagi diinstal dengan Penyiapan SQL. Sebagai gantinya, instal runtime dan paket kustom R yang Anda inginkan. Untuk informasi selengkapnya, lihat Menginstal SQL Server 2022 Pembelajaran Mesin Services (Python dan R) di Windows atau Menginstal SQL Server Pembelajaran Mesin Services (Python dan R) di Linux.

Prasyarat

Sebelum menginstal runtime kustom R, instal yang berikut ini:

Menginstal Ekstensi Bahasa

Catatan

Jika Anda telah menginstal Layanan Pembelajaran Mesin di SQL Server 2019, Ekstensi Bahasa sudah diinstal dan Anda dapat melewati langkah ini.

Ikuti langkah-langkah di bawah ini untuk menginstal Ekstensi Bahasa SQL Server, yang digunakan untuk runtime kustom R.

  1. Mulai wizard penyetelan untuk SQL Server 2019.

  2. Pada tab Penginstalan , pilih Penginstalan mandiri SQL Server baru atau tambahkan fitur ke penginstalan yang sudah ada.

  3. Pada halaman Pilihan Fitur, pilih opsi ini:

    • Layanan Mesin Database

      Untuk menggunakan Ekstensi Bahasa dengan SQL Server, Anda harus menginstal instans mesin database. Anda dapat menggunakan instans baru atau yang sudah ada.

    • Layanan Pembelajaran Mesin dan Ekstensi Bahasa

      Pilih Layanan Pembelajaran Mesin dan Ekstensi Bahasa. Jangan pilih R, karena Anda akan menginstal runtime R kustom nanti.

      Penyiapan Ekstensi Bahasa SQL Server 2019.

  4. Pada halaman Siap Diinstal , verifikasi bahwa pilihan ini disertakan, dan pilih Instal.

    • Mengelola Database Engine Services
    • Layanan Pembelajaran Mesin dan Ekstensi Bahasa
  5. Setelah penyiapan selesai, hidupkan ulang komputer jika Anda diminta untuk melakukannya.

Penting

Jika Anda menginstal instans baru SQL Server 2019 dengan Ekstensi Bahasa, instal Pembaruan Kumulatif (CU) 3 atau yang lebih baru sebelum Anda melanjutkan ke langkah berikutnya.

Menginstal R

Unduh dan instal versi R yang akan Anda gunakan sebagai runtime kustom. R versi 3.3 atau yang lebih baru didukung.

  1. Unduh R versi 3.3 atau yang lebih baru.

  2. Jalankan penyiapan R.

  3. Perhatikan jalur tempat R diinstal. Misalnya, dalam artikel ini adalah C:\Program Files\R\R-4.0.3.

    Penyiapan R

Memperbarui variabel lingkungan sistem

Ikuti langkah-langkah ini untuk mengubah variabel lingkungan sistem PATH .

  1. Dalam kotak pencarian Windows, cari Edit variabel lingkungan sistem dan buka.

  2. Di bawah Tingkat Lanjut, pilih Variabel Lingkungan.

  3. Ubah variabel lingkungan sistem PATH.

    Pilih PATH dan klik Edit.

    Pilih Baru dan tambahkan jalur ke \bin\x64 folder di jalur penginstalan R Anda. Contohnya,C:\Program Files\R\R-4.0.3\bin\x64.

Menginstal paket Rcpp

Ikuti langkah-langkah ini untuk menginstal paket Rcpp .

  1. Mulai prompt perintah yang ditinggikan (jalankan sebagai Administrator).

  2. Mulai R dari prompt perintah. Jalankan \bin\R.exe di folder di jalur penginstalan R Anda. Contohnya,C:\Program Files\R\R-4.0.3\bin\R.exe.

    "C:\Program Files\R\R-4.0.3\bin\R.exe"
    
  3. Jalankan skrip berikut untuk menginstal paket Rcpp di \library folder di jalur penginstalan R Anda. Contohnya,C:\Program Files\R\R-4.0.3\library.

    install.packages("Rcpp", lib="C:\\Program Files\\R\\R-4.0.3\\library");
    

Memberikan akses ke folder R

Catatan

Jika Anda telah menginstal R di lokasi C:\Program Files\R\R-version default (misalnya, C:\Program Files\R\R-4.0.3), Anda dapat melewati langkah ini.

Jalankan perintah icacls berikut dari prompt perintah baru yang ditingkatkan untuk memberikan akses READ & EXECUTE ke nama pengguna SQL Server Launchpad Service dan SID S-1-15-2-1 (SEMUA PAKET APLIKASI). Nama pengguna layanan launchpad adalah formulir NT Service\MSSQLLAUNCHPAD$INSTANCENAME di mana INSTANCENAME adalah nama instans SQL Server Anda.

Perintah akan secara rekursif memberikan akses ke semua file dan folder di bawah jalur direktori yang diberikan.

  1. Berikan izin ke nama pengguna SQL Server Launchpad Service ke jalur penginstalan R Anda. Contohnya,C:\Program Files\R\R-4.0.3.

    icacls "C:\Program Files\R\R-4.0.3" /grant "NT Service\MSSQLLAUNCHPAD":(OI)(CI)RX /T
    

    Untuk instans bernama, perintahnya adalah icacls "C:\Program Files\R\R-4.0.3" /grant "NT Service\MSSQLLAUNCHPAD$SQL01":(OI)(CI)RX /T untuk instans yang disebut SQL01.

  2. Berikan izin ke SID S-1-15-2-1 ke jalur penginstalan R Anda. Contohnya,C:\Program Files\R\R-4.0.3.

    icacls "C:\Program Files\R\R-4.0.3" /grant *S-1-15-2-1:(OI)(CI)RX /T
    

    Perintah sebelumnya memberikan izin ke komputer SID S-1-15-2-1, yang setara dengan SEMUA PAKET APLIKASI pada Windows versi bahasa Inggris. Atau, Anda dapat menggunakan icacls "C:\Program Files\R\R-4.0.3" /grant "ALL APPLICATION PACKAGES":(OI)(CI)RX /T windows versi bahasa Inggris.

Mulai ulang Launchpad SQL Server

Ikuti langkah-langkah ini untuk memulai ulang layanan Launchpad SQL Server.

  1. Buka Pengelola Konfigurasi SQL Server.

  2. Di bawah SQL Server Services, klik kanan pada SQL Server Launchpad (MSSQLSERVER) dan pilih Mulai Ulang. Jika Anda menggunakan instans bernama, nama instans akan ditampilkan alih-alih (MSSQLSERVER).

Mendaftarkan ekstensi bahasa

Ikuti langkah-langkah ini untuk mengunduh dan mendaftarkan ekstensi bahasa R, yang digunakan untuk runtime kustom R.

  1. Unduh file R-lang-extension-windows-release.zip dari repositori GitHub Ekstensi Bahasa SQL Server.

    Atau, Anda dapat menggunakan versi debug (R-lang-extension-windows-debug.zip) di lingkungan pengembangan atau pengujian. Versi debug menyediakan informasi pengelogan verbose untuk menyelidiki kesalahan apa pun, dan tidak disarankan untuk lingkungan produksi.

  2. Gunakan Azure Data Studio untuk menyambungkan ke instans SQL Server Anda dan jalankan perintah T-SQL berikut untuk mendaftarkan ekstensi bahasa R dengan CREATE EXTERNAL LANGUAGE.

    Ubah jalur dalam pernyataan ini untuk mencerminkan lokasi file zip ekstensi bahasa yang diunduh (R-lang-extension-windows-release.zip) dan lokasi penginstalan R Anda (C:\\Program Files\\R\\R-4.0.3).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'C:\path\to\R-lang-extension-windows-release.zip', 
        FILE_NAME = 'libRExtension.dll',
        ENVIRONMENT_VARIABLES = N'{"R_HOME": "C:\\Program Files\\R\\R-4.0.3"}');
    GO
    

    Jalankan pernyataan untuk setiap database tempat Anda ingin menggunakan ekstensi bahasa R.

    Catatan

    R adalah kata yang dicadangkan dan tidak dapat digunakan sebagai nama untuk nama bahasa eksternal baru. Gunakan nama yang berbeda sebagai gantinya. Misalnya, pernyataan di atas menggunakan myR.

Prasyarat

Sebelum menginstal runtime R kustom, instal prasyarat berikut:

Menginstal Ekstensi Bahasa

Catatan

Jika Anda memiliki Layanan Pembelajaran Mesin yang terinstal di SQL Server 2019, paket mssql-server-extensibility untuk Ekstensi Bahasa sudah diinstal dan Anda dapat melewati langkah ini.

Jalankan perintah di bawah ini untuk menginstal Ekstensi Bahasa SQL Server di Ubuntu Linux, yang digunakan untuk runtime kustom R.

  1. Jika memungkinkan, jalankan perintah ini untuk menyegarkan paket pada sistem sebelum penginstalan.

    # Install as root or sudo
    sudo apt-get update
    
  2. Instal mssql-server-extensibility dengan perintah ini.

    # Install as root or sudo
    sudo apt-get install mssql-server-extensibility
    

Menginstal R

  1. Jika Anda telah menginstal Layanan Pembelajaran Mesin, R sudah diinstal di /opt/microsoft/ropen/3.5.2/lib64/R. Jika Anda ingin terus menggunakan jalur ini sebagai R_HOME, Anda dapat melewati langkah ini.

    Jika Anda ingin menggunakan runtime R yang berbeda, Pertama-tama Anda perlu menghapus microsoft-r-open-mro sebelum terus menginstal versi baru.

    sudo apt remove microsoft-r-open-mro-3.5.2
    
  2. Instal R (3.3 atau yang lebih baru) untuk Ubuntu. Secara default, R diinstal di /usr/lib/R. Jalur ini adalah R_HOME Anda. Jika Anda menginstal R di lokasi lain, perhatikan jalur tersebut sebagai R_HOME Anda.

    Di bawah ini adalah contoh instruksi untuk Ubuntu. Ubah URL repositori di bawah ini untuk versi R Anda.

    export DEBIAN_FRONTEND=noninteractive
    sudo apt-get update
    sudo apt-get --no-install-recommends -y install curl zip unzip apt-transport-https libstdc++6
    
    # Add R CRAN repository. This repository works for R 4.0.x.
    #
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
    sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu xenial-cran40/'
    sudo apt-get update
    
    # Install R runtime.
    #
    sudo apt-get -y install r-base-core
    

Penginstalan kustom R

Catatan

Jika Anda telah menginstal R di lokasi default /usr/lib/R, Anda dapat melewati bagian ini dan melanjutkan ke bagian Instal paket Rcpp.

Memperbarui variabel lingkungan

Pertama, edit layanan mssql-launchpadd untuk menambahkan variabel lingkungan R_HOME ke file /etc/systemd/system/mssql-launchpadd.service.d/override.conf

  1. Buka file dengan systemctl

    sudo systemctl edit mssql-launchpadd
    
  2. Sisipkan teks berikut dalam /etc/systemd/system/mssql-launchpadd.service.d/override.conf file yang terbuka. Atur nilai R_HOME ke jalur penginstalan R kustom.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Simpan dan tutup.

Selanjutnya, pastikan libR.so dapat dimuat.

  1. Buat file custom-r.conf di /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. Dalam file yang terbuka, tambahkan jalur ke libR.so dari penginstalan R kustom.

    <path to the R lib>
    
  3. Simpan file baru dan tutup editor.

  4. Jalankan ldconfig dan verifikasi libR.so dapat dimuat dengan menjalankan perintah berikut dan memeriksa apakah semua pustaka dependen dapat ditemukan.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Memberikan akses ke folder penginstalan R kustom

Atur datadirectories opsi di bagian /var/opt/mssql/mssql.conf ekstensibilitas file ke penginstalan R kustom.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Mulai ulang layanan mssql-launchpadd

Jalankan perintah berikut untuk memulai ulang mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Menginstal paket Rcpp

Ikuti langkah-langkah ini untuk menginstal paket Rcpp .

  1. Mulai R dari shell:

    sudo ${R_HOME}/bin/R
    
  2. Jalankan skrip berikut untuk menginstal paket Rcpp di folder ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Mendaftarkan ekstensi bahasa

Ikuti langkah-langkah ini untuk mengunduh dan mendaftarkan ekstensi bahasa R, yang digunakan untuk runtime kustom R.

  1. Unduh file R-lang-extension-linux-release.zip dari repositori GitHub Ekstensi Bahasa SQL Server.

    Atau, Anda dapat menggunakan versi debug (R-lang-extension-linux-debug.zip) di lingkungan pengembangan atau pengujian. Versi debug menyediakan informasi pengelogan verbose untuk menyelidiki kesalahan apa pun, dan tidak disarankan untuk lingkungan produksi.

  2. Gunakan Azure Data Studio untuk menyambungkan ke instans SQL Server Anda dan jalankan perintah T-SQL berikut untuk mendaftarkan ekstensi bahasa R dengan CREATE EXTERNAL LANGUAGE.

    Ubah jalur dalam pernyataan ini untuk mencerminkan lokasi file zip ekstensi bahasa yang diunduh (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Jalankan pernyataan untuk setiap database tempat Anda ingin menggunakan ekstensi bahasa R.

    Catatan

    R adalah kata yang dicadangkan dan tidak dapat digunakan sebagai nama untuk nama bahasa eksternal baru. Gunakan nama yang berbeda sebagai gantinya. Misalnya, pernyataan di atas menggunakan myR.

Prasyarat

Sebelum menginstal runtime R kustom, instal prasyarat berikut:

  • RExtension memerlukan GLIBCXX_3.4.20. Pastikan versi libstdc++.so.6 pada instalasi Red Hat Enterprise Linux (RHEL) Anda menyediakan ini.

Menginstal Ekstensi Bahasa

Catatan

Jika Anda memiliki Layanan Pembelajaran Mesin yang terinstal di SQL Server 2019, paket mssql-server-extensibility untuk Ekstensi Bahasa sudah diinstal dan Anda dapat melewati langkah ini.

Jalankan perintah di bawah ini untuk menginstal Ekstensi Bahasa SQL Server di Red Hat Enterprise Linux (RHEL), yang digunakan untuk runtime kustom R.

# Install as root or sudo
sudo yum install mssql-server-extensibility

Menginstal R

  1. Jika Anda telah menginstal Layanan Pembelajaran Mesin, R sudah diinstal di /opt/microsoft/ropen/3.5.2/lib64/R. Jika Anda ingin terus menggunakan jalur ini sebagai R_HOME, Anda dapat melewati langkah ini.

    Jika Anda ingin menggunakan runtime R yang berbeda, Pertama-tama Anda perlu menghapus microsoft-r-open-mro sebelum terus menginstal versi baru.

    sudo yum erase microsoft-r-open-mro-3.5.2
    
  2. Instal R (3.3 atau yang lebih baru) untuk Red Hat Enterprise Linux (RHEL). Secara default, R diinstal di /usr/lib64/R. Jalur ini adalah R_HOME Anda. Jika Anda menginstal R di lokasi lain, perhatikan jalur tersebut sebagai R_HOME Anda.

    sudo yum install -y R
    

Penginstalan kustom R

Catatan

Jika Anda telah menginstal R di lokasi default /usr/lib/R, Anda dapat melewati bagian ini dan melanjutkan ke bagian Instal paket Rcpp.

Memperbarui variabel lingkungan

Pertama, edit layanan mssql-launchpadd untuk menambahkan variabel lingkungan R_HOME ke file /etc/systemd/system/mssql-launchpadd.service.d/override.conf

  1. Buka file dengan systemctl

    sudo systemctl edit mssql-launchpadd
    
  2. Sisipkan teks berikut dalam /etc/systemd/system/mssql-launchpadd.service.d/override.conf file yang terbuka. Atur nilai R_HOME ke jalur penginstalan R kustom.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Simpan dan tutup.

Selanjutnya, pastikan libR.so dapat dimuat.

  1. Buat file custom-r.conf di /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. Dalam file yang terbuka, tambahkan jalur ke libR.so dari penginstalan R kustom.

    <path to the R lib>
    
  3. Simpan file baru dan tutup editor.

  4. Jalankan ldconfig dan verifikasi libR.so dapat dimuat dengan menjalankan perintah berikut dan memeriksa apakah semua pustaka dependen dapat ditemukan.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Memberikan akses ke folder penginstalan R kustom

Atur datadirectories opsi di bagian /var/opt/mssql/mssql.conf ekstensibilitas file ke penginstalan R kustom.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Mulai ulang layanan mssql-launchpadd

Jalankan perintah berikut untuk memulai ulang mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Menginstal paket Rcpp

Ikuti langkah-langkah ini untuk menginstal paket Rcpp .

  1. Mulai R dari shell:

    sudo ${R_HOME}/bin/R
    
  2. Jalankan skrip berikut untuk menginstal paket Rcpp di folder ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Mendaftarkan ekstensi bahasa

Ikuti langkah-langkah ini untuk mengunduh dan mendaftarkan ekstensi bahasa R, yang digunakan untuk runtime kustom R.

  1. Unduh file R-lang-extension-linux-release.zip dari repositori GitHub Ekstensi Bahasa SQL Server.

    Atau, Anda dapat menggunakan versi debug (R-lang-extension-linux-debug.zip) di lingkungan pengembangan atau pengujian. Versi debug menyediakan informasi pengelogan verbose untuk menyelidiki kesalahan apa pun, dan tidak disarankan untuk lingkungan produksi.

  2. Gunakan Azure Data Studio untuk menyambungkan ke instans SQL Server Anda dan jalankan perintah T-SQL berikut untuk mendaftarkan ekstensi bahasa R dengan CREATE EXTERNAL LANGUAGE.

    Ubah jalur dalam pernyataan ini untuk mencerminkan lokasi file zip ekstensi bahasa yang diunduh (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Jalankan pernyataan untuk setiap database tempat Anda ingin menggunakan ekstensi bahasa R.

    Catatan

    R adalah kata yang dicadangkan dan tidak dapat digunakan sebagai nama untuk nama bahasa eksternal baru. Gunakan nama yang berbeda sebagai gantinya. Misalnya, pernyataan di atas menggunakan myR.

Prasyarat

Sebelum menginstal runtime R kustom, instal prasyarat berikut:

Menginstal Ekstensi Bahasa

Catatan

Jika Anda memiliki Layanan Pembelajaran Mesin yang terinstal di SQL Server 2019, paket mssql-server-extensibility untuk Ekstensi Bahasa sudah diinstal dan Anda dapat melewati langkah ini.

Jalankan perintah di bawah ini untuk menginstal Ekstensi Bahasa SQL Server di SUSE Linux Enterprise Server (SLES), yang digunakan untuk runtime kustom R.

# Install as root or sudo
sudo zypper install mssql-server-extensibility

Menginstal R

  1. Jika Anda telah menginstal Layanan Pembelajaran Mesin, R sudah diinstal di /opt/microsoft/ropen/3.5.2/lib64/R. Jika Anda ingin terus menggunakan jalur ini sebagai R_HOME, Anda dapat melewati langkah ini.

    Jika Anda ingin menggunakan runtime R yang berbeda, Pertama-tama Anda perlu menghapus microsoft-r-open-mro sebelum terus menginstal versi baru.

    sudo zypper remove microsoft-r-open-mro-3.4.4
    
  2. Instal R (3.3 atau yang lebih baru) untuk SUSE Linux Enterprise Server (SLES). Secara default, R diinstal di /usr/lib64/R. Jalur ini adalah R_HOME Anda. Jika Anda menginstal R di lokasi lain, perhatikan jalur tersebut sebagai R_HOME Anda.

    Ikuti langkah-langkah berikut untuk menginstal R:

    sudo zypper ar -f http://download.opensuse.org/repositories/devel:/languages:/R:/patched/openSUSE_12.3/ R-patched
    sudo zypper --gpg-auto-import-keys ref
    sudo zypper install R-core-libs R-core R-core-doc R-patched
    

    Anda dapat mengabaikan peringatan untuk R-tcltk-3.6.1, kecuali Anda memerlukan paket ini.

Instal gcc-c++

Instal gcc-c++ di SUSE Linux Enterprise Server (SLES). Ini digunakan untuk Rcpp, yang diinstal nanti.

sudo zypper install gcc-c++

Penginstalan kustom R

Catatan

Jika Anda telah menginstal R di lokasi default /usr/lib/R, Anda dapat melewati bagian ini dan melanjutkan ke bagian Instal paket Rcpp.

Memperbarui variabel lingkungan

Pertama, edit layanan mssql-launchpadd untuk menambahkan variabel lingkungan R_HOME ke file /etc/systemd/system/mssql-launchpadd.service.d/override.conf

  1. Buka file dengan systemctl

    sudo systemctl edit mssql-launchpadd
    
  2. Sisipkan teks berikut dalam /etc/systemd/system/mssql-launchpadd.service.d/override.conf file yang terbuka. Atur nilai R_HOME ke jalur penginstalan R kustom.

    [Service]
    Environment="R_HOME=<path to R>"
    
  3. Simpan dan tutup.

Selanjutnya, pastikan libR.so dapat dimuat.

  1. Buat file custom-r.conf di /etc/ld.so.conf.d.

    sudo vi /etc/ld.so.conf.d/custom-r.conf
    
  2. Dalam file yang terbuka, tambahkan jalur ke libR.so dari penginstalan R kustom.

    <path to the R lib>
    
  3. Simpan file baru dan tutup editor.

  4. Jalankan ldconfig dan verifikasi libR.so dapat dimuat dengan menjalankan perintah berikut dan memeriksa apakah semua pustaka dependen dapat ditemukan.

    sudo ldconfig
    ldd <path to the R lib>/libR.so
    

Memberikan akses ke folder penginstalan R kustom

Atur datadirectories opsi di bagian /var/opt/mssql/mssql.conf ekstensibilitas file ke penginstalan R kustom.

sudo /opt/mssql/bin/mssql-conf set extensibility.datadirectories <path to R>

Mulai ulang layanan mssql-launchpadd

Jalankan perintah berikut untuk memulai ulang mssql-launchpadd.

sudo systemctl restart mssql-launchpadd

Menginstal paket Rcpp

Ikuti langkah-langkah ini untuk menginstal paket Rcpp .

  1. Mulai R dari shell:

    sudo ${R_HOME}/bin/R
    
  2. Jalankan skrip berikut untuk menginstal paket Rcpp di folder ${R_HOME}\library.

install.packages("Rcpp", lib = "${R_HOME}/library");

Mendaftarkan ekstensi bahasa

Ikuti langkah-langkah ini untuk mengunduh dan mendaftarkan ekstensi bahasa R, yang digunakan untuk runtime kustom R.

  1. Unduh file R-lang-extension-linux-release.zip dari repositori GitHub Ekstensi Bahasa SQL Server.

    Atau, Anda dapat menggunakan versi debug (R-lang-extension-linux-debug.zip) di lingkungan pengembangan atau pengujian. Versi debug menyediakan informasi pengelogan verbose untuk menyelidiki kesalahan apa pun, dan tidak disarankan untuk lingkungan produksi.

  2. Gunakan Azure Data Studio untuk menyambungkan ke instans SQL Server Anda dan jalankan perintah T-SQL berikut untuk mendaftarkan ekstensi bahasa R dengan CREATE EXTERNAL LANGUAGE.

    Ubah jalur dalam pernyataan ini untuk mencerminkan lokasi file zip ekstensi bahasa yang diunduh (R-lang-extension-linux-release.zip).

    CREATE EXTERNAL LANGUAGE [myR]
    FROM (CONTENT = N'/path/to/R-lang-extension-linux-release.zip', FILE_NAME = 'libRExtension.so.1.1');
    GO
    

    Jalankan pernyataan untuk setiap database tempat Anda ingin menggunakan ekstensi bahasa R.

    Catatan

    R adalah kata yang dicadangkan dan tidak dapat digunakan sebagai nama untuk nama bahasa eksternal baru. Gunakan nama yang berbeda sebagai gantinya. Misalnya, pernyataan di atas menggunakan myR.

Aktifkan skrip eksternal

Anda dapat menjalankan skrip eksternal R dengan prosedur tersimpan sp_execute_external skrip.

Untuk mengaktifkan skrip eksternal, gunakan Azure Data Studio untuk menjalankan pernyataan di bawah ini.

sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;  

Verifikasi penginstalan

Gunakan skrip SQL berikut untuk memverifikasi penginstalan dan fungsionalitas runtime kustom R. Dalam contoh skrip di bawah ini, myR digunakan sebagai nama bahasa karena nama R bahasa default tidak dapat disediakan untuk runtime kustom.

EXEC sp_execute_external_script
    @language =N'myR',
    @script=N'
print(R.home());
print(file.path(R.home("bin"), "R"));
print(R.version);
print("Hello RExtension!");'

Masalah umum

Jika Anda menggunakan runtime R yang disediakan sebagai bagian dari SQL Server Pembelajaran Mesin Services dengan mengatur R_HOME ke C:\Program Files\Microsoft SQL Server\MSSQL15.<INSTANCE_NAME>\R_SERVICES saat Anda mendaftarkan ekstensi bahasa, Anda mungkin mengalami kesalahan berikut saat menjalankan skrip R kustom eksternal dengan skrip sp_execute_external.

Kesalahan: memori kontra habis (batas tercapai?)

Untuk mengatasi masalah ini:

  1. Atur variabel R_NSIZE lingkungan yang menunjukkan jumlah objek berukuran tetap (cons cells) ke nilai yang wajar, misalnya, 200000.
  2. Mulai ulang layanan Launchpad dan coba lagi eksekusi skrip.

Masalah umum

Jika libstdc++.so.6 bukan versi yang benar, Anda akan melihat kesalahan ini:

Exthost: Ekstensi beban gagal /lib64/libstdc++.so.6: versi 'GLIBCXX_3.4.20' tidak ditemukan (diperlukan oleh /home/mssql_satellite/externallanguagessandboxpath/libRExtension.so.1.1)

Langkah berikutnya