network community

Segmentación Masiva de Redes Sociales (Prueba de Rendimiento)

Scénario de test & Cas d'usage

Contexto empresarial

Un equipo de marketing digital desea segmentar millones de usuarios de una red social basándose en sus interacciones para campañas dirigidas. Se requiere probar la capacidad de la acción para manejar grandes volúmenes de datos utilizando procesamiento distribuido.
Preparación de datos

Generación sintética de un grafo masivo con 10,000 enlaces simulando una red social densa para probar el rendimiento distribuido.

¡Copiado!
1 
2DATA mycas.red_social_masiva;
3DO i=1 to 10000;
4from_user = 'User' || put(ceil(rand('Uniform')*1000), z4.);
5to_user = 'User' || put(ceil(rand('Uniform')*1000), z4.);
6IF from_user ne to_user THEN OUTPUT;
7END;
8 
9RUN;
10 

Étapes de réalisation

1
Verificación de la carga de datos masivos.
¡Copiado!
1 
2PROC CAS;
3TABLE.tableDetails / name='red_social_masiva';
4 
5RUN;
6 
2
Ejecución distribuida utilizando el algoritmo 'Label Propagation' para velocidad en grandes volúmenes.
¡Copiado!
1 
2PROC CAS;
3network.community / links={name='red_social_masiva'} distributed=TRUE algorithm='LABELPROPAGATION' nThreads=8 outNodes={name='segmentos_usuarios', replace=true};
4 
5RUN;
6 

Resultado esperado


La acción debe completarse sin errores de memoria, aprovechando el entorno distribuido (distributed=TRUE). La tabla 'segmentos_usuarios' debe contener clasificaciones para todos los usuarios únicos generados.