Menginstal SQL Server 2019 Machine Learning Services (Python dan R) di Linux

Berlaku untuk: SQL Server 2019 (15.x) - Linux

Artikel ini memandu Anda dalam penginstalan SQL Server Machine Learning Services di Linux. Skrip Python dan R dapat dijalankan dalam database menggunakan Layanan Pembelajaran Mesin.

Anda dapat menginstal Layanan Pembelajaran Mesin di Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES), dan Ubuntu. Untuk informasi selengkapnya, lihat bagian Platform yang didukung di panduan Penginstalan untuk SQL Server di Linux.

Penting

Instruksi ini khusus untuk SQL Server 2019 (15.x). Untuk SQL Server 2022 (16.x), di mana langkah-langkah penginstalan berbeda, lihat Menginstal SQL Server 2022 Machine Learning Services (Python dan R) di Linux.

Daftar periksa pra-instal

  • Instal SQL Server di Linux dan verifikasi penginstalan.

  • Periksa repositori Linux SQL Server untuk ekstensi Python dan R. Jika Anda sudah mengonfigurasi repositori sumber untuk penginstalan mesin database, Anda dapat menjalankan perintah penginstalan paket mssql-mlservices menggunakan pendaftaran repositori yang sama.

  • (Khusus R) Microsoft R Open (MRO) menyediakan distribusi R dasar untuk fitur R di SQL Server dan merupakan prasyarat untuk menggunakan RevoScaleR, MicrosoftML, dan paket R lainnya yang diinstal dengan Layanan Pembelajaran Mesin.

    • Versi yang diperlukan adalah MRO 3.5.2.
    • Pilih dari dua pendekatan berikut untuk menginstal MRO:
      • Unduh tarball MRO dari MRAN, buka kemasannya, dan jalankan skrip install.sh. Anda dapat mengikuti instruksi penginstalan pada MRAN jika Anda menginginkan pendekatan ini.
      • Daftarkan repositori packages.microsoft.com seperti yang dijelaskan di bawah ini untuk menginstal distribusi MRO: microsoft-r-open-mro dan microsoft-r-open-mkl.
    • Lihat bagian penginstalan di bawah ini untuk cara menginstal MRO.
  • Anda harus memiliki alat untuk menjalankan perintah T-SQL.

    • Anda dapat menggunakan Azure Data Studio, alat database gratis yang berjalan di Linux, Windows, dan macOS.

Daftar paket

Pada perangkat yang terhubung ke internet, paket diunduh dan diinstal secara independen dari mesin database menggunakan alat penginstal paket untuk setiap sistem operasi. Tabel berikut menjelaskan semua paket yang tersedia, tetapi untuk R dan Python, Anda menentukan paket yang menyediakan penginstalan fitur lengkap atau penginstalan fitur minimum.

Paket penginstalan yang tersedia:

Nama paket Berlaku untuk Deskripsi
mssql-server-extensibility Semua Kerangka kerja ekstensibilitas yang digunakan untuk menjalankan Python dan R.
microsoft-openmpi Python, R Antarmuka penelusuran pesan yang digunakan oleh pustaka Rev* untuk paralelisasi di Linux.
mssql-mlservices-python Python Distribusi sumber terbuka Anaconda dan Python.
mssql-mlservices-mlm-py Python Penginstalan penuh. Menyediakan model yang dilatih sebelumnya, microsoftml, dan revoscalepy untuk fiturisasi gambar dan analisis sentimen teks.
mssql-mlservices-packages-py Python Penginstalan minimum. Menyediakan revoscalepy dan microsoftml.
Mengecualikan model yang telah dilatih sebelumnya.
microsoft-r-open* R Distribusi sumber terbuka R, terdiri dari tiga paket.
mssql-mlservices-mlm-r R Penginstalan penuh. Menyediakan: RevoScaleR, MicrosoftML, sqlRUtils, olapR, model yang telah dilatih sebelumnya untuk fiturisasi gambar dan analisis sentimen teks.
mssql-mlservices-packages-r R Penginstalan minimum. Menyediakan RevoScaleR, sqlRUtils, MicrosoftML, olapR.
Mengecualikan model yang telah dilatih sebelumnya.

Menginstal di RHEL

Ikuti langkah-langkah di bawah ini untuk menginstal SQL Server Machine Learning Services di Red Hat Enterprise Linux (RHEL).

Menginstal MRO di RHEL

Perintah berikut mendaftarkan repositori yang menyediakan MRO. Pasca-pendaftaran, perintah untuk menginstal paket R lainnya, seperti mssql-mlservices-mml-r, akan secara otomatis menyertakan MRO sebagai dependensi paket.

# Import the Microsoft repository key

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

# Set the location of the package repo at the "prod" directory
# The following command is for version 8.x
# To get the version for 6.x or 7.x, replace 8 with 6 or 7, respectively.
rpm -Uvh https://packages.microsoft.com/config/rhel/8/packages-microsoft-prod.rpm

# Update packages on your system (optional)
yum update

Opsi Penginstalan untuk Python dan R:

  • Instal dukungan bahasa berdasarkan kebutuhan Anda (satu atau beberapa bahasa).
  • Penginstalan lengkap menyediakan semua fitur yang tersedia termasuk model pembelajaran mesin yang telah dilatih sebelumnya.
  • Penginstalan minimal mengecualikan model tetapi masih memiliki semua fungsionalitas.

Tip

Jika memungkinkan, jalankan yum clean all untuk menyegarkan paket pada sistem sebelum penginstalan.

Penginstalan penuh

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Ekstensi (Python, R)
  • Pustaka pembelajaran mesin
  • Model Pra-Terlatih untuk Python dan R
# Install as root or sudo
# Add everything (all R, Python)
# Be sure to include -9.4.7* in mlsservices package names
sudo yum install mssql-mlservices-mlm-py-9.4.7*
sudo yum install mssql-mlservices-mlm-r-9.4.7*

Penginstalan minimum

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Pustaka Core Revo*
  • Pustaka pembelajaran mesin
# Install as root or sudo
# Minimum install of R, Python extensions
# Be sure to include -9.4.6* in mlsservices package names
sudo yum install mssql-mlservices-packages-py-9.4.7*
sudo yum install mssql-mlservices-packages-r-9.4.7*

Instal di Ubuntu

Ikuti langkah-langkah di bawah ini untuk menginstal SQL Server Machine Learning Services di Ubuntu.

Menginstal MRO di Ubuntu

Perintah berikut mendaftarkan repositori yang menyediakan MRO. Pasca-pendaftaran, perintah untuk menginstal paket R lainnya, seperti mssql-mlservices-mml-r, akan secara otomatis menyertakan MRO sebagai dependensi paket.

# Install as root
sudo su

# Optionally, if your system does not have the https apt transport option
apt-get install apt-transport-https

# Set the location of the package repo the "prod" directory containing the distribution.
# This example specifies 20.04. Replace with 16.04 or 14.04 if you want those versions.
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb

# Register the repo
dpkg -i packages-microsoft-prod.deb

# Update packages on your system (required), including MRO installation
sudo apt-get update

Opsi Penginstalan untuk Python dan R:

  • Instal dukungan bahasa berdasarkan kebutuhan Anda (satu atau beberapa bahasa).
  • Penginstalan lengkap menyediakan semua fitur yang tersedia termasuk model pembelajaran mesin yang telah dilatih sebelumnya.
  • Penginstalan minimal mengecualikan model tetapi masih memiliki semua fungsionalitas.

Tip

Jika memungkinkan, jalankan apt-get update untuk menyegarkan paket pada sistem sebelum penginstalan.

Penginstalan penuh

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Ekstensi Python
  • Ekstensi R
  • Pustaka pembelajaran mesin
  • Model yang telah dilatih sebelumnya untuk Python dan R
# Install as root or sudo
# Add everything (all R, Python)
# There is no asterisk in this full install
sudo apt-get install mssql-mlservices-mlm-py 
sudo apt-get install mssql-mlservices-mlm-r 

Penginstalan minimum

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Pustaka Core Revo*
  • Pustaka pembelajaran mesin
# Install as root or sudo
# Minimum install of R, Python
# No asterisk
sudo apt-get install mssql-mlservices-packages-py
sudo apt-get install mssql-mlservices-packages-r

Instal di SLES

Ikuti langkah-langkah di bawah ini untuk menginstal SQL Server Machine Learning Services di SUSE Linux Enterprise Server (SLES).

Menginstal MRO di SLES

Perintah berikut mendaftarkan repositori yang menyediakan MRO. Pasca-pendaftaran, perintah untuk menginstal paket R lainnya, seperti mssql-mlservices-mml-r, akan secara otomatis menyertakan MRO sebagai dependensi paket.

# Install as root
sudo su

# Set the location of the package repo at the "prod" directory containing the distribution
# This example is for SLES12
zypper ar -f https://packages.microsoft.com/sles/12/prod packages-microsoft-com

# Update packages on your system (optional)
zypper update

Opsi Penginstalan untuk Python dan R:

  • Instal dukungan bahasa berdasarkan kebutuhan Anda (satu atau beberapa bahasa).
  • Penginstalan lengkap menyediakan semua fitur yang tersedia termasuk model pembelajaran mesin yang telah dilatih sebelumnya.
  • Penginstalan minimal mengecualikan model tetapi masih memiliki semua fungsionalitas.

Penginstalan penuh

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Ekstensi untuk Python dan R
  • Pustaka pembelajaran mesin
  • Model yang telah dilatih sebelumnya untuk Python dan R
# Install as root or sudo
# Add everything (all R, Python)
sudo zypper install mssql-mlservices-mlm-py
sudo zypper install mssql-mlservices-mlm-r

Penginstalan minimum

Termasuk:

  • Python sumber terbuka
  • Sumber terbuka R
  • Kerangka kerja ekstensibilitas
  • Microsoft-openmpi
  • Pustaka Core Revo*
  • Pustaka pembelajaran mesin
# Install as root or sudo
# Minimum install of R, Python extensions
sudo zypper install mssql-mlservices-packages-py
sudo zypper install mssql-mlservices-packages-r

Konfigurasi pasca-instal (diperlukan)

Konfigurasi tambahan terutama melalui alat mssql-conf.

  1. Setelah penginstalan paket selesai, jalankan penyiapan mssql-conf dan ikuti perintah untuk mengatur kata sandi SA dan pilih edisi Anda. Lakukan langkah ini hanya jika Anda belum mengonfigurasi SQL Server di Linux.

    sudo /opt/mssql/bin/mssql-conf setup
    
  2. Terima perjanjian lisensi untuk ekstensi Python dan R sumber terbuka. Gunakan perintah berikut:

    # Run as SUDO or root
    # Use set + EULA 
    sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
    

    Penyiapan mendeteksi paket mssql-mlservices dan meminta penerimaan EULA (jika sebelumnya tidak diterima) saat mssql-conf setup dijalankan. Untuk informasi selengkapnya tentang parameter EULA, lihat Mengonfigurasi SQL Server dengan alat mssql-conf.

  3. Aktifkan akses jaringan keluar. Akses jaringan keluar dinonaktifkan secara default. Untuk mengaktifkan permintaan keluar, atur properti Boolean "outboundnetworkaccess" menggunakan alat mssql-conf. Untuk informasi selengkapnya, lihat Mengonfigurasi SQL Server di Linux dengan mssql-conf.

    # Run as SUDO or root
    # Enable outbound requests over the network
    sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1
    
  4. Hanya untuk integrasi fitur R, atur variabel lingkungan MKL_CBWR untuk memastikan output yang konsisten dari perhitungan Intel Math Kernel Library (MKL).

    • Edit atau buat file .bash_profile di direktori beranda pengguna Anda, menambahkan baris export MKL_CBWR="AUTO" ke file.

    • Jalankan file ini dengan mengetik source .bash_profile pada prompt perintah bash.

  5. Mulai ulang layanan SQL Server Launchpad dan instans mesin database untuk membaca nilai yang diperbarui dari file INI. Pesan pemberitahuan ditampilkan saat pengaturan terkait ekstensibilitas dimodifikasi.

    systemctl restart mssql-launchpadd
    
    systemctl restart mssql-server.service
    
  6. Aktifkan eksekusi skrip eksternal menggunakan Azure Data Studio atau alat lain seperti SQL Server Management Studio (khusus Windows) yang menjalankan Transact-SQL.

    EXEC sp_configure 'external scripts enabled', 1 
    RECONFIGURE WITH OVERRIDE 
    
  7. Mulai ulang layanan Launchpad lagi.

Verifikasi penginstalan

Pustaka R (MicrosoftML, RevoScaleR, dan lainnya) dapat ditemukan di /opt/mssql/mlservices/libraries/RServer.

Pustaka Python (microsoftml dan revoscalepy) dapat ditemukan di /opt/mssql/mlservices/libraries/PythonServer.

Untuk memvalidasi penginstalan:

  • Jalankan skrip T-SQL yang menjalankan prosedur tersimpan sistem yang memanggil Python atau R menggunakan alat kueri.

  • Jalankan perintah SQL berikut untuk menguji eksekusi R di SQL Server. Kesalahan? Coba mulai ulang layanan, sudo systemctl restart mssql-server.service.

    EXEC sp_execute_external_script   
    @language =N'R', 
    @script=N' 
    OutputDataSet <- InputDataSet', 
    @input_data_1 =N'SELECT 1 AS hello' 
    WITH RESULT SETS (([hello] int not null)); 
    GO 
    
  • Jalankan perintah SQL berikut untuk menguji eksekusi Python di SQL Server.

    EXEC sp_execute_external_script  
    @language =N'Python', 
    @script=N' 
    OutputDataSet = InputDataSet; 
    ', 
    @input_data_1 =N'SELECT 1 AS hello' 
    WITH RESULT SETS (([hello] int not null)); 
    GO 
    

Penginstalan tanpa pengawasan

Menggunakan penginstalan tanpa pengawas untuk Mesin Database, tambahkan paket untuk mssql-mlservices dan EULAs.

Gunakan salah satu parameter EULA khusus mlservices untuk distribusi R dan Python sumber terbuka:

sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml

EULA lengkap di dokumentasikan di Mengonfigurasi SQL Server di Linux dengan alat mssql-conf.

Penginstalan offline

Ikuti petunjuk penginstalan Offline untuk langkah-langkah penginstalan paket. Temukan situs unduhan Anda, lalu unduh paket tertentu menggunakan daftar paket di bawah ini.

Tip

Beberapa alat manajemen paket menyediakan perintah yang dapat membantu Anda menentukan dependensi paket. Untuk yum, gunakan sudo yum deplist [package]. Untuk Ubuntu, gunakan sudo apt-get install --reinstall --download-only [package name] diikuti oleh dpkg -I [package name].deb.

Unduh situs

Unduh paket dari https://packages.microsoft.com/. Semua paket mlservices untuk Python dan R dikolokasikan dengan paket mesin database. Versi dasar untuk paket mlservices adalah 9.4.6. Ingat bahwa paket microsoft-r-open berada di repositori yang berbeda.

Jalur RHEL/8

Paket Lokasi pengunduhan
Paket mssql/mlservices https://packages.microsoft.com/rhel/8/mssql-server-2019/
paket microsoft-r-open https://packages.microsoft.com/rhel/8/prod/

Jalur Ubuntu/20.04

Paket Lokasi pengunduhan
Paket mssql/mlservices https://packages.microsoft.com/ubuntu/20.04/mssql-server-2019/pool/main/m/
paket microsoft-r-open https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/

Jalur SLES/12

Paket Lokasi unduhan
Paket mssql/mlservices https://packages.microsoft.com/sles/12/mssql-server-2019/
paket microsoft-r-open https://packages.microsoft.com/sles/12/prod/

Pilih ekstensi yang ingin Anda gunakan dan unduh paket yang diperlukan untuk bahasa tertentu. Nama file menyertakan informasi platform dalam akhiran.

Daftar paket

Bergantung pada ekstensi mana yang ingin Anda gunakan, unduh paket yang diperlukan untuk bahasa tertentu. Nama file yang tepat mencakup informasi platform dalam akhiran, tetapi nama file di bawah ini harus cukup dekat bagi Anda untuk menentukan file mana yang akan didapatkan.

# Core packages 
mssql-server-15.0.1000
mssql-server-extensibility-15.0.1000

# R
microsoft-openmpi-3.0.0
microsoft-r-open-mkl-3.5.2
microsoft-r-open-mro-3.5.2
mssql-mlservices-packages-r-9.4.7.64
mssql-mlservices-mlm-r-9.4.7.64


# Python
microsoft-openmpi-3.0.0
mssql-mlservices-python-9.4.7.64
mssql-mlservices-packages-py-9.4.7.64
mssql-mlservices-mlm-py-9.4.7.64

Langkah berikutnya

Pengembang Python dapat mempelajari cara menggunakan Python dengan SQL Server dengan mengikuti tutorial berikut:

Pengembang R dapat memulai dengan beberapa contoh sederhana, dan mempelajari dasar-dasar cara kerja R dengan SQL Server. Untuk langkah Anda berikutnya, lihat tautan berikut ini: