Scénario de test & Cas d'usage
Simulation von High-Volume-Transaktionslogs. 'main_log' hat 100.000 Einträge, 'backup_log' hat fehlende Einträge alle 100 Transaktionen.
| 1 | |
| 2 | DATA casuser.main_log; |
| 3 | DO tx_id = 1 to 100000; |
| 4 | OUTPUT; |
| 5 | END; |
| 6 | |
| 7 | RUN; |
| 8 | |
| 9 | DATA casuser.backup_log; |
| 10 | DO tx_id = 1 to 100000; |
| 11 | IF mod(tx_id, 100) ne 0 THEN OUTPUT; |
| 12 | END; |
| 13 | |
| 14 | RUN; |
| 15 |
| 1 | |
| 2 | PROC CAS; |
| 3 | SIMPLE.compare / TABLE={name='main_log'} table2={name='backup_log'} inputs={'tx_id'} sparse=TRUE generatedColumns={'GROUPID', 'FREQUENCY'} casOut={name='fehlend_im_backup', replace=true}; |
| 4 | |
| 5 | RUN; |
| 6 |
Die Aktion sollte effizient ausgeführt werden und die Tabelle 'fehlend_im_backup' erzeugen, die genau 1000 Datensätze enthält (diejenigen, die im Backup fehlen: 100, 200, 300, etc.). Durch 'sparse=TRUE' wird die Speicher- und CPU-Nutzung optimiert.