Twitter Social Project - Analyse Big Data des Réseaux Sociaux
Introduction
Les réseaux sociaux génèrent des quantités massives de données. Comment les collecter, stocker et analyser ? C'est l'objectif du Twitter Social Project : une plateforme Big Data complète pour l'analyse de Twitter en temps réel.
Architecture Complète
Le projet déploie une stack impressionnante de technologies :
Ingestion de Données
- Scraper Twitter : Collecte des tweets via l'API
- Apache Kafka : File d'attente de messages pour le streaming
- Apache Nifi : Orchestration des flux de données
Stockage
- HBase : Base de données NoSQL distribuée sur Hadoop
- JanusGraph : Base de données orientée graphe
- Zookeeper : Coordination des services distribués
Visualisation
- Graphexp : Exploration interactive des graphes sociaux
- Kibana : Dashboards et analytics
- Jupyter : Notebooks pour l'analyse ad-hoc
Analyse de Graphe Social
L'aspect le plus intéressant : modéliser Twitter comme un graphe !
Les Noeuds (Vertices)
- Utilisateurs Twitter
- Tweets
- Hashtags
Les Relations (Edges)
- Follows (qui suit qui)
- Retweets
- Mentions
- Utilise hashtag
Algorithmes de Graphe
Avec JanusGraph et Gremlin, on peut exécuter des requêtes complexes :
- Centralité : Qui sont les influenceurs ?
- Communautés : Quels groupes d'utilisateurs interagissent ?
- Chemins : Comment l'information se propage-t-elle ?
- PageRank : Importance relative des utilisateurs
Déploiement Docker Compose
Tout fonctionne dans des conteneurs Docker orchestrés avec Compose. Un simple docker-compose up lance :
- Le cluster HBase/Zookeeper
- Kafka pour le streaming
- JanusGraph pour les graphes
- Les interfaces de visualisation
Cas d'Utilisation
- Détection de tendances : Quels hashtags émergent ?
- Analyse de sentiment : Que pensent les gens d'un sujet ?
- Identification d'influenceurs : Qui a le plus d'impact ?
- Détection de bots : Comportements anormaux
- Propagation virale : Comment un tweet devient viral
Ce que j'ai appris
- Orchestration de services distribués
- Modélisation et requêtage de graphes
- Traitement de flux en temps réel
- Visualisation de données complexes
Projet Big Data développé à l'ESIGELEC pour l'analyse des réseaux sociaux.