Installieren von SQL Server 2016 R Services

Gilt für: Nur SQL Server 2016 (13.x)

Hier erfahren Sie, wie Sie SQL Server 2016 R Services unter Windows installieren. Sie können R Services verwenden, um R-Skripts in der Datenbank auszuführen.

Hinweis

In SQL Server 2017 und höher ist R in Machine Learning Services zusammen mit Python enthalten. Wenn Sie die R benötigen und über SQL Server 2017 oder höher verfügen, finden Sie Informationen zum Hinzufügen des Features unter Installieren von SQL Server-Machine Learning Services.

Prüfliste vor der Installation

  • Es ist eine Datenbank-Engine-Instanz erforderlich. Sie können nicht nur R installieren, aber Sie können die Sprache inkrementell zu einer vorhandenen Instanz hinzufügen.

  • Für die Aufrechterhaltung der Geschäftskontinuität werden Always On-Verfügbarkeitsgruppen für R Services unterstützt. Sie müssen auf jedem Knoten R Services installieren und Pakete konfigurieren.

  • Installieren Sie R Services nicht in Always On-Failoverclusterinstanzen (FCI) für SQL Server. Der Sicherheitsmechanismus, der zum Isolieren von R-Prozessen verwendet wird, ist mit einer Always On-FCI-Umgebung in SQL Server nicht kompatibel.

  • Installieren Sie R Services nicht auf einem Domänencontroller. Das Setup für R Services schlägt in diesem Fall fehl.

  • Installieren Sie Freigegebene Features>R Server (Standalone) nicht auf einem Computer, auf dem eine datenbankinterne Instanz ausgeführt wird.

  • Eine parallele Installation mit anderen Versionen von R wird zwar unterstützt, jedoch nicht empfohlen. Dies wird unterstützt, da die SQL Server-Instanz eigene Kopien der Open-Source-Distributionen von R verwendet. Das Ausführen von Code, der R auf dem SQL Server-Computer außerhalb von SQL Server verwendet, kann jedoch zu unterschiedlichen Problemen führen:

    • Da Sie eine andere Bibliothek und eine andere ausführbare Datei verwenden, erhalten Sie andere Ergebnisse als bei der Ausführung in SQL Server.
    • R-Skripts, die in externen Bibliotheken ausgeführt werden, können nicht von SQL Server verwaltet werden, was zu Ressourcenkonflikten führt.

Wichtig

Stellen Sie nach Abschluss des Setups sicher, dass Sie die in diesem Artikel beschriebenen zusätzlichen Schritte nach der Konfiguration durchführen. Zu diesen Schritten zählen das Aktivieren von SQL Server für die Verwendung externer Skripts und das Hinzufügen von Konten, die für SQL Server zum Ausführen Ihrer R-Aufträge erforderlich sind. Konfigurationsänderungen erfordern in der Regel einen Neustart der Instanz oder einen Neustart des Launchpad-Diensts.

Abrufen der Installationsmedien

Der Downloadspeicherort für SQL Server ist abhängig von der Edition.

  • SQL Server-Editionen Enterprise, Standard und Express. Diese Editionen sind für die Verwendung in der Produktion lizenziert. Wenden Sie sich für die Installation von Medien für die Editionen Enterprise und Standard an Ihren Softwareanbieter. Einkaufsinformationen und ein Verzeichnis mit Microsoft-Partner finden Sie auf der Einkaufswebsite von Microsoft.
  • Aktuellste kostenlose Edition

Installieren einer Patchanforderung

Microsoft hat ein Problem bei der speziellen Version von Microsoft VC++ 2013 Runtime-Binärdateien erkannt, die von SQL Server als vorausgesetzte Komponenten installiert werden. Wenn dieses Update an den VC++ Runtime-Binärdateien nicht installiert wird, können bei SQL Server in bestimmten Szenarios Stabilitätsprobleme auftreten. Bevor Sie SQL Server installieren, sollten Sie entsprechend den Anweisungen unter Versionsanmerkungen zu SQL Server vorgehen, um festzustellen, ob Ihr Computer einen Patch für die VC-Runtime-Binärdateien benötigt.

Ausführen von Setup

Bei lokalen Installationen müssen Sie das Setup als Administrator ausführen. Wenn Sie SQL Server von einer Remotefreigabe installieren, müssen Sie ein Domänenkonto verwenden, das Lese- und Ausführungsberechtigungen auf der Remotefreigabe hat.

  1. Starten Sie den Setup-Assistenten für SQL Server 2016.

  2. Klicken Sie auf der Registerkarte Installation auf Neue eigenständige SQL Server-Installation oder Hinzufügen von Funktionen zu einer vorhandenen Installation.

    Installieren von R Services (In-Database)

  3. Wählen Sie folgende Optionen auf der Seite Funktionsauswahl aus:

    • Wählen Sie Datenbank-Engine-Dienste aus. Die Datenbank-Engine ist für jede Instanz erforderlich, in der Machine Learning verwendet wird.
    • Wählen Sie R Services (datenbankintern) aus. Durch diese Option wird die datenbankinterne Verwendung von R unterstützt.

    Featureauswahl für R Services

    Wichtig

    Installieren Sie R Server und R Services nicht gleichzeitig.

  4. Klicken Sie auf der Seite Zustimmung zur Installation von Microsoft R Open auf Annehmen.

    Dieser Lizenzvertrag ist erforderlich, um Microsoft R Open herunterzuladen. Dort ist eine Verteilung der Open-Source-Basispakete und -Tools für R enthalten sowie erweiterte R-Pakete und Konnektivitätsanbieter des Microsoft-R-Entwicklungsteams.

  5. Nachdem Sie den Lizenzvertrag akzeptiert haben, wird der Installer kurz vorbereitet. Klicken Sie auf Weiter, sobald die Schaltfläche verfügbar ist.

  6. Stellen Sie auf der Seite Installationsbereit sicher, dass die folgenden Elemente ausgewählt sind, und klicken Sie auf Installieren.

    • -Datenbank-Engine-Dienste
    • R Services (In-Database)
  7. Wenn Sie nach Abschluss des Setups dazu aufgefordert werden, starten Sie jetzt den Computer neu. Wenn Sie den Setupvorgang abgeschlossen haben, sollten Sie unbedingt die vom Installations-Assistenten angezeigte Meldung lesen. Weitere Informationen finden Sie unter View and Read SQL Server Setup Log Files.

Festlegen von Umgebungsvariablen

Wenn Sie nur das R-Feature integrieren möchten, sollten Sie die Umgebungsvariable MKL_CBWR über die Intel Math Kernel Library-Berechnungen auf ensure consistent output (Konsistente Ausgabe sicherstellen) festlegen.

  1. Klicken Sie in der Systemsteuerung auf System und Sicherheit>System>Erweiterte Systemeinstellungen>Umgebungsvariablen.

  2. Erstellen Sie eine neue Benutzer- oder Systemvariable.

    • Legen Sie den Variablenname auf MKL_CBWR fest.
    • Legen Sie den Variablenwert auf AUTO fest.

Für diesen Schritt ist ein Neustart des Servers erforderlich. Sie können den Neustart anhalten, bis die gesamte Konfiguration abgeschlossen ist.

Aktivieren der Skriptausführung

  1. Öffnen Sie das SQL Server Management Studio (SSMS) oder Azure Data Studio.

  2. Stellen Sie eine Verbindung mit der Instanz her, auf der Sie R Services installiert haben. Klicken Sie auf Neue Abfrage, um ein Abfragefenster zu öffnen, und führen Sie den folgenden Befehl aus:

    sp_configure
    

    Der Wert für die Eigenschaft external scripts enabled sollte an diesem Punkt 0 betragen. Dies liegt daran, dass die Funktion standardmäßig deaktiviert ist. Das Feature muss explizit von einem Administrator aktiviert werden, bevor Sie R-Skripts ausführen können.

  3. Führen Sie die folgende Anweisung aus, um die externe Funktion für die Skripterstellung zu aktivieren:

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

Starten Sie den Dienst neu.

Starten Sie nach Abschluss der Installation die Datenbank-Engine neu, bevor Sie mit dem nächsten Schritt fortfahren, und aktivieren Sie die Skriptausführung.

Durch den Neustart des Diensts wird auch der zugehörige SQL Server-Launchpad-Dienst automatisch neu gestartet.

Sie können den Dienst neu starten, indem Sie für die Instanz in SSMS mit der rechten Maustaste auf den Befehl Neu starten klicken oder den SQL Server-Konfigurations-Manager verwenden.

Überprüfen der Installation

Gehen Sie folgendermaßen vor, um zu überprüfen, ob alle zum Starten eines externen Skripts verwendeten Komponenten ausgeführt werden.

  1. Öffnen Sie in SQL Server Management Studio ein neues Abfragefenster, und führen Sie den folgenden Befehl aus:

    EXEC sp_configure 'external scripts enabled'
    

    Der Wert Run_value sollte jetzt auf 1 festgelegt werden.

  2. Öffnen Sie den SQL Server-Konfigurations-Manager, und überprüfen Sie, ob der SQL Server-Launchpad-Dienst ausgeführt wird. Sie sollten für jede Datenbank-Engine-Instanz über einen Dienst verfügen, auf der R installiert ist. Weitere Informationen zu dem Dienst finden Sie unter Erweiterbarkeitsframework.

  3. Wenn das Launchpad ausgeführt wird, sollten Sie einfache R-Skripts ausführen können, um zu überprüfen, ob externe Skriptruntimes mit SQL Server kommunizieren können.

    Öffnen Sie ein neues Abfragefenster in SQL Server Management Studio oder Azure Data Studio, und führen Sie ein Skript wie das folgende aus:

    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
    

    Die Ausführung des Skripts kann einige Zeit in Anspruch nehmen, wenn die externe Skriptruntime zum ersten Mal geladen wird. Die Ergebnisse sollten etwa wie folgt aussehen:

    Hello
    1

Anwenden von Updates

Es wird empfohlen, dass Sie das neueste Service Pack und kumulative Update sowohl auf die Datenbank-Engine als auch auf die Machine Learning-Komponenten anwenden.

Auf Geräten, die mit dem Internet verbunden sind, werden kumulative Updates in der Regel über Windows Update angewendet. Sie können jedoch auch die nachfolgenden Schritte für kontrollierte Updates verwenden. Wenn Sie das Update für die Datenbank-Engine anwenden, ruft das Setup die kumulativen Updates für alle R-Bibliotheken ab, die Sie auf derselben Instanz installiert haben.

Auf getrennten Servern sind zusätzliche Schritte erforderlich. Weitere Informationen finden Sie unter Installieren auf Computern ohne Internetzugriff > Kumulative Updates anwenden.

  1. Beginnen Sie mit einer bereits installierten Baseline-Instanz: erstes Release von SQL Server 2016, SQL Server 2016 SP1 oder SQL Server 2016 SP2

  2. Navigieren Sie zur kumulativen Updateliste: Neueste Updates für Microsoft SQL Server

  3. Wählen Sie (von den nicht bereits als Baselineinstanz installierten Versionen) das neueste Service Pack und das kumulative Update aus. Eine ausführbare Datei wird automatisch heruntergeladen und extrahiert.

  4. Führen Sie das Setup aus. Akzeptieren Sie die Lizenzbedingungen, und überprüfen Sie auf der Seite für die Funktionsauswahl die Funktionen, für die kumulative Updates angewendet werden. Es sollte jedes für die aktuelle Instanz installierte Feature einschließlich R Services angezeigt werden. Das Setup lädt die CAB-Dateien herunter, die zum Aktualisieren aller Funktionen erforderlich sind.

  5. Folgen Sie den weiteren Anweisungen des Assistenten, und akzeptieren Sie die Lizenzbedingungen für die R-Verteilung.

Hinweis

Das kumulative Update (CU) 14 und höher für SQL Server 2016 SP2 enthält eine neuere Version der R-Runtime. Weitere Informationen finden Sie unter Ändern der Language Runtime-Standardversion.

Zusätzliche Konfiguration

Wenn der Schritt zur externen Skriptüberprüfung erfolgreich war, können Sie R-Befehle von SQL Server Management Studio, Azure Data Studio oder einem anderen Client ausführen, der T-SQL-Anweisungen an den Server senden kann.

Überprüfen Sie die zusätzlichen Konfigurationsschritte in diesem Abschnitt, wenn beim Ausführen des Befehls ein Fehler aufgetreten ist. Möglicherweise müssen Sie für den Dienst oder die Datenbank zusätzliche geeignete Konfigurationen vornehmen.

Auf Instanzebene kann eine zusätzliche Konfiguration Folgendes umfassen:

Für die Datenbank benötigen Sie möglicherweise die folgenden Konfigurationsupdates:

Hinweis

Nicht alle aufgeführten Änderungen sind erforderlich. Es ist möglich, dass keine davon erforderlich ist. Die Anforderungen hängen vom Sicherheitsschema ab, in dem Sie SQL Server installiert haben, sowie von Ihren Erwartungen bezüglich des Herstellens einer Verbindung mit der Datenbank und dem Ausführen externer Skripts seitens der Benutzer. Weitere Hinweise zur Installation finden Sie hier: Installieren von SQL Server-Machine Learning Services

Empfohlene Optimierungen

Sie sollten auch die Server optimieren, um maschinelles Lernen mit R oder das Installieren vorab trainierter Modelle zu unterstützen.

Hinzufügen weiterer Geschäftskonten

Wenn Sie wissen, dass Sie R intensiv verwenden oder dass viele Benutzer gleichzeitig Skripts ausführen werden, können Sie die Anzahl der Workerkonten erhöhen, die dem Launchpad-Dienst zugewiesen sind. Weitere Informationen finden Sie unter Skalieren der gleichzeitige Ausführung externer Skripts in SQL Server-Machine Learning Services.

Optimieren des Servers für die Ausführung externer Skripts

Die Standardeinstellungen für das SQL Server-Setup dienen zur Optimierung des Lastenausgleichs des Servers für eine Vielzahl von Diensten, die von der Datenbank-Engine unterstützt werden, einschließlich ETL-Prozesse (Extrahieren, Transformieren und Laden), Reporting, Überwachung und Anwendungen, die SQL Server-Daten verwenden. Daher können in den Standardeinstellungen insbesondere für speicherintensive Vorgänge Ressourcen für Machine Learning-Vorgänge eingeschränkt oder gedrosselt sein.

Es wird empfohlen, dass Sie zum Konfigurieren eines externen Ressourcenpools den SQL Server-Resource Governor verwenden, um sicherzustellen, dass Machine Learning-Aufgaben über die entsprechende Priorität und die nötigen Ressourcen verfügen. Eventuell ist es auch sinnvoll, die Größe des Speichers zu ändern, der der SQL Server-Datenbank-Engine zugewiesen ist, oder die Anzahl der Konten zu erhöhen, die unter dem SQL Server-Launchpad-Dienst ausgeführt werden.

Wenn Sie die Standard Edition verwenden und nicht über den Resource Governor verfügen, können Sie zum Verwalten von Serverressourcen, die von R verwendet werden, dynamische Verwaltungssichten (DMVs) und erweiterte Ereignisse sowie die Windows-Ereignisüberwachung nutzen.

Installieren zusätzlicher R-Pakete

Die R-Lösungen, die Sie für SQL Server erstellen, können grundlegende Funktionen, Funktionen aus den proprietären mit SQL Server installierten Paketen sowie Funktionen aus Drittanbieterpaketen aufrufen, die mit der von SQL Server installierten Open-Source-Version von R kompatibel sind.

Pakete, die Sie von SQL Server verwenden möchten, müssen in der Standardbibliothek installiert sein, die von der Instanz verwendet wird. Wenn Sie eine separate Installation von R auf dem Computer haben oder Pakete in Benutzerbibliotheken installiert sind, werden Sie diese Pakete über T-SQL nicht verwenden können.

Der Installations- und Verwaltungsprozess für R-Pakete unterscheidet sich in SQL Server 2016 und SQL Server 2017. In SQL Server 2016 muss ein Datenbankadministrator die R-Pakete installieren, die die Benutzer benötigen. In SQL Server 2017 können Sie Benutzergruppen für die Freigabe von Paketen auf Datenbankebene einrichten oder Datenbankrollen so konfigurieren, dass Benutzer ihre eigenen Pakete installieren können. Weitere Informationen finden Sie unter Installieren von Paketen mit R-Tools.

Nächste Schritte

R-Entwickler können mit einigen einfachen Beispielen loslegen und die Grundlagen der Funktionen von R unter SQL Server kennenlernen. Informationen zu den nächsten Schritten finden Sie unter den folgenden Links: