Aracılığıyla paylaş


Linux'a SQL Server 2022 Machine Learning Services (Python ve R) yükleme

Şunlar için geçerlidir: Linux üzerinde SQL Server 2022 (16.x)

Bu makale, Linux'ta SQL Server Machine Learning Services yüklemesinde size yol gösterir. Python ve R betikleri, Machine Learning Services kullanılarak veritabanında yürütülebilir.

Machine Learning Services'i Ubuntu ve Red Hat Enterprise Linux'a (RHEL) yükleyebilirsiniz. Şu anda SUSE Linux Enterprise Server (SLES) desteklenmiyor.

ML Services'i Linux dağıtımı çalıştıran bir Docker kapsayıcısı üzerine yükleyebilirsiniz. Docker kapsayıcısının içinde adımlar aşağıdakiyle aynı olacaktır.

Daha fazla bilgi için Linux üzerinde SQL Server yükleme kılavuzunun Desteklenen platformlar bölümüne bakın.

Önemli

Bu makalede SQL Server 2022 (16.x) yer alır. Linux üzerinde SQL Server 2019 için bkz. Linux'a SQL Server 2019 Machine Learning Services (Python ve R) yükleme. Windows'da SQL Server için bkz. Windows'a SQL Server 2022 Machine Learning Services(Python ve R) yükleme.

Yükleme öncesi denetim listesi

  • Linux'a SQL Server yükleyin ve yüklemeyi doğrulayın.

  • Python ve R uzantıları için SQL Server Linux depolarını denetleyin. Veritabanı altyapısı yüklemesi için kaynak depoları zaten yapılandırdıysanız, aynı depo kaydını kullanarak mssql-server-genişletilebilirlik paketi yükleme komutlarını çalıştırabilirsiniz.

  • T-SQL komutlarını çalıştırmak için bir aracınız olmalıdır.

  • Bu yükleme işlemi sırasında SQL Server örneğinin yeniden başlatılması gerekir.

Paket listesi

İnternet'e bağlı bir cihazda paketler, her işletim sistemi için paket yükleyicisi kullanılarak veritabanı altyapısından bağımsız olarak indirilir ve yüklenir.

Linux üzerinde SQL Server 2022 (16.x) için kullanılabilir yükleme paketleri:

Paket adı Uygulandığı Alan Description
mssql-server-extensibility Tümü Python ve R'yi çalıştırmak için kullanılan genişletilebilirlik çerçevesi.

mssql-server-genişletilebilirlik paketini yükleme

  1. Linux dağıtımına karşılık gelen Linux'ta SQL Server'ı yüklemek ve yükseltmek için depoları yapılandırın . PAKETI mssql-server-extensibility ve ilişkili bağımlılığı libssl-devile SQL Server genişletilebilirlik özelliğini yükleyin.

    Ubuntu

    sudo apt-get install mssql-server-extensibility libssl-dev
    

    RHEL

    yum install mssql-server-extensibility
    
  2. SQL Server ML Services için Son Kullanıcı Lisans Sözleşmesi'ni (EULA) gözden geçirin ve kabul edin.

    sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
    

    EULA'nın kabulünün tamamlanması için SQL Server örneğinin yeniden başlatılması gerekir.

    sudo systemctl restart mssql-server
    

Çalışma zamanlarını ve paketleri yükleme

R desteği ayarlama

R çalışma zamanını yükleme

  1. R'nin istenen sürümünü indirin ve yükleyin. Doğrudan cran.r-project.org'dan indirilebilen R 4.2 veya üzeri bir sürümü seçin. İstenen çalışma zamanı yönergelerini izleyin.

  2. Yönetici R terminali açın:

    sudo R
    
  3. CompatibilityAPI ve RevoScaleR için bağımlılıkları yüklemek üzere aşağıdakileri çalıştırın:

    # R Terminal
    install.packages("iterators", lib="/usr/lib/R/library")
    install.packages("foreach", lib="/usr/lib/R/library")
    install.packages("R6", lib="/usr/lib/R/library")
    install.packages("jsonlite", lib="/usr/lib/R/library")
    
  4. Linux için CompatibilityAPI ve RevoScaleR indirip yükleyin.

    install.packages("https://aka.ms/sqlml/r4.2/linux/CompatibilityAPI_1.1.0_R_x86_64-pc-linux-gnu.tar.gz", repos=NULL, lib="/usr/lib/R/library")
    install.packages("https://aka.ms/sqlml/r4.2/linux/RevoScaleR_10.0.1_R_x86_64-pc-linux-gnu.tar.gz", repos=NULL, lib="/usr/lib/R/library")
    
  5. R terminalinden RevoScaleR yüklemesini doğrulayın.

    library("RevoScaleR")
    

SQL Server ile R çalışma zamanını yapılandırma

  1. Yüklü R çalışma zamanını Linux için SQL Server ile yapılandırın; burada path/to/ R ikili dosyasının dosya yoludur ve RFolderVersion R çalışma zamanı yüklemeniz için sürüme özgü klasör adıdır, örneğin, R4.2.

    sudo /opt/mssql/bin/mssql-conf set extensibility rbinpath /usr/lib/R/bin/R
    sudo /opt/mssql/bin/mssql-conf set extensibility datadirectories /usr/lib/R
    
  2. Launchpadd Hizmeti yeniden başlatın.

    systemctl restart mssql-launchpadd.service
    
  3. Linux için SQL Server'ı dış betiklere izin vermek üzere sp_configure sistem saklı yordamını kullanarak yapılandırın.

    EXECUTE sp_configure 'external scripts enabled', 1;
    GO
    
    RECONFIGURE;
    GO
    
  4. R sürümünü döndürmek için basit bir T-SQL komutu yürüterek yüklemeyi doğrulayın:

    EXECUTE sp_execute_external_script
        @script = N'print(R.version)',
        @language = N'R';
    GO
    

Python desteği ayarlama

Python çalışma zamanını yükleme

  1. Python'ı indirin ve yükleyin. Python 3.10 sürümünü özellikle seçin; doğrudan python.org'dan indirilebilir. Sağlanan yönergeleri izleyin. Ayrıca, çalışma zamanı sürümü için paylaşılan python çalışma zamanı kitaplığını yükleyin. Örneğin, Ubuntu'ya yüklemek için libpython3.10: sudo apt-get install libpython3.10.

  2. Kök kullanıcı için revoscalepy indirip yükleyin.

    sudo pip install dill numpy==1.22.0 pandas patsy python-dateutil
    sudo pip install https://aka.ms/sqlml/python3.10/linux/revoscalepy-10.0.1-py3-none-any.whl --target=/usr/lib/python3.10/dist-packages
    
  3. revoscalepy Yüklemeyi Python terminalinden doğrulayın. Kütüphanenin import edilebildiğini doğrulayın.

    import revoscalepy
    

SQL Server ile Python çalışma zamanını yapılandırma

  1. Yüklü Python çalışma zamanını SQL Server ile yapılandırın; burada pythonbinpath yüklü python ikili dosyasının yoluna ayarlanır ve datadirectories python'ın istenen sürümü için paketlerin yüklendiği yolu (örneğin, /usr/lib/python3.10/dist-packages) içerir. Gerçek yükleme yolunuzla aşağıdaki betiği kullanın:

    sudo /opt/mssql/bin/mssql-conf set extensibility pythonbinpath /usr/bin/python3.10
    sudo /opt/mssql/bin/mssql-conf set extensibility datadirectories /usr/lib:/usr/lib/python3.10/dist-packages
    
  2. Launchpadd Hizmeti yeniden başlatın.

    systemctl restart mssql-launchpadd.service
    
  3. Linux için SQL Server'ı sistem saklı yordamını kullanarak dış betiklere sp_configure izin verecek şekilde yapılandırın.

    EXECUTE sp_configure 'external scripts enabled', 1;
    GO
    
    RECONFIGURE;
    GO
    
  4. Python sürümünü döndürmek için basit bir T-SQL komutu yürüterek yüklemeyi doğrulayın:

    EXECUTE sp_execute_external_script
        @script = N'import sys;print(sys.version)',
        @language = N'Python';
    GO
    

Java yükleme

Java dil uzantısını yüklemek için bkz. Linux'a SQL Server Java Dil Uzantısı yükleme.

Yüklemeyi doğrulama

Yüklemeyi doğrulamak için aşağıdaki yöntemlerden birini kullanın:

  • Sorgu aracını kullanarak Python veya R'yi çağıran bir sistem saklı yordamını yürüten bir T-SQL betiği çalıştırın.

  • SQL Server'da R yürütmesini test etmek için aşağıdaki SQL komutunu yürütür. Hata? Hizmeti yeniden başlatmayı deneyin. sudo systemctl restart mssql-server.service

    EXECUTE 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
    
  • SQL Server'da Python yürütmesini test etmek için aşağıdaki SQL komutunu yürütür.

    EXECUTE 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
    

Çevrimdışı yükleme

Paketleri yükleme adımları için Çevrimdışı yükleme yönergelerini izleyin. İndirme sitenizi bulun ve ardından aşağıdaki paket listesini kullanarak belirli paketleri indirin.

İpucu

Paket yönetimi araçlarının birkaçı, paket bağımlılıklarını belirlemenize yardımcı olabilecek komutlar sağlar. Yum için kullanın sudo yum deplist [package]. Ubuntu için sudo apt-get install --reinstall --download-only [package name] sonrasında dpkg -I [package name].deb kullanın.

Python ve R çalışma zamanı için tek başına RevoScale paketleri

RevoScale paketleri, Python ve R çalışma zamanları ile tek başına paket olarak da desteklenir. Tek başına senaryo için Python veya R çalışma zamanı ayarlamak için sırasıyla Python çalışma zamanını yükleme ve R çalışma zamanı yükleme bölümlerindeki yönergeleri izleyin.