Direkt zu Hauptinhalt

Ressourcenanforderungen für R-basierte AI-Analysen

Diese Seite unterstützt Sie dabei, abzuschätzen, wie viel RAM für den R-Runtime für AI-Lösungen von dab verfügbar sein muss.

Wichtig

Der Datensatz auf dieser Seite bezeichnet das Ergebnis einer Analyse, die von dab Nexus ausgeführt wurde. Dieser vollständige Datensatz muss in den für den R-Runtime verfügbaren Speicher passen.

Schnelle Orientierung

  • Verwenden Sie die folgenden Matrizen, um die benötigte RAM-Menge für den R-Runtime bei einer Analyseausführung zu schätzen.
  • Die Matrixwerte sind nicht der gesamte SQL Server- oder Azure SQL Managed Instance-RAM.
  • Wenn mehrere Analysen gleichzeitig laufen, addieren Sie deren R-Speicherbedarf.
  • Auf Azure SQL Managed Instance kann R standardmäßig nur etwa 20% der Instanzressourcen nutzen.

Benötigtes RAM für den R-Runtime

Wichtig

Die folgenden Tabellen zeigen den für den R-Runtime benötigten RAM bei einer Analyseausführung. Sie zeigen nicht den gesamten Server- oder Instanz-RAM.

Wenn eine Matrixzelle 16 GB angibt, benötigt R ungefähr 16 GB für diesen Durchlauf.

Dies bedeutet nicht, dass eine 16 GB-SQL Server oder Managed Instance ausreicht.

Wählen Sie den entsprechenden Zeilenbereich und Spaltenbereich für den Datensatz, der von dab Nexus an die Analyse übergeben wird. Verwenden Sie dann die passende Arbeitslastmatrix.

So nutzen Sie die Tabellen:

  1. Öffnen Sie in dab Nexus die Ansicht zur Analyseausführung und prüfen Sie die Zeilenanzahl der Analyse.
  2. Überprüfen Sie die Spaltenanzahl in Content Studio. Falls Sie den genauen Wert nicht kennen, verwenden Sie die typische Spaltenanzahl aus der unten stehenden Arbeitslast-Tabelle.
  3. Suchen Sie in der Arbeitslast-Tabelle unten die gewünschte Analyse.
  4. Öffnen Sie die passende Matrix und wählen Sie die Zelle, in der sich Zeilenbereich und Spaltenbereich treffen.
  5. Lesen Sie den Wert als den RAM, der für R während dieses Durchlaufs verfügbar sein muss.

Diese Werte sind konservative Schätzungen basierend auf dem typischen Verhalten der AI-Lösungen von dab in R. Der tatsächliche Spitzenverbrauch hängt zudem von Datentypen, Spaltenkardinalität, temporären Objekten der Analyse und parallelen Ausführungen ab.

Arbeitslasttypen und typische Spaltenanzahlen

AI-AnalysekategorieAnalysenTypische SpaltenanzahlVerwenden Sie diese Matrix
DEAN / AusreißererkennungAI_Outliers, *_OutliersMeist 15-20, aber konfigurierbarStandard-AI-Arbeitslasten
Market Basket-AnalyseAI_MarketBasketAnalysis, GL_MarketBasketMeist 6-15, aber konfigurierbarStandard-AI-Arbeitslasten
Root Cause*_RootCauseMeist 10-20Belastungsintensive AI-Arbeitslasten
Doppelzahlungen / Credit Note AIAP_DuplicatePaymentsEnhancedMeist rund 40Belastungsintensive AI-Arbeitslasten
Master Data AICU_DuplicatesEnhanced, CU_Outliers, VE_DuplicatesEnhanced, VE_OutliersMeist rund 15Belastungsintensive AI-Arbeitslasten

Standard-AI-Arbeitslasten: Benötigtes RAM für den R-Runtime

Beispiele: AI_Outliers, *_Outliers, AI_MarketBasketAnalysis, GL_MarketBasket

EingabezeilenBis zu 10 Spalten11-20 Spalten21-40 Spalten41-60 Spalten
Bis zu 100k4 GB4 GB8 GB12 GB
100k-500k4 GB8 GB12 GB16 GB
500k-1M8 GB12 GB24 GB32 GB
1M-2M12 GB24 GB48 GB64 GB
2M-3M16 GB32 GB64 GB96 GB

Belastungsintensive AI-Arbeitslasten: Benötigtes RAM für den R-Runtime

Beispiele: *_RootCause, AP_DuplicatePaymentsEnhanced, CU_DuplicatesEnhanced, CU_Outliers, VE_DuplicatesEnhanced, VE_Outliers

EingabezeilenBis zu 10 Spalten11-20 Spalten21-40 Spalten41-60 Spalten
Bis zu 100k4 GB8 GB8 GB12 GB
100k-500k8 GB12 GB16 GB24 GB
500k-1M12 GB16 GB32 GB48 GB
1M-2M16 GB32 GB64 GB96 GB
2M-3M24 GB48 GB96 GB128 GB+

Wenn Ihre Arbeitslast größer als die oben genannten Bereiche ist, betrachten Sie die Matrixwerte als Untergrenze und dimensionieren Sie die Umgebung mit zusätzlichem Spielraum.

SQL Server On-Premise oder Azure Virtual Machine

Wählen Sie diese Plattform, wenn Sie maximale Kontrolle über die Speicherzuweisung wünschen.

  • Die oben stehenden Matrizen zeigen, wie viel RAM für den R-Runtime verfügbar sein muss.
  • Der Gesamtspeicher des Rechners muss daher höher als der Matrixwert sein, da Windows und SQL Server ebenfalls Speicher benötigen.
  • Mindestens praktikable Host-Größe: 16 GB Gesamt-RAM
  • Typischer Einstiegspunkt: 32 GB Gesamt-RAM
  • Große, breite oder parallele Arbeitslasten: 64 GB Gesamt-RAM oder mehr
  • Mindestens CPU: 2 Kerne
  • Empfohlene CPU: Moderne x64-CPU mit hoher Single-Core-Performance

Wichtig: SQL Server kann den größten Teil des Speichers verwenden, sofern Sie dies nicht begrenzen. Lassen Sie genügend Speicher für das Betriebssystem und R und nutzen Sie den Resource Governor, wenn Sie den für externe Skripte verfügbaren Speicher steuern möchten. Starten Sie SQL Server Launchpad nach Änderung dieser Einstellungen neu.

Resource Governor prüfen und konfigurieren

Nutzen Sie folgende Befehle auf selbst verwalteter SQL Server, um zu prüfen oder zu ändern, wie viel Speicher für R verfügbar ist.

Mit den folgenden Abfragen können Sie die aktuelle Konfiguration ansehen:

SELECT is_enabled FROM sys.resource_governor_configuration;

SELECT name, max_memory_percent, max_cpu_percent
FROM sys.resource_governor_external_resource_pools;
  • Die erste Abfrage zeigt, ob der Resource Governor aktiviert ist.
  • Die zweite Abfrage zeigt die aktuellen Speicher- und CPU-Grenzen für externe Runtimes wie R.

Erhöhen Sie den Standardpool für externe Runtimes, falls R mehr Speicher benötigt:

ALTER EXTERNAL RESOURCE POOL "default"
WITH (
MAX_CPU_PERCENT = 100,
MAX_MEMORY_PERCENT = 40
);

ALTER RESOURCE GOVERNOR RECONFIGURE;

Dieses Beispiel erlaubt externen Skripten, bis zu 40% des für SQL Server verfügbaren Speichers zu nutzen, anstelle des Standardwerts von 20%.

Nutzen Sie diese Einstellung gemeinsam mit max server memory, damit der R-Runtime tatsächlich auf den in den Matrizen angegebenen RAM zugreifen kann.

Azure SQL Managed Instance

Wählen Sie diese Plattform, wenn Sie einen verwalteten Azure SQL-Service wünschen und innerhalb der Plattformgrenzen von Machine Learning Services arbeiten können.

  • Empfohlen: Speicheroptimierte Premium-Serie
  • Geeignet für kleinere Datensätze: Premium-Serie
  • Nur für kleine, kostenorientierte Arbeitslasten: Standard-Serie (Gen5)

Für diese Arbeitslasten gilt: RAM pro vCore ist wichtiger als die reine Anzahl der vCores.

HardwareRAM pro vCoreEmpfehlung
Standard-Serie (Gen5)5,1 GBVermeiden für ernsthafte AI-Arbeitslasten
Premium-Serie7 GBGut für kleine Datensätze
Speicheroptimierte Premium-Serie13,6 GBBeste Wahl für speicherintensive Analysen

Wichtig: Azure SQL Managed Instance unterstützt keine externen Resource Pools des Resource Governor für R. Standardmäßig kann R nur bis zu 20% der Managed Instance-Ressourcen nutzen.

Die Matrixwerte beziehen sich weiterhin nur auf R-Speicher. Der Gesamtspeicher der Instanz muss deutlich höher sein.

Ungefähre erforderliche Gesamtspeichermenge der Instanz = benötigter R-RAM / 0.20

Beispiel:

  • Wenn die Matrix 16 GB angibt, benötigt R ungefähr 16 GB.
  • Dies bedeutet nicht, dass eine 16 GB Managed Instance ausreicht.
  • Da R nur etwa 20% verwenden kann, bedeutet 16 GB für R ungefähr 80 GB Gesamtspeicher der Instanz.
RAM für R benötigtUngefähre Gesamtspeichermenge Instanz
4 GB20 GB
8 GB40 GB
12 GB60 GB
16 GB80 GB
24 GB120 GB
32 GB160 GB
48 GB240 GB
64 GB320 GB
96 GB480 GB
128 GB640 GB

Wenn Sie Speicherfehler erhalten, verkleinern Sie den Datensatz, skalieren Sie die Instanz hoch oder eröffnen Sie ein Azure Support-Ticket zum Extensibility-Ressourcenlimit.

Speicherbedarf reduzieren

Falls der Speicher begrenzt ist, reduzieren Sie die Datenmenge, die von dab Nexus an die Analyse übergeben wird:

  • Verringen Sie die Spaltenanzahl in Content Studio. Weniger Spalten reduzieren die Breite des Datensatzes und somit den benötigten RAM.
  • Verwenden Sie kleinere Buchungskreis-Auswahlen und kürzere Zeiträume bei der Aufgabenanlage in dab Nexus. Dadurch wird die Zeilenanzahl für die Analyse reduziert.
  • Vermeiden Sie zu viele parallel laufende Aufgaben in Nexus bei diesen Arbeitslasten. Parallele Aufgaben erhöhen den Gesamt-Speicherbedarf der SQL-Umgebung.

Diese Maßnahmen wirken besonders bei großen Datensätzen, breiten Tabellen und Umgebungen mit mehreren parallel laufenden AI-Aufgaben.