countreg countregFitModel

Performance-Analyse bei hohem Datenvolumen (High-Volume Traffic)

Scénario de test & Cas d'usage

Geschäftskontext

Ein großer E-Commerce-Händler analysiert die Anzahl der Artikel im Warenkorb ('cart_items') basierend auf Millionen von Websitzungen. Das Ziel ist es, die Robustheit der 'countregFitModel'-Aktion bei großen Datenmengen zu testen und die Rechenzeit zu bewerten. Hierbei wird ein Negativ-Binomial-Modell verwendet, um die Überdispersion der Daten (Varianz > Mittelwert) zu berücksichtigen.
Datenaufbereitung

Generierung von 1 Million Datensätzen (Web-Sessions) mit 'duration' (Dauer) und 'device' (Gerätetyp).

Kopiert!
1 
2DATA casuser.web_sessions;
3call streaminit(999);
4DO i = 1 to 1000000;
5duration = rand('EXPONENTIAL', 5);
6IF rand('UNIFORM') > 0.5 THEN device='Mobile';
7ELSE device='Desktop';
8mu = exp(0.1 * duration);
9cart_items = rand('NEGB', 0.5, mu);
10OUTPUT;
11END;
12 
13RUN;
14 

Étapes de réalisation

1
Ausführung des Negativ-Binomial-Modells (NEGBIN2) auf dem großen Datensatz mit Anforderung der Kovarianzmatrix und Zeitmessung.
Kopiert!
1 
2PROC CAS;
3countreg.countregFitModel / TABLE={name='web_sessions'}, model={depVars={{name='cart_items'}}, effects={{vars={'duration', 'device'}}}, modelOptions={modelType='NEGBIN2', covb=TRUE}}, timingReport={summary=TRUE};
4 
5RUN;
6 

Erwartetes Ergebnis


Die Aktion wird auch bei 1 Million Zeilen ohne Speicherfehler ausgeführt. Der 'Timing Report' wird angezeigt und gibt Aufschluss über die Laufzeit. Die Kovarianzmatrix wird in den Ergebnissen ausgegeben.