Installer SQL Server 2022 Machine Learning Services (Python et R) sur Linux

S’applique à : SQL Server 2022 (16.x) – Linux

Cet article vous guide lors de l’installation de SQL Server Machine Learning Services sur Linux. Les scripts Python et R peuvent être exécutés dans la base de données à l’aide de Machine Learning Services.

Vous pouvez installer Machine Learning Services sur Ubuntu et Red Hat Enterprise Linux (RHEL). Actuellement, SUSE Linux Enterprise Server (SLES) n’est pas pris en charge.

Vous pouvez installer ML Services sur un conteneur Docker exécutant une distribution Linux. À l’intérieur du conteneur Docker, les étapes sont les mêmes que ci-dessous.

Pour plus d’informations, consultez la section des Plateformes prises en charge dans Aide d’installation pour SQL Server sur Linux.

Important

Cet article fait référence à SQL Server 2022 (16.x). Pour SQL Server 2019 sur Linux, consultez Installer SQL Server 2019 Machine Learning Services (Python et R) sur Linux. Pour SQL Server sur Windows, consultez Installer SQL Server 2022 Machine Learning Services (Python et R) sur Windows.

Liste de contrôle avant l’installation

  • Installez SQL Server sur Linux et vérifiez l’installation.

  • Vérifiez la présence des extensions Python et R dans les référentiels Linux SQL Server. Si vous avez déjà configuré des référentiels source pour l’installation du moteur de base de données, vous pouvez exécuter les commandes d’installation du package mssql-server-extensibility-java à l’aide de la même inscription de référentiel.

  • Vous devez disposer d’un outil pour l’exécution des commandes T-SQL.

    • Vous pouvez utiliser Azure Data Studio, qui est un outil de base de données gratuit exécutable sur Linux, Windows et macOS.
  • Le redémarrage de l’instance SQL Server durant ce processus d’installation est obligatoire.

Liste des packages

Sur un appareil connecté à Internet, les packages sont téléchargés et installés indépendamment du moteur de base de données à l’aide du programme d’installation de package pour chaque système d’exploitation.

Packages d’installation disponibles pour SQL Server 2022 (16.x) sur Linux :

Nom du package S’applique à Description
mssql-server-extensibility Tous Framework d’extensibilité utilisé pour exécuter Python et R.

Installer le package mssql-server-extensibility

  1. Configurez les dépôts Linux correspondant à la distribution Linux. Installez la fonctionnalité d’extensibilité SQL Server avec le package mssql-server-extensibility et la dépendance associée libssl-dev.

    Ubuntu

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

    RHEL

    yum install mssql-server-extensibility
    
  2. Passez en revue et acceptez le contrat de licence utilisateur final (CLUF) pour SQL Server ML Services.

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

    Pour accepter complètement le CLUF, vous devez redémarrer l’instance SQL Server.

    sudo systemctl restart mssql-server
    

Installer les runtimes et les packages

Configurer la prise en charge de R

Installer le runtime R

  1. Téléchargez et installez la version de R souhaitée. Choisissez une version de R 4.2 ou ultérieure , disponible directement à partir de cran.r-project.org. Suivez les instructions du runtime souhaité.

  2. Ouvrez un terminal R administrateur :

    sudo R
    
  3. Installez les dépendances pour CompatibilityAPI et RevoScaleR en exécutant ce qui suit :

    # 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. Téléchargez et installez CompatibilityAPI et RevoScaleR pour Linux.

    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. Vérifiez l’installation de RevoScaleR à partir du terminal R.

    library("RevoScaleR")
    

Configurer le runtime R avec SQL Server

  1. Configurez le runtime R installé avec SQL Server pour Linux, où path/to/ est le chemin du fichier vers le fichier binaire R et RFolderVersion est le nom de dossier spécifique à la version de votre installation du runtime R, par exemple 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. Redémarrez le service Launchpadd .

    systemctl restart mssql-launchpadd.service
    
  3. Configurez SQL Server pour Linux pour autoriser les scripts externes à l’aide de la sp_configure procédure stockée système.

    EXEC sp_configure 'external scripts enabled', 1;
    GO
    RECONFIGURE
    GO
    
  4. Vérifiez l’installation en exécutant une commande T-SQL simple pour retourner la version de R :

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

Configurer la prise en charge de Python

Installer le runtime Python

  1. Téléchargez et installez Python. Choisissez spécifiquement la version Python 3.10, disponible en téléchargement directement sur python.org. Suivez les instructions fournies. Installez également la bibliothèque de runtime Python partagée pour la version de runtime. Par exemple, pour installer libpython3.10 pour Ubuntu : sudo apt-get install libpython3.10.

  2. Téléchargez et installez revoscalepy pour l’utilisateur racine.

    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. Vérifiez l’installation de revoscalepy à partir du terminal Python. Vérifiez que la bibliothèque peut être importée.

    import revoscalepy
    

Configurer le runtime Python avec SQL Server

  1. Configurez le runtime Python installé avec SQL Server, où pythonbinbath est défini sur le chemin du binaire Python installé et datadirectories inclut le chemin où les packages sont installés pour la version souhaitée de Python. Par exemple : /usr/lib/python3.10/dist-packages. Utilisez le script suivant avec votre chemin d’installation réel :

    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. Redémarrez le service Launchpadd .

    systemctl restart mssql-launchpadd.service
    
  3. Configurez SQL Server pour Linux pour autoriser les scripts externes à l’aide de la sp_configure procédure stockée système.

    EXEC sp_configure 'external scripts enabled', 1;
    GO
    RECONFIGURE
    GO
    
  4. Vérifiez l’installation en exécutant une commande T-SQL simple pour retourner la version de Python :

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

Installer Java

Pour installer l’extension de langage Java, consultez Installer l’extension de langage Java SQL Server sur Linux.

Vérifier l'installation

Pour valider l’installation, utilisez l’une des méthodes suivantes :

  • Exécutez un script T-SQL qui exécute une procédure stockée système appelant Python ou R à l’aide d’un outil de requête.

  • Exécutez la commande SQL suivante pour tester l’exécution de R dans SQL Server. Des erreurs ? Essayez un redémarrage du service, 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 
    
  • Exécutez la commande SQL suivante pour tester l’exécution de Python dans 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 
    

Installation hors connexion

Suivez les instructions d'installation hors connexion pour connaître les étapes d’installation des packages. Recherchez votre site de téléchargement, puis téléchargez des packages spécifiques à l’aide de la liste de packages ci-dessous.

Conseil

Plusieurs outils de gestion des packages fournissent des commandes qui peuvent vous aider à déterminer les dépendances du package. Pour yum, utilisez sudo yum deplist [package]. Pour Ubuntu, utilisez sudo apt-get install --reinstall --download-only [package name], suivi de dpkg -I [package name].deb.

Packages RevoScale autonomes pour le runtime Python et R

Les packages RevoScale sont également pris en charge en tant que package autonome avec des runtimes Python et R. Pour configurer le runtime Python ou R pour le scénario autonome, suivez les instructions des sections Installer le runtime Python et Installer le runtime R, respectivement.

Les développeurs Python peuvent apprendre à utiliser Python avec SQL Server en effectuant les didacticiels suivants :

Les développeurs peuvent démarrer avec quelques exemples simples et découvrir les principes de base du fonctionnement de R avec SQL Server. Pour l’étape suivante, consultez les liens suivants :