Direkt zu Hauptinhalt

Anforderungen für AI-Analysen

AI-Analysen erfordern eine SQL-Umgebung, die R-Skripte mit Machine Learning Services ausführen kann.

Wichtig

AI-Analysen funktionieren nur, wenn R ausgeführt werden kann und der verarbeitete Datensatz in den für die R-Laufzeit verfügbaren Speicher passt.

Unterstützte SQL-Umgebungen

UmgebungUnterstütztHinweise
SQL Server 2019 / 2022 unter WindowsJaMachine Learning Services mit R erforderlich
SQL Server auf Azure Virtual Machine (Windows)JaMachine Learning Services mit R erforderlich
Azure SQL Managed InstanceJaMachine Learning Services mit R werden von der Plattform unterstützt
Azure SQL DatabaseNeinUnterstützt keine Machine Learning Services mit R
SQL Server ExpressNeinNicht unterstützt
SQL Server unter LinuxNeinNicht unterstützt

Hinweis

Informationen zur geeigneten Größe des Arbeitsspeichers (RAM), zu CPU-Empfehlungen und Hardwareempfehlungen für Azure SQL Managed Instance finden Sie unter Ressourcenanforderungen für R-basierte AI-Analysen.

1. Wählen Sie Ihre Plattform

1.1 SQL Server On-Premises oder Azure Virtual Machine

Wählen Sie diese Option, wenn Sie die maximale Kontrolle über die Speicherzuweisung, die SQL Server-Konfiguration und die R-Laufzeit wünschen.

  • Unterstützte Versionen: SQL Server 2019 und SQL Server 2022 unter Windows
  • Machine Learning Services mit R müssen installiert sein
  • Die vorgefertigte dab-R-Laufzeit wird empfohlen
  • max server memory und Resource Governor können eingesetzt werden, um ausreichend Arbeitsspeicher für R zu reservieren

Microsoft-Dokumentation

1.2 Azure SQL Managed Instance

Wählen Sie diese Option, wenn Sie eine verwaltete Azure SQL-Plattform nutzen möchten und die Plattformgrenzen der Machine Learning Services akzeptieren.

  • Machine Learning Services mit R werden von Azure SQL Managed Instance unterstützt
  • Die Basis-R-Laufzeit wird von Azure SQL Managed Instance bereitgestellt
  • Verwenden Sie nicht RegisterRext.exe oder Windows-Dienstschritte auf Azure SQL Managed Instance
  • Externe Resource-Governor-Ressourcenpools werden auf Azure SQL Managed Instance nicht unterstützt
  • Standardmäßig kann R maximal 20 % der Ressourcen der Managed Instance nutzen
  • Erforderliche Pakete müssen mit sqlmlutils installiert werden

Microsoft-Dokumentation


2. Aktivieren Sie Machine Learning Services

2.1 SQL Server On-Premises oder Azure Virtual Machine

Führen Sie den folgenden Befehl auf der SQL-Instanz aus:

sp_configure 'external scripts enabled', 1;
RECONFIGURE;

Starten Sie anschließend den SQL Server Launchpad-Dienst neu.

2.2 Azure SQL Managed Instance

Führen Sie denselben Befehl auf der Managed Instance aus:

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

Azure SQL Managed Instance startet die Instanz während dieser Änderung automatisch neu und ist für kurze Zeit nicht verfügbar. Es gibt keinen Launchpad-Dienst, den Sie manuell neu starten müssen.


3. Überprüfen Sie die R-Ausführung

Führen Sie Folgendes auf der SQL-Umgebung aus:

EXEC sp_execute_external_script @language = N'R', @script = N'print("OK")';

Erwartete Ausgabe:

OK

So prüfen Sie die installierte Version von R:

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

Um installierte Pakete aufzulisten:

EXEC sp_execute_external_script @language = N'R', @script = N'print(installed.packages()[, c("Package", "Version")])';

4. Installieren Sie die erforderlichen R-Pakete

4.1 SQL Server On-Premises oder Azure Virtual Machine

Die empfohlene Option ist die Nutzung der vorgefertigten dab-R-Laufzeit.

  1. Laden Sie die Laufzeit von dab Portal herunter.

  2. Kopieren Sie diese zur SQL Server und entpacken Sie die ZIP-Datei.

  3. Doppelklicken Sie auf das Installationsprogramm.

  4. Wählen Sie den Installationsort: Passen Sie den voreingestellten Zielordner bei Bedarf an – wir empfehlen, den Standardordner zu verwenden.

  5. Wählen Sie die Werkzeuge aus – wir empfehlen, alle Optionen auszuwählen.

  • ACL Analytics
    • SQL Server
    • Zum System-PATH hinzufügen
  1. Wählen Sie die SQL Server Instanz aus – wählen Sie hier Ihre CONTENT Datenbank aus
  2. Registrieren Sie die SQL Server Instanz erneut – empfohlen Falls Sie diese Option deaktivieren, registrieren Sie sie manuell in SQL Server:
   RegisterRext.exe /configure /rhome:"C:\Program Files\R\R-4.x.x" /instance:"MSSQLSERVER"
  1. Führen Sie die Installation aus und warten Sie, bis sie abgeschlossen ist
  2. Öffnen Sie „Dienste“ und starten Sie den SQL Server Launchpad (CONTENT)-Dienst neu
  3. Überprüfen Sie die Installation und Ausführung wie in 3. Verify R execution beschrieben
Wichtig

Dieser Laufzeit-Registrierungsprozess gilt ausschließlich für selbstverwaltete SQL Server unter Windows und SQL Server auf Azure Virtual Machine. Er ist nicht für Azure SQL Managed Instance anzuwenden.

4.2 Azure SQL Managed Instance

Azure SQL Managed Instance enthält bereits die Basis-R-Laufzeit. Es müssen lediglich die erforderlichen Pakete installiert werden.

  • Installieren Sie die benötigten Pakete mit sqlmlutils von einem Client-Rechner aus
  • Versuchen Sie nicht, eine lokale R-Laufzeit auf den Dienst zu kopieren
  • Wenn Sie Failover-Gruppen verwenden, installieren Sie die Pakete in einer Benutzerdatenbank anstelle von master

Nutzen Sie die Microsoft-Anleitung zum Paketmanagement:


Fehlerbehebung

ProblemWahrscheinliche UrsacheLösung
R-Skripte werden nicht ausgeführtexternal scripts enabled ist deaktiviertEinstellung aktivieren und erneut versuchen
Speicherfehler bei der AnalyseDer Datensatz passt nicht in den für R verfügbaren ArbeitsspeicherDatenmenge verkleinern oder verfügbaren Arbeitsspeicher erhöhen. Siehe Ressourcenanforderungen für R-basierte AI-Analysen
Launchpad startet nichtFehlkonfiguration des Windows-DienstesÜberprüfen Sie den SQL Server Launchpad-Dienst. Gilt nur für selbstverwaltete SQL Server
RegisterRext.exe funktioniert nichtFalsche PlattformNur auf selbstverwalteten SQL Server unter Windows oder auf Azure VM verwenden
Paketinstallation in Azure SQL Managed Instance schlägt fehlFalsche Methode zur PaketinstallationNutzen Sie sqlmlutils
dab Nexus kann keine Verbindung herstellenSQL Auth deaktiviert oder Firewall-EinschränkungenSQL Auth aktivieren und erforderlichen Netzwerkpfad öffnen