Scénario de test & Cas d'usage
Simulation von 1000 Web-Sessions mit Zeitstempeln und besuchten Seiten (Home, News, Sport, Wetter).
| 1 | |
| 2 | DATA casuser.web_logs; |
| 3 | call streaminit(123); |
| 4 | DO session_id = 1 to 1000; |
| 5 | t = 0; |
| 6 | DO i = 1 to rand('integer', 3, 8); |
| 7 | t = t + rand('integer', 1, 30); |
| 8 | p_num = rand('integer', 1, 4); |
| 9 | IF p_num=1 THEN page='Home'; |
| 10 | ELSE IF p_num=2 THEN page='News'; |
| 11 | ELSE IF p_num=3 THEN page='Sport'; |
| 12 | ELSE page='Wetter'; |
| 13 | OUTPUT; |
| 14 | END; |
| 15 | END; |
| 16 | |
| 17 | RUN; |
| 18 |
| 1 | |
| 2 | PROC CAS; |
| 3 | sequence.cspade / TABLE={name="web_logs"} sequenceId="session_id" eventId="t" itemId="page" minGap=2 maxGap=20 support=0.1 casout={name="click_sequences", replace=true}; |
| 4 | |
| 5 | RUN; |
| 6 |
| 1 | |
| 2 | PROC CAS; |
| 3 | TABLE.fetch / TABLE={name="click_sequences"} sortBy=[{name="Support", order="DESCENDING"}] to=5; |
| 4 | |
| 5 | RUN; |
| 6 |
Die Aktion verarbeitet erfolgreich 1000 Sitzungen. Die Ergebnistabelle enthält nur Sequenzen, bei denen der Zeitabstand zwischen Klicks zwischen 2 und 20 Einheiten liegt. Sehr schnelle Klicks (Abstand < 2) werden ignoriert.