optNetwork connectedComponents

Analyse d'influence sur réseau social volumineux (Performance)

Scénario de test & Cas d'usage

Contexte Métier

Un média social souhaite cartographier les communautés d'utilisateurs. Le volume de données est important. Le test vise à vérifier la performance de l'algorithme 'AFFOREST' (optimisé pour le parallélisme) et l'utilisation du multi-threading sur un graphe généré aléatoirement.
À propos du Set : optNetwork

Analyse de réseaux et algorithmes de graphes.

Découvrir toutes les actions de optNetwork
Préparation des Données

Génération procédurale de 10 000 liens entre 1 000 utilisateurs pour simuler un graphe dense.

Copié !
1 
2DATA mycas.reseau_social;
3call streaminit(123);
4DO i=1 to 10000;
5user_from = int(rand('uniform')*1000);
6user_to = int(rand('uniform')*1000);
7IF user_from ne user_to THEN OUTPUT;
8END;
9 
10RUN;
11 

Étapes de réalisation

1
Exécution de l'algorithme AFFOREST avec parallélisation forcée (4 threads) et logs détaillés pour monitorer le temps d'exécution.
Copié !
1 
2PROC CAS;
3optNetwork.connectedComponents / links={name='reseau_social'} linksVar={from='user_from', to='user_to'} algorithm='AFFOREST' nThreads=4 logLevel='AGGRESSIVE' outNodes={name='social_communities', replace=true};
4 
5RUN;
6 

Résultat Attendu


L'action doit s'exécuter sans erreur de mémoire. Le journal (logLevel='AGGRESSIVE') doit afficher l'utilisation des threads. La table de sortie doit classer les 1000 utilisateurs dans un nombre fini de communautés géantes.