Share via


R-pakketgegevens ophalen

Van toepassing op: SQL Server 2016 (13.x) en latere versies van Azure SQL Managed Instance

In dit artikel wordt beschreven hoe u informatie krijgt over geïnstalleerde R-pakketten in Machine Learning Services op SQL Server en op BIG Data-clusters van SQL Server 2019. Voorbeeld van R-scripts laten zien hoe u pakketgegevens kunt vermelden, zoals het installatiepad en de versie.

In dit artikel wordt beschreven hoe u informatie krijgt over geïnstalleerde R-pakketten in SQL Server Machine Learning Services. Voorbeeld van R-scripts laten zien hoe u pakketgegevens kunt vermelden, zoals het installatiepad en de versie.

In dit artikel wordt beschreven hoe u informatie krijgt over geïnstalleerde R-pakketten in Azure SQL Managed Instance Machine Learning Services. Voorbeeld van R-scripts laten zien hoe u pakketgegevens kunt vermelden, zoals het installatiepad en de versie.

Opmerking

Functiemogelijkheden en installatieopties verschillen per versie van SQL Server. Gebruik de vervolgkeuzelijst versiekiezer om de juiste versie van SQL Server te kiezen.

Standaardlocatie van R-bibliotheek

Wanneer u machine learning installeert met SQL Server, wordt er één pakketbibliotheek gemaakt op exemplaarniveau voor elke taal die u installeert. In Windows is de exemplaarbibliotheek een beveiligde map die is geregistreerd bij SQL Server.

Alle scripts die in de database op SQL Server worden uitgevoerd, moeten functies uit de exemplaarbibliotheek laden. SQL Server heeft geen toegang tot pakketten die zijn geïnstalleerd in andere bibliotheken. Dit geldt ook voor externe clients: elk R-script dat wordt uitgevoerd in de server-rekencontext kan alleen pakketten gebruiken die zijn geïnstalleerd in de exemplaarbibliotheek. Als u serverassets wilt beveiligen, kan de standaardexemplarenbibliotheek alleen worden gewijzigd door een computerbeheerder.

Het standaardpad van de binaire bestanden voor R is:

C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\library

Hierbij wordt ervan uitgegaan dat het standaard SQL-exemplaar MSSQLSERVER is geselecteerd. Als SQL Server is geïnstalleerd als een door de gebruiker gedefinieerd exemplaar, wordt in plaats daarvan de opgegeven naam gebruikt.

Het standaardpad van de binaire bestanden voor R is:

C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\library

Hierbij wordt ervan uitgegaan dat het standaard SQL-exemplaar MSSQLSERVER is. Als SQL Server is geïnstalleerd als een door de gebruiker gedefinieerd exemplaar, wordt in plaats daarvan de opgegeven naam gebruikt.

Het standaardpad van de binaire bestanden voor R is:

C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\R_SERVICES\library

Er wordt van uitgegaan dat het standaard SQL-exemplaar MSSQLSERVER is. Als SQL Server is geïnstalleerd als een door de gebruiker gedefinieerde benoemde instantie, wordt in plaats daarvan de opgegeven naam gebruikt.

Voer de volgende instructie uit om de standaard R-pakketbibliotheek voor het huidige exemplaar te controleren:

EXECUTE sp_execute_external_script  
  @language = N'R',
  @script = N'OutputDataSet <- data.frame(.libPaths());'
WITH RESULT SETS (([DefaultLibraryName] VARCHAR(MAX) NOT NULL));
GO

Standaard Microsoft R-pakketten

De volgende Microsoft R-pakketten worden geïnstalleerd met SQL Server R Services.

Pakketten Versie Description
RevoScaleR 8.0.3 Wordt gebruikt voor externe rekencontexten, streaming, parallelle uitvoering van rxfuncties voor gegevensimport en transformatie, modellering, visualisatie en analyse.
sqlrutils 1.0.0 Wordt gebruikt voor het opnemen van R-scripts in opgeslagen procedures.

Standaard Microsoft R-pakketten

De volgende Microsoft R-pakketten worden geïnstalleerd met SQL Server Machine Learning Services wanneer u de R-functie selecteert tijdens de installatie.

Pakketten Versie Description
RevoScaleR 9.2 Wordt gebruikt voor externe rekencontexten, streaming, parallelle uitvoering van rxfuncties voor gegevensimport en transformatie, modellering, visualisatie en analyse.
sqlrutils 1.0.0 Wordt gebruikt voor het opnemen van R-scripts in opgeslagen procedures.
MicrosoftML 1.4.0 Voegt machine learning-algoritmen toe in R.
olapR 1.0.0 Wordt gebruikt voor het schrijven van MDX-verklaringen in R.

Standaard Microsoft R-pakketten

De volgende Microsoft R-pakketten worden geïnstalleerd met SQL Server Machine Learning Services wanneer u de R-functie selecteert tijdens de installatie.

Pakketten Versie Description
RevoScaleR 9.4.7 Wordt gebruikt voor externe rekencontexten, streaming, parallelle uitvoering van rxfuncties voor gegevensimport en transformatie, modellering, visualisatie en analyse.
sqlrutils 1.0.0 Wordt gebruikt voor het opnemen van R-scripts in opgeslagen procedures.
MicrosoftML 9.4.7 Voegt machine learning-algoritmen toe in R.
olapR 1.0.0 Wordt gebruikt voor het schrijven van MDX-instructies in R.

Onderdelenupgrades

R-pakketten worden standaard vernieuwd via servicepacks en cumulatieve updates. Aanvullende pakketten en volledige versie-upgrades van kern-R-onderdelen zijn alleen mogelijk via productupgrades.

Daarnaast kunt u MicrosoftML- en olapR-pakketten toevoegen aan een SQL Server-exemplaar via een onderdeelupgrade.

Standaard opensource R-pakketten

R-ondersteuning omvat opensource-functies, zodat u basis-R-functies kunt aanroepen en aanvullende opensource- en externe pakketten kunt installeren. Ondersteuning voor R-talen bevat kernfunctionaliteit, zoals basis, statistieken, hulpmiddelen en andere. Een basisinstallatie van R bevat ook tal van voorbeeldgegevenssets en standaard R-hulpprogramma's zoals RGui (een lichtgewicht interactieve editor) en RTerm (een R-opdrachtprompt).

Zie Python- en R-versies voor informatie over welke versie van R is opgenomen in elke SQL Server-versie.

Belangrijk

U moet de versie van R die door SQL Server Setup is geïnstalleerd, nooit handmatig overschrijven met nieuwere versies op het web. Microsoft R-pakketten zijn gebaseerd op specifieke versies van R. Als u de installatie wijzigt, kan dit worden gedestabiliseerd.

Alle geïnstalleerde R-pakketten weergeven

In het volgende voorbeeld wordt de R-functie installed.packages() gebruikt in een Transact-SQL opgeslagen procedure om een lijst weer te geven met R-pakketten die zijn geïnstalleerd in de R_SERVICES-bibliotheek voor het huidige SQL-exemplaar. Dit script retourneert pakketnaam- en versievelden in het DESCRIPTION-bestand.

EXECUTE sp_execute_external_script
  @language=N'R',
@script = N'str(OutputDataSet);
packagematrix <- installed.packages();
Name <- packagematrix[,1];
Version <- packagematrix[,3];
OutputDataSet <- data.frame(Name, Version);',
@input_data_1 = N'
  '
WITH RESULT SETS ((PackageName nvarchar(250), PackageVersion nvarchar(max) ))

Zie voor meer informatie over de optionele en standaardvelden voor het veld https://cran.r-project.orgBESCHRIJVING van het R-pakket.

Eén R-pakket zoeken

Als u een R-pakket hebt geïnstalleerd en er zeker van wilt zijn dat het beschikbaar is voor een bepaald SQL Server-exemplaar, kunt u een opgeslagen procedure uitvoeren om het pakket te laden en berichten te retourneren.

De volgende instructie zoekt bijvoorbeeld naar en laadt het lijmpakket , indien beschikbaar. Als het pakket niet kan worden gevonden of geladen, krijgt u een foutmelding.

EXECUTE sp_execute_external_script  
  @language =N'R',
  @script=N'
require("glue")
'

Als u meer informatie over het pakket wilt zien, bekijkt u de packageDescription. De volgende instructie geeft informatie over het MicrosoftML-pakket.

EXECUTE sp_execute_external_script
  @language = N'R',
  @script = N'
print(packageDescription("MicrosoftML"))
'

Volgende stappen